multiple graphs in one script

2,494 次查看(过去 30 天)
I am runny a loop over set of function and in the end I want some graphs of different data. there are three variables let say a, b and c.I have generated a graph using:
plot(iteration,a,iteration,b,iteration,c)
plot(a,b)
bt it is giving the 2nd one only. I want another graph of A on x axis and C on y axis likewise C on x axis and b on y axis. I cant figure out how to get multiple plots because it is generating plot of last command only. I tried

采纳的回答

Walter Roberson
Walter Roberson 2018-7-28
Do not use figure() as a variable name.
fig1 = figure(1);
ax1 = axes('Parent', fig1);
h = plot(ax1, Iteration, total_util*100, 'b', Iteration, DD, 'r', Iteration, PP, 'g');
legend(h, 'total_util','d_quantity','Price');
fig2 = figure(2);
ax2 = axes('Parent', fig2);
h = plot(ax2, total_util);
The simple version of that is
figure(1);
plot(Iteration, total_util*100, 'b', Iteration, DD, 'r', Iteration, PP, 'g');
legend('total_util','d_quantity','Price');
figure(2);
plot(total_util);
but I recommend using the longer version: with the shorter version, graphics can end up going places you do not want in some cases. See https://www.mathworks.com/matlabcentral/answers/?term=tag%3Aalways-parent

更多回答(1 个)

Ben Frankel
Ben Frankel 2018-7-28
编辑:Ben Frankel 2018-7-28
You need to use hold on after the first plot and hold off after the last plot if you want multiple plots in the same figure. Use figure before all of the plots to put them in a new figure.
  10 个评论
summyia qamar
summyia qamar 2018-7-28
isn't there any easy way? a one line function?
Walter Roberson
Walter Roberson 2018-7-28
figure(1);
plot(Iteration, total_util*100, 'b', Iteration, DD, 'r', Iteration, PP, 'g');
legend('total_util','d_quantity','Price');
figure(2);
plot(total_util);

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Specifying Target for Graphics Output 的更多信息

产品


版本

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by