如何利用MATLAB画出不被导师嫌弃的图像
4 y5 _, @# R4 t7 N6 P* X- Y' Y0 E r9 h1 |' D
什么样子的图不会被导师嫌弃?当然是能够简洁、清晰的将信息表达出来,让人一目了然的的图了。导师们都很忙的,没有时间把时间浪费在研究你的图上,一般看着不顺眼的图直接告诉你重新画,心情好会给你指点一二,心情不好就说图画的不好,你自己看着办。所以我们要知道,写报告也好,画图也罢,都是为了让人家看的,你得首先让对方看懂你的图,而不是自己看着顺眼就行,结合我被导师怼的经历,介绍一下什么样的会被导师喜欢吧。
$ b2 d7 C1 p% S第一步 数据准备' l3 |! X# e, ]7 Y' Z$ U
* _! J3 z$ L1 M% i+ z
画图当然得有数据啦,没有数据,白板一张,还不如直接告诉导师,我没做出来更直接一些。这里我偷下懒,用一个三角函数对付一下。# _& ~, j' P5 b2 b. e
x=0:0.1:10;y1=sin(x);y2=cos(x);
% v! U. ^1 b0 d; F! P9 Q* c4 L! Hx是横坐标,y1和y2是纵坐标。% {6 d$ ]$ R5 q! q
第二步 画图$ y1 f! [2 K9 K3 L, {/ }* ?
7 Q/ y1 O/ f# U4 r2 { MATLAB中最最常用得画图命令就说plot了,当然大多数情况下plot就够了。6 a( a' {, \8 l
figure(1)plot(x,y1,x,y2)
5 ?, r9 n" W2 n- D
. j( @+ L2 h4 v4 J" }7 U' x9 s2 l3 j# Z$ K5 M
你要是敢直接把这样得图给导师,那我估计你的鸡腿是没有了。你的图是干嘛的,标题呢?横纵坐标轴得标题呢?你说这是啥,正弦和余弦?我读书少,不认得这俩曲线,你给我标注一下吧。然后就成了这样:
4 G- R0 y1 A% p! m8 ]3 Wfigure(1)plot(x,y1,x,y2)title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on
: S* A8 G. q7 f. ~3 h现在看起来差不多了,可是老师喜欢某些颜色怎么办,那就是第三步了。
H* b( a1 v' }4 v5 P0 Q& s第三步 设置线条颜色) [' P5 _- y5 y
$ L( H/ }8 U; ^: o* s1 ]7 a先给出常用得颜色设置吧:
1 j+ J' w. \' ]: I( r2 w
8 ~) H& b! K Z. [$ S. j) c. S- j; s% s
然后有了如下得代码:
2 z b/ Z5 ~* e% E% Sfigure(1)plot(x,y1,"g",x,y2,"b")title("正弦/余弦函数图像")xlabel("相位")ylabel("幅值")grid on* s7 x; `, z. e8 z# |
x- [- M- C; I7 U, ~# n! }) o8 m
+ G8 H1 s0 b5 ` W$ P, M t第四步 设置线型和标记。
3 |5 R( b9 t# o. G% S3 l7 Y8 L
$ U- Z- q) G1 w, B- |如果你足够优秀,可以发论文的话,你的导师会告诉你,有的期刊只能发表黑白得文章,所以用颜色区分不太合适,所以区分一下线型吧。所以,先给出常用得线性和标记。
1 i# S& p F R3 _- z/ D2 H( Y0 P" v* t0 a0 D- S5 F
8 U* M O, S% h4 J8 e1 T* z+ n% Q) I4 V' G
% e- ]/ P e- I- \4 i' {6 V( E
) E7 o( _! }; N; L; t/ m
2 `, l7 X! V& l用线型区分开来:
1 I% l: P4 k( uplot(x,y1,"g--",x,y2,"b-.")& U4 V% q' `' a% p8 E
还可以在每个数据点处做个标记:. v- ~& q, L' |0 O2 k/ B) C
plot(x,y1,"g--*",x,y2,"b-.x")4 s3 d4 a9 ?+ K' A$ p$ X
以为这样就完事了吧,你的要求我都满足了,可是,你得导师还会问,你这两条线,分别是啥啊,那个是正弦,那个是余弦?这时候你咋办,怼回去,你不认识正弦和余弦?我觉得你还是算了,乖乖得画上图例吧。
2 |; v, I8 G1 C第五步 图例+ @: u, k8 w9 c9 S3 C" ~
7 r8 Z4 U' m2 _; ^6 O- I4 x: O' C
马上就是最后一步了,直接上代码:
! x- L5 S5 k; p7 M( tplot(x,y1,"g--*",x,y2,"b-.x")legend("正弦函数","余弦函数")
% ~4 \! U2 R* s9 K6 w, R! E1 a$ j
5 @8 n Q' g+ I, i' I好了,这样的图,能看懂了吧。
- ^7 w3 F* n$ c2 r" a. {& J第六步 设置坐标轴范围
& L8 l! D/ I! ?' Z" @. v
5 T3 ~) Z5 T- u6 H, |" B如果你觉得这样得还不够完美,还可以设置一下坐标轴范围:0 _: |* G+ M. w4 |% m! T3 a
用的是axis([xmin xmax ymin ymax])函数。5 Q9 V1 w+ ] \ ~4 ?8 J% B
完整代码:
+ E3 e6 ?+ I2 i& ~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, m& H! k9 D& _& d1 s
9 ]% x8 W: p0 f' h6 q q% U
6 }* j z X/ |' i) A+ m总结起来就一下几点:: n \% m" D9 C6 i% a5 o; G
- 完整得数据
- 标题、横纵坐标标题
- 设置颜色
- 线型和标记
- 添加图例
- 设置横纵坐标轴范围
. Y( V, |3 s6 W+ o" ~3 ?
|