如何利用MATLAB画出不被导师嫌弃的图像
; E ?; V+ E5 M6 u3 t6 u% O: O+ h% @ r
什么样子的图不会被导师嫌弃?当然是能够简洁、清晰的将信息表达出来,让人一目了然的的图了。导师们都很忙的,没有时间把时间浪费在研究你的图上,一般看着不顺眼的图直接告诉你重新画,心情好会给你指点一二,心情不好就说图画的不好,你自己看着办。所以我们要知道,写报告也好,画图也罢,都是为了让人家看的,你得首先让对方看懂你的图,而不是自己看着顺眼就行,结合我被导师怼的经历,介绍一下什么样的会被导师喜欢吧。
) h5 [, M& I! J1 I5 I0 P: @第一步 数据准备2 g6 [' n( o5 {# N6 L
5 r2 a% \. J9 F+ X% l( ~4 i' o
画图当然得有数据啦,没有数据,白板一张,还不如直接告诉导师,我没做出来更直接一些。这里我偷下懒,用一个三角函数对付一下。* ]& Z$ f, l8 M/ O. i. D5 t+ Y
x=0:0.1:10;y1=sin(x);y2=cos(x);/ v; W# N0 s' T$ }
x是横坐标,y1和y2是纵坐标。+ {+ m( s8 W) H4 e2 x
第二步 画图+ M; R6 e; l3 j2 ]3 `- h Y1 C; }
, }1 f3 n5 X. E. I% Q/ h# V
MATLAB中最最常用得画图命令就说plot了,当然大多数情况下plot就够了。
$ K$ l% U3 a0 d$ Mfigure(1)plot(x,y1,x,y2). f# r, F) `/ E+ j9 e
: n. Q6 e: w5 i9 L& B. d3 C
9 D: t1 S& c% A1 `$ P c& b
你要是敢直接把这样得图给导师,那我估计你的鸡腿是没有了。你的图是干嘛的,标题呢?横纵坐标轴得标题呢?你说这是啥,正弦和余弦?我读书少,不认得这俩曲线,你给我标注一下吧。然后就成了这样:
% A- k1 j5 A) W3 a. Lfigure(1)plot(x,y1,x,y2)title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on
1 u: A4 k) \2 h+ m% a8 h现在看起来差不多了,可是老师喜欢某些颜色怎么办,那就是第三步了。
* W( r9 E7 A$ D- m% A9 p第三步 设置线条颜色
0 T) d3 ~- }$ I6 P; o
: [/ \/ S! z& t z* T. N先给出常用得颜色设置吧:' O% r( F8 S' S. V- I
$ z1 L- t. X5 U$ w* _! B! s0 K( M* @/ M6 t! v# E
然后有了如下得代码:
* |4 ]8 E$ z# G: o3 s3 vfigure(1)plot(x,y1,"g",x,y2,"b")title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on1 v; c. D# \0 W5 z1 o7 ]
# w' S6 V U1 w- k- j4 Q; A
3 ~8 }. a& z8 @. o9 u5 R2 u第四步 设置线型和标记。
1 ]1 u1 c( @/ ?& I- m5 O2 s; W0 }# j( F
8 n3 j; t- M6 O& D2 @6 c/ u+ o% [5 I如果你足够优秀,可以发论文的话,你的导师会告诉你,有的期刊只能发表黑白得文章,所以用颜色区分不太合适,所以区分一下线型吧。所以,先给出常用得线性和标记。
4 y" w% _, F4 x3 X/ r7 a2 p
: ~3 Z+ v' l p: O- t2 T4 r7 S K& s6 }1 ^
6 e% Z% L* _$ ?3 X, c4 o+ l Z9 y' I) h0 K; H- m( m
( s" ^, V" j& n9 K! k/ Q" @& a
用线型区分开来: K7 c& q8 L' B' V N V6 D. P8 |
plot(x,y1,"g--",x,y2,"b-.")0 X m2 [1 X7 k) f& ?4 ^
还可以在每个数据点处做个标记:8 E. l. E8 T# [& s. `% h0 N* Y
plot(x,y1,"g--*",x,y2,"b-.x")
% p: j$ y* V! h以为这样就完事了吧,你的要求我都满足了,可是,你得导师还会问,你这两条线,分别是啥啊,那个是正弦,那个是余弦?这时候你咋办,怼回去,你不认识正弦和余弦?我觉得你还是算了,乖乖得画上图例吧。
8 W( I% ]7 L v8 l, l第五步 图例0 ^# d! v3 j" c% W/ K
' K7 b. x: ~" e: |# h j `* x马上就是最后一步了,直接上代码:6 B* l+ n! P5 w- w% Y
plot(x,y1,"g--*",x,y2,"b-.x")legend("正弦函数","余弦函数")2 n* c7 r) G& _, Y# O. {+ \& \
; q* k3 A+ n t8 r* _7 w$ G! w: u# m
好了,这样的图,能看懂了吧。
% p8 I/ H( g& c( H4 f% u8 d第六步 设置坐标轴范围
9 l8 q E$ D- ?! O' I
0 Y& \7 e7 T5 [! B& E如果你觉得这样得还不够完美,还可以设置一下坐标轴范围:
7 a. W4 [" g6 A/ k) V1 W用的是axis([xmin xmax ymin ymax])函数。. K7 G+ I+ B( y9 @
完整代码:3 s8 S, @5 q- J( S7 ~
x=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
& Y! K# v% f. Q) R% a- s) ^" {( k% m0 O2 h9 k' k2 Z/ l" ]
0 V" Z) e2 @- B" [ n/ u总结起来就一下几点:
" V! Y7 _5 E7 H6 @; b/ l- 完整得数据
- 标题、横纵坐标标题
- 设置颜色
- 线型和标记
- 添加图例
- 设置横纵坐标轴范围3 x9 ^$ C s0 O: m3 j: a
|