MATLAB中图片保存的五种方法(一)(保存图片 matlab)
1、直接另存为
在figure中使用菜单file——>saveas——>选择保存形式(fig,eps,jpeg,gif,png,bmp等),这个的缺点是另存为的图像清晰度有很大的牺牲
2、复制到剪贴板
在figure中使用菜单edit——>copy figure——>此时图像就复制到剪贴板了,我们可以借助其他软件(比如:绘图板)保存为需要的图片
3、saveas命令格式
Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存,相当于【文件】中的【另存为】
4、print函数
print函数原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下。
5、imwrite 函数
如图像是img,则 可以使用imwrite(img,'result.jpg'); 这种方法保存图像大小和显示的大小是一样的。
前面两种操作比较简单,无需程序编程。
一种是出来图形窗口后手动保存(这儿又可以分两种):
1、 直接从菜单保存,有fig,eps,jpeg,gif,png,bmp等格式
2、 edit------〉copy figure,再粘贴到其他程序。
3 、命令直接保存用saveas命令保存图片
saveas的三个参数:
(1)图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3.
(2)文件名。
(3)单引号字符串,指定存储格式。
Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存。saveas的格式为:saveas(gca, filename, fileformat),其中的三个参数:
(1)gca:图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3;也可以直接用gcf获取当前窗口句柄。
(2)filename:单引号字符串,指定文件名
(3)fileformat:单引号字符串,指定存储格式
saveas(gcf, 'save.jpg'); %保存当前窗口的图像
saveas( 2, 'save.jpg'); %保存Figure 2窗口的图像
例子1
clc;
clear all;
close all;
% 生成 x 轴数据 , -10 ~ 10 , 步长 0.1
t = 0 : 0.1 : 2 * pi;
% x,y 轴变量
x = 3 * cos(t);
y = sin(t);
% 在第一行第一列绘制图形
subplot(2,1,1);
plot(x,y);
% 打开 坐标轴
axis on
% 在第一行第二列绘制图形
subplot(2,1,2);
plot(x,y);
% 关闭 坐标轴
axis off
% 将图像保存为图片格式
saveas(gcf, 'matlab', 'png');
saveas(gcf, 'matlab', 'jpg');
例子2
clc;
clear all;
close all;
%% 随便生成两张图片,并给figure指定标签
f1=figure('name','Figure1')
figure(f1);
scatter((1:20),rand(1,20));
f2=figure('name','Figure2')
figure(f2);
scatter((1:30),rand(1,30));
Fig_num = [1 2];
str=strings(1,2)
%% 保存指定图片到指定位置
path="E:\matlab\bin\work\研究生\微信公众号\20211023\";
% 用stracat函数生成 “path”+“自动编号的图片名”+“文件格式后缀”
str(1)=strcat(path,'Fig',num2str(Fig_num(1)),'.fig')
str(2)=strcat(path,'Fig',num2str(Fig_num(2)),'.fig')
saveas(f1,str(1))
savefig(f2,str(2))
部分常用的文件扩展名
扩展名 | 生成的格式 |
.fig | MATLAB(R) FIG 文件(对 Simulink 模块图无效) |
.m | 可以打开图窗的 MATLAB FIG 文件和 MATLAB 代码 (对于 Simulink 模块图无效) |
.jpg | JPEG 图像 |
.png | 可移植网络图形 |
.eps | EPS 3 级黑白 |
可移植文档格式 | |
.bmp | Windows(R) 位图 |
.emf | 增强的图元文件 |
.pbm | 可移植位图 |
.pcx | Paintbrush 24-bit |
.pgm | 可移植灰度图 |
.ppm | 可移植像素图 |
.tif | TIFF 图像,已压缩 |
位图文件
位图图像是以像素表示的图窗。生成的文件的大小取决于图窗、格式和系统分辨率。Web 浏览器和其他显示图形的应用程序广泛使用位图。但是,它们无法很好地支持透明度或缩放,而且您也无法在其他图形应用程序中修改其中的图形对象,例如线条和文本。
选项 格式 默认文件扩展名
选项 | 格式 | 默认文件扩展名 |
'jpeg' | JPEG 24 位 | .jpg |
'png' | PNG 24 位 | .png |
'tiff' | TIFF 24 位(压缩) | .tif |
'tiffn' | TIFF 24 位(未压缩) | .tif |
'meta' | 增强型图元文件(仅限 Windows) | .emf |
'bmpmono' | BMP 单色 | .bmp |
'bmp' | BMP 24 位 | .bmp |
'bmp16m' | BMP 24 位 | .bmp |
'bmp256' | BMP 8 位(256 色,使用固定颜色图) | .bmp |
'hdf' | HDF 24 位 | .hdf |
'pbm' | PBM(普通格式)1 位 | .pbm |
'pbmraw' | PBM(原始格式)1 位 | .pbm |
'pcxmono' | PCX 1 位 | .pcx |
'pcx24b' | PCX 24 位彩色(三个 8 位平面) | .pcx |
'pcx256' | PCX 8 位新彩色(256 色) | .pcx |
'pcx16' | PCX 旧彩色(EGA/VGA 16 色) | .pcx |
'pgm' | PGM(普通格式) | .pgm |
'pgmraw' | PGM(原始格式) | .pgm |
'ppm' | PPM(普通格式) | .ppm |
'ppmraw' | PPM(原始格式) | .ppm |
向量图形文件
向量图形文件存储用于重新绘制图窗的命令。这种格式类型适合缩放,但可能导致文件较大。在某些情况下,向量图形格式可能产生三维排列有误的对象。某些应用程序支持对向量图形格式进行大量编辑,但是某些应用程序不支持调整图形大小以外的编辑。最佳做法是在图窗仍处于 MATLAB 中时进行所有必要的更改。
通常,生成向量图形文件时,saveas 会使用绘图渲染器。对于一些复杂图窗,saveas 会改用 OpenGL(R) 渲染器。如果它使用 OpenGL 渲染器,则向量图形文件会包含嵌入式图像,这可能会限制您可在其他应用程序中编辑该图像的程度。此外,如果 saveas 使用 OpenGL 渲染器生成文件,则不支持透明度。要确保 saveas 使用 Painters 渲染器,请将图窗的 Renderer 属性设置为 'painters'。
如果设置了图窗的 Renderer 属性,则 saveas 将会使用该渲染器。否则,它会选择合适的渲染器。但是,如果 saveas 选择的渲染器与显示的图窗所用的渲染器不同,则所保存图窗的一些细节与显示的图窗可能有所不同。如果需要,您可以通过设置图窗的 Renderer 属性使显示的图窗和保存的图窗使用同一渲染器。
向量图形格式
选项 | 格式 | 默认文件扩展名 |
'pdf' | 整页可移植文档格式 (PDF) 颜色 | |
'eps' | PostScript(R) (EPS) 3 级黑白 | .eps |
'epsc' | 封装的 PostScript (EPS) 3 级彩色 | .eps |
'eps2' | 封装的 PostScript (EPS) 2 级黑白 | .eps |
'epsc2' | 封装的 PostScript (EPS) 2 级彩色 | .eps |
'meta' | 增强的图元文件(仅限 Windows) | .emf |
'svg' | SVG(可伸缩向量图) | .svg |
'ps' | 全页 PostScript (PS) 3 级黑白 | .ps |
'psc' | 全页 PostScript (PS) 3 级彩色 | .ps |
本文内容来源于网络,仅供参考学习,如内容、图片有任何版权问题,请联系处理,24小时内删除。
作 者 | 郭志龙
编 辑 | 郭志龙
校 对 | 郭志龙