How can I run multiple iterations that plot on the same graph?
13 vues (au cours des 30 derniers jours)
I want to take the equation:
I would like to run 100 iterations of this equation with Dl starting as 1 and stepping by 1 until it reaches 100.
I would also like all of the lines of this equation to be plotted on the same graph.
Any suggestions on how to do this?
Adam Danz le 26 Mai 2021
Modifié(e) : Adam Danz le 28 Mai 2021
Using a vector of values x, y is an mxn matrix for m values in Dl and n values in x.
Please read Array vs matrix operations.
x = 1:5; % Row vector
Dl = 1:100; % row or column vector
y = 4*x+((Dl(:).*x.^2)./2)-4
plot(x,y) % 100 lines with 5 x-values
Paul Hoffrichter le 26 Mai 2021
Modifié(e) : Paul Hoffrichter le 26 Mai 2021
If you are new to Matlab programming, then you are probably used to a for-loop and you are plotting the curve in each iteration. If this is so, then all you have to do is add "hold on" to be associated with the figure.
x = -1:0.1:1; % setup x values
figure(101), clf, hold on;
ylim( [-10 55] ); % set y axis limits to keep the plot steady looking
grid on; grid minor;
for Dl = 1:100
y = 4*x + (Dl*x.^2)/2 - 4;
title( ['Iteration #: ' num2str(Dl) ] );
pause(0.1); % add this to see the effect of each iteration
figure(101), hold off;