问题
开始用matlab画图时,使用默认设置,画出来的图不好看
比如,这段代码
x=0:0.1:10;
y1=sin(x);
y2=sin(x+3);
plot(x,y1,x,y2)
xlabel('x')
ylabel('y')
legend('y=sin(x)','y=sin(x+3)');
生成的图
放到科技论文里的话,一般是占用1/3页宽,会导致字看不清楚,线条也不好看。这种图放到论文里,会给审稿人一种“不专业”的印象,觉得你没有经过科班训练,从而大幅度降低审稿人的评分。
解决方案
需要做以下几点
- 把线条调粗,一般linewidth为2,如果曲线比较简单的话,可以调整成3,自己酌情判断
- 如果有marker的话,设置markersize,手动调
- 字号调整成15-20,命令是
set(gca,'fontsize',15)
,字体设置为 times new roman,因为一般科技论文的字体都是这个 - 如果有数学符号,使用latex解析
- 根据个人习惯选择是否加grid,我习惯加grid
- 优先使用线条类型和灰度来区分线条,这样打印出来依然可以区分
代码
x=0:0.1:10;
y1=sin(x);
y2=sin(x+3);
plot(x,y1,'-','color',[0.7 0.7 0.7],'linewidth',3)
hold on
plot(x,y2,'k-','linewidth',3)
hold off
grid on
xlabel('variable $x$','interpreter','latex')
ylabel('$y$','interpreter','latex')
legend('y=sin(x)','y=sin(x+3)');
set(gca,'FontName','Times New Roman','FontSize',20);
生成的图像
一般横轴至少有五个tick,这个图里目前只有三个,‘0 5 10’,可以通过set(gca,'xtick',[0 2 4 6 8 10])设置6个tick
其他注意事项
- legend的位置可以手动拖到合适的地方
- 生成的图首先保存为.fig文件,以方便后面修改
- 如果你的论文是用latex写的,可以另存为pdf图,然后一定记得用acrobat裁剪掉白色边框(网上也有自动裁剪的代码,但是如果你图像只有几个,没必须要学习代码)
- 如果你的论文是用word写的,另存为emf图,然后在word中插入