2012-08-10 201 views

回答

7

更新29/04/2016

johnml1135's answer,图文件基本上只是垫文件,johnml1135想通了其中各种剧情元素被存储在一个FIG文件转换成一个Python的情节。

原始

根据答案here利用Matlab保存FIG文件是在一个专有的二进制格式。我不知道任何其他能够加载这种格式的软件。

你最好的选择是根据图的类型将图保存为Matlab内的pdf/png。

可能的解决方法

我最近注意到,octave将加载一个图文件的结构,所以,如果你坚持努力,以打开图文件,而不能够访问Matlab的你可以尝试写八度功能,将加载无花果文件并从struct的内容重新构图。这可能需要知道关于情节的先前信息。

+0

其实,巨蟒/ SciPy的可以读取文件所看到[这里](http://stackoverflow.com/a/36923358/2140414)。 – johnml1135 2016-04-28 19:05:24

+0

@ johnml1135:感谢您的解决方案的链接 - 似乎无花果文件只是垫文件,你已经找出了各种情节项目对应的结构 - 很好! – jmetz 2016-04-29 11:08:39

3

正如@mutzmatron所说,.fig不容易打开,但这主要是由于它记录不完全(不清楚专有方面...)。可以看出here,有一个简单的格式,它们与.mat文件非常相似,这可能会给你另一个方向。

我一直很喜欢plot2svg。它将Matlab数字(大多数情况下)导出到非专有矢量格式SVG。

+0

我尝试过'plot2svg'一次,发现它有点错误 - 但我主要想知道在pdf中有什么优点和缺点? – jmetz 2012-08-10 18:18:42

+2

是的,它很麻烦,Mathworks应该开始支持它!优点和缺点太多 - 它值得自己的职位。与我最相关的一直是,SVG在本地支持大多数浏览器,而PDF支持一直很困难。另外,从PDF到其他图像的转换可能会很痛苦,而SVG从来没有对待过我。 – 2012-08-10 18:33:12

2

创建包含脚本(例如FigViewer.m)简单地将命令figure并通过从Matlab的命令窗口运行

MCC -e -v FigViewer.m

编译它。这样,您就可以获得一个平台相关的应用程序,该应用程序可以在安装了Matlab Compiler Runtime的正确版本的任何计算机上运行,​​该版本可以免费使用。如果您正在寻找有关Matlab编译器的更多信息,请使用MathWorks主页而不是Google,因为某些信息仅在登录屏幕后面可用,因此Google无法找到。

0

Python通过SciPy能够打开一个无花果文件(scipy.io.loadmat),它实际上只是一个mat文件的另一个名字。 This post可以显示标签等简单的线条图,但可以很容易地扩展。从中获取数据也相当简单。

0

事实证明,matlab中实际上有一个命令,可以让你保存任何想要以任何格式存档的数字。试试这个:

print('theNameYouWant','-dpng') 

这可以让你保存这个数字到png文件,然后可以通过众多的应用程序,如MS打开画图或画笔在Mac