改变figure大小存储图片(matlab)

figure图片存储的时候,使用saveas命令,如果不做设定,只能存储默认大小,但是有的时候需要存储特定比例拉伸的图片。

         matlab里面figure相关对象的关系是: screenfigureaxis,所以在设置图片大小的时候,先设定figure相对于screen的位置和大小,然后设定axes相对于figure的位置和大小。

         图画出来之后,如下命令就可以储存特定大小的图片。下面给出两种方法。

法一  截图

%=========================================================

set(gcf,'position',[100,100, 500, 300]);         %设定figure的位置和大小    get current figure

set(gcf,'color','white');                           %设定figure的背景颜色

A=getframe(gcf);                                     

imwrite(A.cdata,'try.png')                          %存储调整过大小的图片

%==================================================

 

    还可以根据需求调整坐标轴的位置和大小,比如不想要白边一类

%====================================================

set(gca,'DataAspectRatio',[3,4,1]);                  %调整坐标轴比率     get current axes

set(gca,'position',[0,0,1,1]);                        %调整坐标轴位置

%======================================================

 

最后说明一下,saveas存储的大小是默认大小,imwrite相当于截屏;存图片的时候要养成好习惯,顺便存一个figure,以方便以后修改。

 saveas(gcf,'tt.fig');  


法二 设定保持长宽比存图

如果要发表paper,上面这种做法就不可取了,因为存下的图片是截图;不少杂志(比如PR系列),直接说了,Not Screen!(截图丢失信息,不方便出版方的再次排版一类)。

图片画出来以后,执行以下命令,就可以保持长宽比率保存图片(但是图片的绝对大小会变化)。

set(gcf,'color','white','paperpositionmode','auto');

saveas(gcf,'exprimentLightBundles.eps','psc2');

转载于:https://my.oschina.net/u/133558/blog/501964

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值