2

在 MATLAB 2012a 中,我试图将图形保存为 .fig 文件,而我得到的只是一个窗口

标题:错误保存图

消息:对象必须具有“figure”类型的祖先。

我用谷歌搜索了这个错误消息,谷歌能够完美地预测我的搜索,这意味着其他人之前搜索过相同的错误消息..但是没有一个在线页面实际讨论这个错误。

我知道我没有提供太多信息,对此我深表歉意,但我无法想象还有什么其他细节可以提供。2 分钟前,我以完全相同的方式将完全相同的程序生成的不同图形保存为 .fig 文件,没有任何问题。

这个错误信息是什么意思,我该如何解决这个问题,以便我可以再次以 .fig 格式保存数字?

编辑:我正在尝试从 GUI 保存文件。

4

1 回答 1

0

您的问题似乎与 GUI 如何构建图形有关: * 父对象的类型为“图形” * 此对象有一些(通常)类型为“轴”的子对象 * 大多数图形对象(线条、文本等)属于一个轴。

未以“figure;plot(),etc...”方式构建的图形似乎出错了,例如稍后添加到图形的对象(例如“图例”)或使用自定义命令制作的图形('hist'、'bar3' 等)。

我的猜测是添加了一些没有图形句柄作为其“祖先”的 GUI 对象。

在 StackOverflow 之外查询这个问题似乎涉及 matlab 函数“getproxyvaluefromhandle”。也许谷歌搜索会有所帮助。有人在这里找到了分解图的帮助(似乎是 Matlab、英语和德语的混合体)

如果您没有代码,您至少可以描述图中的内容吗?否则答案将像问题一样摇摆不定......

于 2013-03-28T09:14:38.947 回答