Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MATLAB中获得所有开放图形的句柄_Matlab_Matlab Figure_Figures - Fatal编程技术网

如何在MATLAB中获得所有开放图形的句柄

如何在MATLAB中获得所有开放图形的句柄,matlab,matlab-figure,figures,Matlab,Matlab Figure,Figures,我在matlab中有九个打开的图形(由另一个函数生成),我想将它们全部打印到文件中。有人知道如何在MATLAB中获取所有开放图形的句柄吗 我知道gcf,但它似乎不是我想要的 有几种方法可以做到这一点。一种方法是获取的所有子级(在以前的版本中由句柄0表示): 或者您可以使用以下功能: 如果有任何图形显示,您可以使用以下功能: 我想应该有用 handles=findall(0,'type','figure')最好的方法之一是不需要查找句柄。创建每个地物时,捕获其控制柄 h(1) = figure;

我在matlab中有九个打开的图形(由另一个函数生成),我想将它们全部打印到文件中。有人知道如何在MATLAB中获取所有开放图形的句柄吗


我知道gcf,但它似乎不是我想要的

有几种方法可以做到这一点。一种方法是获取的所有子级(在以前的版本中由句柄
0
表示):

或者您可以使用以下功能:

如果有任何图形显示,您可以使用以下功能:

我想应该有用


handles=findall(0,'type','figure')

最好的方法之一是不需要查找句柄。创建每个地物时,捕获其控制柄

h(1) = figure;
h(2) = figure;
...
正如这里的一位开发者告诉我的:

它们被称为把手,因为你应该抓住它们


你已经得到了很好的答案。但原始问题的另一个技巧是将所有图形打印到文件中:您可以使用option,而不必处理图形或句柄。

这是一个很好的观点,尽管这取决于您的情况和工作流程。如果您有各种各样的绘图命令,可以显示不同的专用绘图,并且您想要的只是“处理已经出现的任何情况”,那么能够查询句柄将非常有用。此外,还有一些函数可以为您绘制许多图形(
anova1
将绘制三个)他们可能不会将这些句柄+1返回给您。考虑到这个相对未知的命令有多强大,我很惊讶没有更多的升级投票。在缺席数月后刚刚登录,只是为了升级Google刚刚给我指出的答案。
get()
findall()
的第一个参数是一个句柄。当提供0时意味着什么?@MinhTran:这是以前版本的保留,当根对象由句柄
0
表示时。它在新版本中仍然有效,但最好使用
groot
。我已经相应地更新了我的答案。
figHandles = findobj('Type', 'figure');
figHandles = findall(groot, 'Type', 'figure');  % Since version R2014b
figHandles = findall(0, 'Type', 'figure');      % Earlier versions
h(1) = figure;
h(2) = figure;
...