matlab 保存图片大小尺寸_Matlab导出论文插图的7种方式及其性能评估
关于如何用Matlab导出论文插图,其实在之前的两篇文章里已经说过很多了(Matlab自动导出高质量、无变形论文插图辅助工具;Matlab自动导出论文插图)。但有趣的是,当我介绍用print函数输出图片时,评论区说还是export_fig好;而当我介绍export_fig时,又道“print它不香吗” ……想了想,索性把常见的几种导出插图的方法在这里统一整理一下,以后就不再投入时间精力了。(生成插
关于如何用Matlab导出论文插图,其实在之前的两篇文章里已经说过很多了(Matlab自动导出高质量、无变形论文插图辅助工具;Matlab自动导出论文插图)。
但有趣的是,当我介绍用print函数输出图片时,评论区说还是export_fig好;
而当我介绍export_fig时,又道“print它不香吗” ……
想了想,索性把常见的几种导出插图的方法在这里统一整理一下,以后就不再投入时间精力了。
(生成插图所用脚本文件见文末)
整体性能:
预设:
对象属性—文字大小、线型等均已提前设置好;
图窗尺寸—长12cm,高9cm;
输出格式—PNG/JPG/TIF(论文投稿提交图片常用格式);
方法一:file->save as...
这一方法的操作方式很简单。
在Figure图窗中,点击‘File’->‘Save As...’,然后选择要保存的格式即可。
保存图片的属性如下:
可以看出,尺寸是没有问题的,但分辨率基本上就是默认的分辨率,清晰度会差一些。
方法二:saveas函数
使用方法:
saveas(fig,filename)
saveas(fig,filename,formattype)
示例:
saveas(gcf,‘test.png’); % 以png格式、文件名test输出当前图窗对象
所得图片属性如下:
与方法一相比,分辨率有所提升。
方法三:Export Setup
在‘Figure’窗口中,单击‘File’->‘Export Setup…’,
在弹出的‘Export Setup: Figure’窗口,分别调整图片尺寸:
分辨率:
保存设置后,选择‘File’->‘Save As...’,按自己所需格式保存。
这一方法算是方法一的升级版,其所得图片属性如下:
可以看出,图像尺寸与分辨率均为设置值。
方法四:copy figure
在Figure图窗中点击‘Edit’->‘Copy Figure’,
这样图像便已复制到剪贴板上了,然后到word里粘贴即可。
可以看出,至少尺寸是没问题的。这是因为在复制前,我把预设改了一下:
单击‘Edit’->‘Copy Options…’,在弹出的窗口中选择‘Match figure screen size’,
由于已经提前设置好了图窗尺寸,且图窗尺寸等于屏幕显示尺寸(见:Matlab、Visio导出精美论文插图——位置与尺寸设置),所以尺寸是对的。
输出图像的属性与方法一完全一致。
值得一提的是,这里格式选的是‘Bitmap’,若选择‘Preserve information (metafile if possible)’,则输出的是矢量图,可以复制到Adobe Illustrator继续进行编辑:
方法五:print
使用方法:
print(gcf, 'test.png','-r300','-dpng');
所得图像与方法三所得可以说完全一致,但这一方法可以用于批量导出多张图片。
详细代码及用法见文末链接。
方法六:export_fig
export_fig是由Yair Altman提供的一款用于将图形从Matlab导出为标准图像和文档格式的工具箱,可以完美解决锯齿、变形问题。
具体获取与安装方式见:
Matlab自动导出高质量无变形论文插图mp.weixin.qq.com使用方法:
export_fig test.png –r300
所得图像属性:
由于默认消除了白边,所以图像的宽度和高度均有所减小,但绘图区域整体的大小其实并没有改变,所以并不影响使用。
假如不想消除白边,则命令需改为:
export_fig test.png –r300 –nocrop
方法七:exportgraphics
这一方法是在新版的MATLAB2020a中新增的函数。
使用方法:
exportgraphics(obj,filename)
exportgraphics(obj,filename,Name,Value)
具体使用方法见:
心同流水:使用MATLAB科研绘图zhuanlan.zhihu.com--------------------------------------
最后,把前六种方法所得图像的legend单独截出来,与原图进行对比:
可以看出:
- 方法一和方法四的虚线与原图是完全一致的,可惜无法调节分辨率;
- 方法二、三、五的效果是一致,与原图稍有出入;
- 而用export_fig输出的图像(方法六)算是自成一派吧,多少还是有些不一样的,但也可以接受。
-----------------------
作图所用代码获取方式:
figure_exportmp.weixin.qq.com以上。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)