2012-02-13 171 views
6

我需要製作一個.fig文件,可以在Matlab中重新打開,但我正在使用Octave。但顯然Octave中沒有saveas命令。這是我想要的:從Octave保存.fig文件

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> 

回答

6

目前Matlab的無花果文件格式是一個專有的二進制文件格式。

Octave不知道如何導出爲這種格式,直到它被逆向工程時才能夠導出。 Octave知道的fig格式是Xfig使用的具有相同擴展名的不同格式格式,但沒有其他共同之處。

要將繪圖導出爲其他格式的倍頻程,請使用打印命令E.g print -deps myplot.epsprint -dpng myplot.png

當然,這不會讓你打開在Matlab中進行編輯的情節,儘管你可以打開使用imread生成的圖像。

有一個項目可以讀取octave位於here的Matlab fig文件,但相關的.m文件似乎沒有成功存檔。

如果您找到了該m文件的副本,並且它成功讀取了Octave中的Matlab fig文件,則可以使用它來製作一個Octave腳本,該腳本從Octave編寫了無花果文件。

備選地,您可以使用save命令將矩陣/原始數據加載保存爲Matlab .mat文件或其他文件格式,然後在Matlab中加載並用Matlab重新繪製。