Matlab export_fig 输出占空间较小的矢量高清图和部分运行错误问题
- Matlab export_fig 的安装与运行错误
- export_fig 配置:
- 安装后一直提示加载Ghostscript运行错误
- export_fig输出pdf的本质过程
- export_fig介绍
- 几种生成图片的大小
Matlab export_fig 的安装与运行错误
export_fig 配置:
特别注意安装顺序:https://blog.csdn.net/Liangontheway/article/details/90903348
- 安装 ghostsciprt
- 解压Xpdf-tools(Xpdf-tools不需要安装的)
- 解压 export_fig(不需要安装的,直接解压到指定位置)
- 配置export_fig路径
addpath(genpath('C:/Program Files/MATLAB/export_fig-master'));
savepath;
安装后一直提示加载Ghostscript运行错误
- 方案1:检查自己是否已经安装Ghostscript(*一直让重复点击Use local installation),则可能是要生成的图片的保存路径有访问权限,需要给与访问权限。此时我们可以修改生成图片的路径,放在一个新的不需要权限即可的文件夹内。
例如:桌面新建一个文件夹export_fig('C:/Users/bhlde/Desktop/Mat_fi/cycle2.pdf','-transparent')
- 方案2:也有可能你已经打开了生成的图片,以至于要保存的路径被占用,需要关闭生成的pdf文件,重新运行。
- 方案3:若仍然一直报错,可在计算机的临时文件夹中寻找生成的pdf文件。比如:
C:\Users\bhlde\AppData\Local\Temp
见下图 - Matlab 2020+版本也可以使用exportgraphics命令!
export_fig输出pdf的本质过程
出现图像窗口后:
- 打开导出设置,勾选自定义渲染器(矢量格式),点击应用于图形。特别的,若不勾选自定义渲染器,最后的图片不一定是最高清的是矢量图。
- 导出.eps 文件,后利用latex编译器生成对应的pdf文件。此时生成的pdf文件大小和export_fig导出的文件一致。 注意:若第2步直接导出pdf文件,则生成的pdf文件大小大于export_fig导出的文件。
- 1-2步骤生成eps文件可用代码实现:
saveas(gcf,'C:/Users/bhlde/Desktop/Mat_fi/cyclesaveas','epsc')
export_fig介绍
https://blog.csdn.net/weixin_42943114/article/details/86675872
常用的几个保存图方法
% -m1,-m2,-m3:以屏幕上图形的1,2,3倍(以像素为单位)输出
% -r500:输出位图每英寸具有500像素
% -transparent 关于图形透明
saveas(gcf,'C:/Users/bhlde/Desktop/Mat_fi/cycle','png')
saveas(gcf,'C:/Users/bhlde/Desktop/Mat_fi/cycle','epsc')
saveas(gcf, 'C:/Users/bhlde/Desktop/Mat_fi/cycle3.pdf')
export_fig('C:/Users/bhlde/Desktop/Mat_fi/cycle2.pdf','-transparent')
export_fig(gcf , '-pdf' , '-r300' , '-painters' , 'C:/Users/bhlde/Desktop/Mat_fi/cycle2.pdf');
几种生成图片的大小
相同质量下,export_fig 生成的图片最小
saveas(gcf,'C:/Users/bhlde/Desktop/Mat_fi/cyclesaveas','epsc')
saveas(gcf, 'C:/Users/bhlde/Desktop/Mat_fi/cyclesaveas.pdf')
print(gcf,'C:/Users/bhlde/Desktop/Mat_fi/cycleprint','-dpdf','-r0');%导出pdf矢量图
export_fig('C:/Users/bhlde/Desktop/Mat_fi/cycleexport.pdf','-transparent')
Save Plot as Image or Vector Graphics File
https://www.mathworks.com/help/releases/R2019b/matlab/creating_plots/saving-your-work.html
Matlab输出矢量图