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 views (last 30 days)
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 Comments
Geoff Hayes
Geoff Hayes on 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?

Sign in to comment.

Accepted Answer

Geoff Hayes
Geoff Hayes on 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 Comments
vaishali
vaishali on 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?

Sign in to comment.

More Answers (0)

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!