MATLAB生成多张figure以及自动保存

来源:互联网 发布:json.parse 转义字符 编辑:程序博客网 时间:2024/06/03 11:15

 最近开始做毕业论文了。在整理以前做过的诸多论文实验的时候,发现以前用MATLAB写出来的代码是在太混乱了。算法程序,数据生成,以及图片绘画的.m文件都放在一个目录下。不要说拿给别人看,就连我自己时间久了都搞不清楚哪种图片是哪个MATLAB程序生成的。MATLAB没有VisualC++,Java那正规软件开发环境的工程概念,所以人工管理比较麻烦。一般外人拿到一个论文的实验程序,最简单的,就是拿到一个入口程序,能够自动跑所有的实验程序,并且生成所有的实验图片。这样,他就至少可以从这个入口程序一步一步跟踪进去,搞明白这一堆.m是什么东西。

 那么有个关键问题,如何在一个程序里面生成多个figure呢?查了一下网上,有通过subplot方法实现的。不过这个方法似乎不太好,因为它其实是将多个figure嵌到一个figure里面,那么最终还是得一个个分开才能贴到论文里面。下面是我论文里面的一个例子:

function figure_wages()
    h=figure(1);
    figure_SLICE();
    saveas(h,'figure_wages_SLICE.fig');
    h=figure(2);
    figure_CARE();
    saveas(h,'figure_wages_CARE.fig');
end

这里我用过两个算法在同一块数据上进行训练,最后结果就生成下图两个figure了。并且调用saveas函数可以实现自动把这两个figure保存到磁盘的.fig文件。这里的h=figure(1)目的就是制定当前的默认显示的Figure的ID号,并且返回给句柄h。PS:这里使用的数据都是真实的个人收入数据,其中另外2个维度分别是学历和工作经历。大家看得出来,这些是在一个平面上的吗?

image

原创粉丝点击