打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
[转载]转:MATLAB导出高清晰图片

from http://bbs.21eic.com/dispbbs.asp?boardid=52&Id=87141&page=10

一个写论文用的小技巧,MATLAB产生的图片如何导出来合适大小或者符合编辑部要求的图片:

 

使用print命令,如下:

 

用于LaTeX的话,可以使用eps图片:

 

print -deps fig1

 

用于word的话,使用分辨率比较高的tif或者png格式即可:

 

print -dtiff -r500 fig1

 

产生的图片fig1插入到word中就可以满足要求的哦~~

---------------------------------------------------------

MATLAB图片保存方法

bar(randn(10,1))
print(gcf,'-r300','-dpdf','example1.pdf');
print(gcf,'-r300','-djpeg','example2.jpeg');

 

 

imwrite,print,saveas三个函数的区别如下:

在讲解之前,希望您区分图像和图形,前者就是我们说的位图,比如数码相机拍照的相片,后者是矢量图,就是扩大都不会改变的,比如3d软件绘制的图形

imwrite将图像数据写成图像文件,一般用于图像处理,当我们使用imshow将一副图像使显示在坐标系上时,我们可以使用如下方式保存图像

  1. I=getimage(gcf); % 获取坐标系中的图像文件数据
  2. imwrite(I,'myphoto.jpg')%保存图像为文件

saveas就是菜单中的 saveas(另存为)命令,将当前坐标系下的图形保存为图像文件,不管你坐标系中显示的图像还是图形,一律当成图形处理,他的本质是截图(除fig文件外)

print是打印命令,但是可以将当前坐标系中的内容打印到文件,或者打印到剪切板,saveas只是print函数的简化版

  1. print(fh,'-dmeta');% 复制到剪切板


 

 print的用法

 

Print(图形句柄,存储格式,文件名)

图形句柄,如果图形窗口标题栏是’figure2’,则句柄就是2。用gcf可以获取当前窗口句柄。

指定存储格式。常用的有:

       PNG格式:,‘-dpng’(推荐这一种,与bmp格式一样清晰,文件也不大)

       JPEG   -djpeg’(文件小,较清晰)

       TIFF    -dtiff

       BMP    -dbitmap’(清晰,文件极大)

       GIF     -dgif  (文件小但不清晰)

 

2 saveas的用法

Saveas(图形句柄,文件名,文件格式)

文件格式:同print一样

 

k=0.8;
set(gcf,'units',get(gcf,'paperunits'));
set(gcf,'paperposition',get(gcf,'position')*k);
saveas(gcf,'test.tif','tiff');

 

 


1、print   最常用
可作为日常绘图的首选。对格式,分辨率等各项指标做非常细致的定义,适合直接出图。

2、saveas,偶尔用
虽然说保存的图像都是默认大小,无法更改,但关键是可以保存fig图像
saveas可以保存matlab自认的fig格式的图像,也就是说,对于将来有可能需要细致修改以方便发表论文的图像,保存为fig更适合。毕竟,有时候各期刊杂志对图像命名及色彩等要求不一,甚至我们绘图有时也会有这样那样的疏忽,而有的图像也不是一下就可以做出来的,保存fig图像用来最后细修很有意义。
saveas(h,'filename','format')

如果只有一幅图,handle设为gcf;如果有多副,handle需单独设置

例如:

     saveas(gcf, 'D:datadif_modeloutput', 'fig')

     saveas(gcf, 'D:datadif_modeloutput', 'bmp')


3、imwrite :不常用。
与getframe 结合使用,适合于保存截图,当机器运行速度变慢时,批量成图可能会有错误。他的优点在于可以为下一步做movie或gif动图做准备

批量制图时常用命令:
mkdir,生成目录
filename = ['imagefigure', sprintf('d',nn)]

 

matlab保存画的图像时背景会自动就白色,怎么才能保存原来的颜色呢?其实可用print,不过先要改变图形的'inverthardcopy'属性
例如:

  1. x=0:.2:2*pi;
  2. plot(x,sin(x));
  3. print d:b1.bmp -dbmp
  4. set(gcf,'inverthardcopy','off')
  5. print d:b2.bmp -dbmp

 ========================================================

print的三个参数:

(1)图形句柄,如果图形窗口标题栏是“Figure3”,则句柄就是3.(2)单引号字符串,指定存储格式。

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

png格式:'-dpng'

jpeg:   '-djpeg',

tiff: '-dtiff'

bmp: '-dbitmap'

(3)文件名。

详细用法请 help print

例:

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

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

 

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Matlab导出高清图片的正确方法
Matlab中图片保存的四种方法讲解
matlab 之批量保存图像,再论 imwrite print saveas
9.3 图形句柄
matlab saveas 和imwrite的区别
Matlab用plot画图后怎么保存图像
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服