1

下面的代码在一个不可见的图形上生成一个图和一个表格。

 f = figure('Visible','off')
 plot(rand(10),rand(10))
 t = uitable('Parent',f,'Data',rand(10,10))
 saveas(f,'file.jpg','jpg')

唯一的问题是,表格不会被打印/保存到文件中,我也尝试使用print它来验证它。plot我放置的顺序也不uitable重要。

有解决方法吗?我希望它起作用的原因是,我想将数百个绘图 + 表格保存到文件中并且不想绘制它们,因为它似乎需要一些时间,尽管它只是在绘图。

下面的代码将显示该图形,然后该表格也神奇地出现在打印件上。

set(f,'Visible','on')

到目前为止,这始终是可重现的,我正在运行 R2011a。谢谢 :)

4

2 回答 2

0

这是一个已知的错误: 我很久以前在 Matlab 中央论坛上提出的一个问题

于 2011-10-19T00:08:49.363 回答
0

PRINT函数文档(SAVEAS 调用)中说明:

如果在 nodisplay 模式下打印或导出,则图窗所具有的任何 uicontrol 都将不可见。如果在图窗不可见时运行将 uicontrols 添加到图窗的代码,则在图窗可见之前控件将不会打印。

所以这不是一个真正的错误,更多的是一个限制......

于 2011-10-20T23:22:48.900 回答