找回密码
 注册
关于网站域名变更的通知
查看: 529|回复: 1
打印 上一主题 下一主题

Matlab plot多条曲线,自动使用不同线型

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-5 11:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 uperrua 于 2020-8-5 13:21 编辑 % P' P( U/ w# z+ |' i
4 |6 j( U0 x6 a) @; ]4 r0 O
先定义几个变量:- _- z9 D; I& D
x  = 0:pi/10:2*pi;
$ {, H- x, P: R0 x4 by1 = sin(x);: {, Z- i6 x  |4 I, `( l
y2 = sin(x-pi/2);
7 W1 T6 N+ W9 s& h8 O$ Ay3 = sin(x-pi);
9 F1 V: _) j, D/ i7 @5 n  C. N# G( v3 L/ I
* ~8 M9 w& Y" }7 w; M
matlab作图的时候,如果直接使用plot(x,y1,x,y2,x,y3);那么matlab将自动使用不同的颜色来区别这三条曲线。
" ?2 w' k9 m9 b5 o) t8 q0 Q效果如下:- w$ w2 |: |  S6 ]; X; w
6 ~1 ^+ Y- h$ d" }

% W* N& y# l9 R7 Y7 H, C: T但是有的时候,为了保证黑白打印的时候也能区分不同曲线,就要用不同线型来区分。怎么样让matlab自动做这件事呢。+ w9 ^. e3 u" ~( C7 Z" o4 @

" d; S+ J5 i9 o9 C

You can configure MATLAB defaults to use line styles instead of colors for multiline plots by setting a value for the axes LineStyleOrder property using a cell array of linespecs. For example, the command

set(0,'DefaultAxesLineStyleOrder',{'-o',':s','--+'})

defines three line styles and makes them the default for all plots.

To set the default line color to dark gray, use the statement

set(0,'DefaultAxesColorOrder',[0.4,0.4,0.4]);0 i, z- F/ _  Y# R1 \
也就是说在plot(x,y1,x,y2,x,y3);的前面加上这两句话,set(0,'DefaultAxesLineStyleOrder',{'-o',':s','--+'})set(0,'DefaultAxesColorOrder',[0.4,0.4,0.4]);这回效果如下: + L6 x4 v) c; U) M- o6 U. E6 W& k) c

/ E& ~$ p9 |& zThe default values persist until you quit MATLAB. To remove default values during your MATLAB session, use the reserved word remove.
6 r$ i8 H; D& B
" l) |, o5 v  }( Y' W, O: [4 X: g) ]
set(0,'DefaultAxesLineStyleOrder','remove') set(0,'DefaultAxesColorOrder','remove')# T2 F0 v2 w0 r+ @2 i
% i" k. Y/ s! X4 S3 K% q) O4 w+ l1 O

该用户从未签到

2#
发表于 2020-8-5 13:20 | 只看该作者
Matlab plot多条曲线,自动使用不同线型
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-24 23:51 , Processed in 0.187500 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表