Filter löschen
Filter löschen

Want to run the code for n values of X0, tried using for loop but didn,t get desired output.how to run for n values of X0?

2 Ansichten (letzte 30 Tage)
if true
X = [ 0, 15 30 45 ];
Y = [50, 8.5, 2, 0.5];
X0 = 0;
n = 100;
f = 0.1;
x = linspace(min(X),max(X),n);
y = interp1(X,Y,x,'spline');
xt = X0+(0.1*(max(X)-min(X))*[-1 0 1]);
m = diff(y)./diff(x);
m = [m, m(end)];
k = min([find(x >= X0,1,'first'), length(x)]);
yt = y(k) + m(k)*(0.1*(max(X)-min(X))*[-1 0 1]);
plot(X,Y,'ro', x,y,'-b',xt,yt,'--g');
% code
end
  3 Kommentare
Geoff Hayes
Geoff Hayes am 11 Jun. 2014
What do you want the n values for X0 to be? The first is zero, the second one is… What should this sequence be?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Geoff Hayes
Geoff Hayes am 11 Jun. 2014
If X0 varies from 0 to 10 (and we assume a step size of 1), then a for loop could be introduced as follows
X0data = 0:1:10;
for i=1:length(X0data)
X0 = X0data(i);
X = [ 0, 15 30 45 ];
Y = [50, 8.5, 2, 0.5];
% etc.
plot(X,Y,'ro', x,y,'-b',xt,yt,'--g');
hold on; % to allow multiple plots on same figure
end
Try the above and see what happens.
  4 Kommentare
vaishali
vaishali am 11 Jun. 2014
want to plot outside for loop;want to keep command: plot(X,Y,'ro', x,y,'-b',xt,yt,'--g'); hold on; outside for loop .is it possible?
Geoff Hayes
Geoff Hayes am 11 Jun. 2014
Yes…but then you have to "save" X and Y at each iteration. Try it out and see.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Sequence and Numeric Feature Data Workflows finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by