如何利用MATLAB画出不被导师嫌弃的图像
# R1 E7 W8 S- t$ a1 p* ?4 {% n: s5 w2 I$ b$ n
什么样子的图不会被导师嫌弃?当然是能够简洁、清晰的将信息表达出来,让人一目了然的的图了。导师们都很忙的,没有时间把时间浪费在研究你的图上,一般看着不顺眼的图直接告诉你重新画,心情好会给你指点一二,心情不好就说图画的不好,你自己看着办。所以我们要知道,写报告也好,画图也罢,都是为了让人家看的,你得首先让对方看懂你的图,而不是自己看着顺眼就行,结合我被导师怼的经历,介绍一下什么样的会被导师喜欢吧。8 f% L1 |1 M$ u. [) [+ ?0 S0 P
第一步 数据准备
B0 [. ~- L6 l1 x- l, G& _2 \& {& l# f2 a( P
画图当然得有数据啦,没有数据,白板一张,还不如直接告诉导师,我没做出来更直接一些。这里我偷下懒,用一个三角函数对付一下。/ f: J+ p+ t5 ]* r# ]
x=0:0.1:10;y1=sin(x);y2=cos(x);
4 |6 W+ L# [2 l9 B3 k! Z2 ]x是横坐标,y1和y2是纵坐标。& Z' H& K |, D' p
第二步 画图
4 A8 m* ?7 t- B' U6 a. [
2 H$ d. N- I* ~. U/ n MATLAB中最最常用得画图命令就说plot了,当然大多数情况下plot就够了。2 A# k. G: O/ y6 ~: n; F
figure(1)plot(x,y1,x,y2)( [1 \! g! T# l! }4 E( B! w6 ^
0 K) [2 m% Z! f- o( h7 w ~3 V: }5 ?2 l5 {# z; }3 k
你要是敢直接把这样得图给导师,那我估计你的鸡腿是没有了。你的图是干嘛的,标题呢?横纵坐标轴得标题呢?你说这是啥,正弦和余弦?我读书少,不认得这俩曲线,你给我标注一下吧。然后就成了这样:
8 M! [; @0 A# Wfigure(1)plot(x,y1,x,y2)title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on Z' M: {5 s- W3 A5 d; e
现在看起来差不多了,可是老师喜欢某些颜色怎么办,那就是第三步了。
1 ?4 V' ]6 M2 D7 K第三步 设置线条颜色4 t* S" Y) {0 V8 ]3 t
, v/ g8 H. W7 `先给出常用得颜色设置吧:
# j5 F0 Q5 h2 X
, P: _; Q3 \7 L8 f s+ G- t. x8 U
1 m4 v& D0 G2 `% g6 h! D然后有了如下得代码:" X7 h$ W/ ]7 v8 Y, P
figure(1)plot(x,y1,"g",x,y2,"b")title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on
- ^4 b+ n8 ~% x1 o; j7 ?* _% L9 O" d7 f* W& i, l* b# D
* q6 e6 n: G6 e" S第四步 设置线型和标记。9 E4 q- c* V' m
) r5 \& W4 \8 g5 e0 g3 T7 O如果你足够优秀,可以发论文的话,你的导师会告诉你,有的期刊只能发表黑白得文章,所以用颜色区分不太合适,所以区分一下线型吧。所以,先给出常用得线性和标记。 C. c% k2 s l( e% r
5 `) l" E3 t G+ s* s! `0 V5 p$ v( L6 Q2 d% i7 D7 r
4 }- L7 ]8 O5 Z8 G! H) E
8 A; }6 F) n( b$ P& b4 E; s) j- S8 ~( F- L
5 l; b- v4 m. F: h: F用线型区分开来:4 Y/ v4 _5 W- V3 J
plot(x,y1,"g--",x,y2,"b-.")
2 G* X; X5 Y, i还可以在每个数据点处做个标记:* w P$ R& B. s9 v
plot(x,y1,"g--*",x,y2,"b-.x")
) M: F0 S+ k$ Y/ f( d以为这样就完事了吧,你的要求我都满足了,可是,你得导师还会问,你这两条线,分别是啥啊,那个是正弦,那个是余弦?这时候你咋办,怼回去,你不认识正弦和余弦?我觉得你还是算了,乖乖得画上图例吧。4 r- v( S2 x1 G9 t4 w
第五步 图例
" k+ N% i: q* y& s
7 g/ q0 N8 l9 S9 [马上就是最后一步了,直接上代码:
4 P p7 z- V1 Z' v% s( c, M& b( iplot(x,y1,"g--*",x,y2,"b-.x")legend("正弦函数","余弦函数")2 s( ^' H( n% O- w. j
3 E+ N A8 I* q; M0 t
9 C7 J& y+ X$ K' g+ z W1 ?
好了,这样的图,能看懂了吧。- e: a) l, x8 W$ Z' U+ F
第六步 设置坐标轴范围
2 P7 ?6 [) C& s. g! O/ r+ A1 P' M; ^+ d5 n/ v
如果你觉得这样得还不够完美,还可以设置一下坐标轴范围:! m9 k$ }" q' P6 b9 `7 D% @9 B
用的是axis([xmin xmax ymin ymax])函数。# [7 }3 M; }- k- \
完整代码:
$ p1 z; B" V; D/ Wx=0:0.1:10;y1=sin(x);y2=cos(x);figure(1)plot(x,y1,"g--*",x,y2,"b-.x")legend("正弦函数","余弦函数")axis([0 10 -1.2 1.2])title("正弦/余弦函数曲线")xlabel("相位")ylabel("幅值")grid on
3 D0 _" \! r" D9 q3 p
0 a& y1 q5 L, D4 f
3 D# V9 m) Y, V" Y总结起来就一下几点:
6 h U( ?, {2 t5 o0 E- 完整得数据
- 标题、横纵坐标标题
- 设置颜色
- 线型和标记
- 添加图例
- 设置横纵坐标轴范围3 _4 c: f) R( o9 V9 k' H$ A' Z
|