我有大量文件需要制作直方图,因此我想从命令行保存它。对于绘图,我通常使用以下命令将其保存在 matlab 中:
figure = plot (x,y)
saveas(figure, output, 'jpg')
我想对直方图做同样的事情:
figure = hist(x)
saveas(figure, output, 'jpg')
但是,我收到一个错误,提示句柄不正确。我也试过imwrite
函数,代码执行但保存一个空白的黑色图像。有没有办法可以保存我的直方图?
当您将hist与输出参数一起使用时,它会返回每个 bin 的计数,而不是像您习惯的其他类型的绘图那样的句柄对象。
相反,抓住一个图形的句柄,使用hist
不带输出参数的图形绘制图形,然后保存图形。
fh = figure;
hist(x);
saveas(fh, output, 'jpg')
close(fh)
export_fig
来自MATLAB 文件交换的文件会自动为您处理此问题,并且还具有其他不错的功能。有关如何使用它的示例,请参见我的另一个答案。
fh = figure;
imhist(x);
saveas(fh, 'output', 'jpg');