如何将matlab一张图中多组图分别保存为一张图

matlab一张图中画了两个曲线,对应两组坐标(曲线是自动生成的,没有数据支持)!我想将每个曲线分别保存成一个图!如何编辑!谢谢大家多多帮忙~~~~simulink自动生... matlab一张图中画了两个曲线,对应两组坐标(曲线是自动生成的,没有数据支持)!我想将每个曲线分别保存成一个图!如何编辑!谢谢大家多多帮忙~~~~
simulink自动生成的图!参数是别人设好的,点击运行就出来个图!我只是想将两个曲线分别画到一张图上并保存
展开
 我来答
wanglyee
2010-08-21 · TA获得超过255个赞
知道答主
回答量:92
采纳率:100%
帮助的人:96万
展开全部

这个应该不难,matlab有个subplot函数是将几个函数图像进行分幅,举例:>> x=-pi:0.1:pi

>> y1=x.^2;

>> y2=x.^3;

>> y3=x.^4;

>> subplot(1,3,1)%进行分幅处理

>> plot(x,y1)第一幅打印y1=x.^2(点积是因为x属于一行多列的数组,不是x^2,因为x非方阵)

>> subplot(1,3,2)

>> plot(x,y2)第二幅打印y2=x.^3

>> subplot(1,3,3)

>> plot(x,y3)第三幅打印y1=x.^4

很遗憾呀,我不能上传图片,反正这个函数可以用来分幅。完成分幅后,如果还觉得不满意,则用木画图工具修改裂块就行。应该很简单了,不会看不懂吧!

参考资料: matlab二维图形

向天致信
高粉答主

推荐于2017-09-06 · 说的都是干货,快来关注
知道大有可为答主
回答量:6284
采纳率:90%
帮助的人:521万
展开全部
  2种方法,
  1. 将每个循环中生成的数据分别存起来,等循环结束后使用plot(sys1, sys2, ...)来同时画多张图;
  2. 将曲线的颜色、线型写成矩阵,然后在每个循环中利用矩阵变量来使每张图具有不同的颜色等属性。
  第二种方法,Matlab代码如下:
  a_color = ['r', 'g', 'b', 'y', 'c', 'm', 'k']; %定义图形颜色
a_line_point = ['.', 'o', 'x', '+', '*', 's', 'd']; %定义点的形状
%a_line_style = ['-', ':', '-.', '--']; %定义线形,(none) no line
  count=4:2:10;
  for idx = 1 : length(count)
  p3 = count(idx);
p4 = count(idx);

A_cl = conv([1 4 8], conv([1 p3], [1 p4]));
  % 计算控制器C(s)的待定系数
A = [0 0 5 1; 0 5 -5 -4; 5 -5 0 -5; -5 0 0 0];
B = [A_cl(2)+4;A_cl(3)+5;A_cl(4);A_cl(5)];
X = inv(A)*B;
p_0 = X(1);
p_1 = X(2);
p_2 = X(3);
l_0 = X(4);

% 得到控制器C(s)
a1=[p_2 p_1 p_0];
b1=[1 l_0 0];
c = tf(a1,b1);

% 计算控制对象的nominal transfrom function P0(s)
a2=[5 -5];
b2=[1 -4 -5];
p = tf(a2,b2);
  %计算闭环传递函数
% Define the complementary sensitivity functions(close-loop transform function)
sys1 = c*p;
T_o = feedback(sys1,1);
  %绘制闭环传递函数的阶跃响应
figure(1);
step(T_o, a_color(idx)); %利用矩阵变量来使每张图具有不同的颜色等属性
%step(T_o, strcat(a_color(idx), a_line_point(idx), '-')); %添加点的不同表示
name = strcat(a_color(idx), ': p_{3,4}=', num2str(p3));
title('Unit Step Response');
text(3, 6-idx, name);
axis([-0.1 3.6 -6 +6]);
grid on;
hold on
%绘制闭环系统的control input
S_uo = feedback(c,p);
figure(2);
step(S_uo, a_color(idx)); %利用矩阵变量来使每张图具有不同的颜色等属性
name = strcat(a_color(idx), ': p_{3,4}=', num2str(p3)); title('Control Input');
text(1.8, 50-5*idx, name);
axis([-0.1 2 -30 +50]);
grid on
hold on
end
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanerfu1989
2010-08-13
知道答主
回答量:16
采纳率:0%
帮助的人:0
展开全部
自动生成?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式