博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
matlab的绘图保存
阅读量:7004 次
发布时间:2019-06-27

本文共 1752 字,大约阅读时间需要 5 分钟。

 
matlab的绘图和可视化能力是不用多说的,可以说在业内是家喻户晓的。Matlab提供了丰富的绘图函数,比如ez**系类的简易绘图函数,surf、mesh系类的数值绘图函数等几十个。另外其他专业工具箱也提供了专业绘图函数,这些值得大家深入学习好久。
今天我只是讨论下如何保存这些由Matlab绘制出来的图像呢?当然借助第三方截图软件,就算了!
1、直接另存为
在figure中使用菜单file——>saveas——>选择保存形式(fig,eps,jpeg,gif,png,bmp等),这个的缺点是另存为的图像清晰度有很大的牺牲
2、复制到剪贴板
在figure中使用菜单edit——>copy figure——>此时图像就复制到剪贴板了,我们可以借助其他软件(比如:绘图板)保存为需要的图片
3、saveas命令格式
Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存,相当于【文件】中的【另存为】
% saveas(figure_handle,filename,fileformat)
plot(1:10);
saveas(gcf,‘myfig.jpg’)
复制代码
4、print函数
print函数原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下
% print(figure_handle,fileformat,filename)
x=-pi:2*pi/300:pi;
y=sin(x);
plot(x,y);
%Matlab根据文件扩展名,自动保存为相应格式图片,另外路径可以是绝对也可以是相对
print(gcf,'-dpng','abc.png')   %保存为png格式的图片到当前路径
复制代码
另外有网友向我反映,有时我们只有一个Matlab图像的fig文件,但没有该图像的相关坐标数据,那我们如何获取fig图像的数据呢,这个其实比较好办
1、将那个fig文件保存到Matlab的搜索路径下,双击打开它
2、在Matlab的command中输入如下内容
h=get(gcf,'chidren')
data=get(h,{'xdata','ydata','zdat a'})
%此时图形中所有图像的三维数据x,y,z将会以结构体的形式保存到data变量中了
 

一种是出来图形窗口后手动保存(这儿又可以分两种):

1 直接从菜单保存,有fig,eps,jpeg,gif,png,bmp等格式。

2 edit------〉copy figure,再粘贴到其他程序。

另一种是用命令直接保存(这里也有两种):

1 用saveas命令保存图片。

saveas的三个参数:

(1)图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3.

 

(2)文件名。

(3)单引号字符串,指定存储格式。

例:

saveas(gcf,['D:\MATLAB7\work','yanbao',num2str(k),'.jpg']);

2 使用plot函数后紧接着用print函数。

print的三个参数:

(1)图形句柄,如果图形窗口标题栏是“Figure 3”,则句柄就是3.

(2)单引号字符串,指定存储格式。

用gcf可以获取当前窗口句柄。

 

png格式:'-dpng'

jpeg:    '-djpeg',

tiff: '-dtiff'

bmp: '-dbitmap'

(3)文件名。

 

 

例:

>> x=-pi:2*pi/300:pi; >> y=sin(x); >> plot(x,y); >> print(gcf,'-dpng','abc.png')   % 保存为png格式的图片。

>> figure(2)            % 新建一个句柄为2的图形窗口。 >> plot(x,cos(x));    % 在句柄为2的图形窗口上画图。 >> grid >> print(2,'-djpeg','C:\abc.jpeg'); %将句柄为2的图形保存为jpeg/jpg格式的图片,文件名为'C:\abc.jpeg'。

 

转自 http://www.cnblogs.com/nktblog/archive/2012/07/24/2606652.html  (侵删)

你可能感兴趣的文章
Nginx 错误汇总
查看>>
Maven将jar包放入本地库
查看>>
SnowNLP:一个处理中文文本的 Python 类库
查看>>
linux系统性能监视命令
查看>>
iOS: 悬浮的条件筛选下拉框的使用
查看>>
2016 SDCC会后总结
查看>>
学习ASP.NET Core, 怎能不了解请求处理管道[6]: 管道是如何随着WebHost的开启被构建出来的?...
查看>>
JAVA Eclipse的Android的进程和生命周期是什么
查看>>
Python的Django框架中的Context使用
查看>>
spark join
查看>>
HDU 1542 Atlantis (线段树 + 扫描线 + 离散化)
查看>>
linux 添加静态路由
查看>>
PHP中file_exists()函数不能检测包含中文的文件名的解决办法
查看>>
How can I create a dump of SQL Server?
查看>>
排序(3)---------冒泡排序(C语言实现)
查看>>
利用React/anu编写一个弹出层
查看>>
windows下配置nginx+php环境
查看>>
[工具配置]使用requirejs模块化开发多页面一个入口js的使用方式
查看>>
Jenkins具体安装与构建部署使用教程
查看>>
【ES】学习9-聚合2
查看>>