matlab openfig call from java



我在Matlab中使用webfigure,我在Matlab中有一个简单的函数

function df = getFig
  f = openfig('C:test1.fig');
  figure('Visible','Off')
  df = webfigure(f);
  close(f);
end

我从我的java servlet调用这个函数。然而,这只是坐了一段时间然后我得到这个错误:

{_Error using figure
UIJ_AreThereWindowShowsPending - timeout waiting for window to show up
Error in openfig (line 135)
Error in getFig (line 3)
}_ 

我已经尝试调用相同的函数,除了在飞行中生成的图形,如使用情节或结,两者都工作得很好。

也作为一个相关的问题,是否有可能在一个文件的引用传递到这个函数从java?比如通过输入流对象?这是因为我需要检索的文件实际上是从URL检索的。

任何想法?

我不确定问题到底是什么,但一个问题可能是命令figure('Visible','off')没有修改您的图形f,而是创建一个新的,不可见的单独图形。

我也不确定为什么你想要这个数字是不可见的(我认为这可能是为什么它没有显示在Java servlet中的真正问题)。

如果你想让它不可见,你可以试试

openfig('filename.fig','new','invisible')

或者,因为openfig实际上是用于gui而不是仅包含图形的图形,所以使用hgload代替,然后直接设置可见性

最新更新