How do I plot in a for loop?
12 views (last 30 days)
Show older comments
Amy Jeffers
on 24 Jan 2018
Answered: Walter Roberson
on 24 Jan 2018
I am trying to plot y=A*(x+B)^n with constant A and B-values but I want to plot three different lines, each with a different n-value (n=1, 2, and 3). It keeps giving me a plot with one line and it also says there is an error using ".^". Can anybody tell me what's wrong with my code?
x = linspace(0, 2*pi, 100);
A = 1;
B = 1;
n = 1:3;
y = A*(x+B).^n;
for n = 1:3
plot(x,y); hold on
end
hold off
0 Comments
Accepted Answer
Star Strider
on 24 Jan 2018
Use the bsxfun function to automatically expand the vectors:
x = linspace(0, 2*pi, 100);
A = 1;
B = 1;
n = 1:3;
y = bsxfun(@power, A*(x+B), n');
for n = 1:3
plot(x,y); hold on
end
hold off
Note the transpose (') operator on ‘n’.
0 Comments
More Answers (1)
See Also
Categories
Find more on Scatter Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!