我需要制作一个可以在Matlab中重新打开的.fig文件,但我使用的是Octave。但显然在Octave中没有saveas命令。这就是我正在尝试的:
octave:3> plot([1,2,3],[45,23,10])
octave:4> saveas(gcf,'myfig.fig')
error: `saveas' undefined near line 4 column 1
octave:4> 发布于 2012-02-14 07:38:00
目前,Matlab fig文件格式是专有的二进制文件格式。
Octave不知道如何导出到这种格式,除非它被反向工程,否则将无法导出。Octave知道的fig格式是Xfig使用的一种不同的fig格式,具有相同的扩展名,但没有其他共同之处。
要以倍频程将绘图导出为其他格式,请使用打印命令,例如print -deps myplot.eps或print -dpng myplot.png。
当然,这不能让您在Matlab中打开绘图进行编辑,但是您可以打开使用imread生成的图像。
在位于here的Octave中有一个读取Matlab fig文件的项目,但是相关的.m文件似乎没有成功归档。
如果您找到了m文件副本,且它成功地读取了Octave中的Matlab fig文件,那么您可以使用它来创建一个Octave脚本,该脚本从Octave中写入fig文件。
或者,您可以使用Matlab命令将矩阵/原始数据加载保存为Matlab .mat文件或其他文件格式,然后在Matlab中加载并使用Matlab重新绘制。
https://stackoverflow.com/questions/9269195
复制相似问题