2010-12-27 13 views

Respuesta

72

Hay algunas formas de hacerlo. Una forma de hacer esto es conseguir que todos los hijos de la root object (representado en las versiones anteriores por el mango 0):

figHandles = get(groot, 'Children'); % Since version R2014b 
figHandles = get(0, 'Children');  % Earlier versions 

O usted podría utilizar la función findobj:

figHandles = findobj('Type', 'figure'); 

Si cualquiera de las figuras tienen hidden handles, en su lugar puede utilizar la función findall:

figHandles = findall(groot, 'Type', 'figure'); % Since version R2014b 
figHandles = findall(0, 'Type', 'figure');  % Earlier versions 
+1

+1 por 'findall', no lo conocía. –

+0

El primer argumento para 'get()' y 'findall()' es un manejador. ¿Qué se entiende cuando se proporciona 0? –

+2

@MinhTran: Es un remanente de versiones anteriores, cuando el objeto raíz se representaba con el asa '0'. Todavía funciona en versiones más nuevas, pero es mejor usar 'groot'. He actualizado mi respuesta en consecuencia. – gnovice

10

creo findall deben trabajar

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

14

Una de las mejores cosas que hacer es no hay que buscar las asas. Cuando creas cada figura, captura su mango.

h(1) = figure; 
h(2) = figure; 
... 

Como uno de los desarrolladores de aquí me dijo:

Se llaman mangos, porque se supone que aferrarse a ellos

+6

Ese es un buen punto, aunque depende de su situación y flujo de trabajo. Si tiene una amplia variedad de comandos de trazado que muestran diferentes trazados especializados y desea algo que simplemente "se ocupe de lo que ocurra ya", puede ser útil poder consultar los identificadores. –

+3

Además, existen algunas funciones que trazarán muchas figuras para usted ('anova1' trazará tres) y es posible que no le devuelvan los identificadores – Tex

4

Tienes obtener respuestas fina para la maneja la masa. Pero otro consejo para la pregunta original: imprima todas las cifras que debe archivar: puede usar la opción publish, sin tener que ocuparse de cifras o identificadores.

+1

+1. Teniendo en cuenta lo poderoso que es este comando relativamente desconocido, me sorprende que no haya más votos ascendentes. –

+1

Acabo de iniciar sesión después de meses de ausencia, solo para recitar la respuesta que Google acaba de indicarme. – user2987828

Cuestiones relacionadas