• Matlab中图片保存的5种方法


    matlab的绘图和可视化能力是不用多说的,可以说在业内是家喻户晓的。
    Matlab提供了丰富的绘图函数,比如ez**系类的简易绘图函数,surf、mesh系类的数值绘图函数等几十个。另外其他专业工具箱也提供了专业绘图函数,这些值得大家深入学习好久。

    今天我只是讨论下如何保存这些由Matlab绘制出来的图像呢?当然借助第三方截图软件,就算了!

    1、使用imwrite 函数

    如图像是img,则可以使用 imwrite(img,'result.jpg'); 这种方法保存图像大小和显示的大小事一样的。下面几种方法大小基本不一样(sg我测试的)


    2、直接另存为
    在figure中使用菜单file——>saveas——>选择保存形式(fig,eps,jpeg,gif,png,bmp等),这个的缺点是另存为的图像清晰度有很大的牺牲

    3、复制到剪贴板
    在figure中使用菜单edit——>copy figure——>此时图像就复制到剪贴板了,我们可以借助其他软件(比如:绘图板)保存为需要的图片

    4、saveas命令格式
    Matlab提供直接的saveas函数可以将指定figure中的图像或者simulink中的框图进行保存,相当于【文件】中的【另存为】

      1. % saveas(figure_handle,filename,fileformat)
         
      2. plot(1:10);
         
      3. saveas(gcf,‘myfig.jpg’)         (这种保存图像大小和源图像发生较大差别,为什么呢?就是因为句柄不一样的缘故。可以尝试
      4. set (gcf,'Position',[500,500,500,500], 'color','w') %大小设置。 sg我亲自测试5、print函数
        print函数原本不是用来进行图像保存了,而是操作打印机的,但是这里我们可以借用下
        1. % print(figure_handle,fileformat,filename)
           
        2. x=-pi:2*pi/300:pi;
           
        3. y=sin(x);
           
        4. plot(x,y);
           
        5. %Matlab根据文件扩展名,自动保存为相应格式图片,另外路径可以是绝对也可以是相对
           
        6. print(gcf,'-dpng','abc.png')   %保存为png格式的图片到当前路径

        复制代码

        另外有网友向我反映,有时我们只有一个Matlab图像的fig文件,但没有该图像的相关坐标数据,那我们如何获取fig图像的数据呢,这个其实比较好办

        1、将那个fig文件保存到Matlab的搜索路径下,双击打开它
        2、在Matlab的command中输入如下内容

        1. h=get(gcf,'chidren')
           
        2. data=get(h,{'xdata','ydata','zdat a'})
           
        3. %此时图形中所有图像的三维数据x,y,z将会以结构体的形式保存到data变量中了
          1. from: http://blog.csdn.net/lsg32/article/details/8111956
  • 相关阅读:
    企业级管理软件快速开发平台在同一个数据库上进行多个系统开发
    企业级管理软件快速开发平台设计思想分享
    由IT代码工转行做销售2年,给自己的销售管理团队做了个CRM,欢迎大家批评指正!
    探讨未来平台化开发技术
    企业级管理软件快速开发平台极致业务基础平台开发效果一览
    封装原生js的Ajax方法
    正则表达式之圆括号(转)
    完美/兼容版添加事件以及删除事件
    判断浏览器版本及浏览器类型
    使用Normalize.css重置默认样式
  • 原文地址:https://www.cnblogs.com/GarfieldEr007/p/5574302.html
Copyright © 2020-2023  润新知