保存的png不是Matlab的数字

时间:2015-04-21 16:06:35

标签: matlab matlab-figure

我使用以下代码从Matlab图中保存png。但由于某种原因,他们并不相同。如果有人可以请指教。

这是使用的代码:

fig1=figure('visible','off');
b = bar(bar_res);
x={'a' ;'b' ;'c'; 'd' ;'e'; 'f' ;'g'; 'h';...
     'i'; 'j' ;'k'; 'l'; 'm'; 'n' ;'o'; 'p' ;'q' ;'r'; 's';...
     't';'u'};
set(gca,'XTickLabel',x,'XTick',1:21);
rotateXLabels( gca, 90 );
with=char('Res with dash');
without=char('Res without dash');
legend('Reference',with,without,'Location','northwest');
set(gca,'FontSize',16);
y=ylabel('Number of trials','rot',90,'FontSize',18);
set(y,'Units','Normalized','Position',[-0.15, 0.5, 0]);
saveas(gca, 'a.png');

Matlab Fig出现:

enter image description here

PNG已保存: enter image description here

1 个答案:

答案 0 :(得分:2)

我建议在Matlab Central上使用名为export_fig的提交。它完全符合您的要求。从描述:

  

此功能将图形或单个轴保存到一个或多个矢量和/或位图文件格式,和/或将光栅化版本输出到工作区,具有以下属性:图形/轴在屏幕上显示,。 ..

<强>更新

该函数接受许多参数,您可以控制透明度,边距等。可以找到一系列用法示例here。只需将当前数字导出为 .png 文件:

export_fig test.png