Main Content

Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Controlar la visualización de gráficas

Qué puede controlar

MATLAB® permite que varias ventanas de figuras se abran de manera simultánea durante una sesión. Puede controlar las figuras y los ejes que utiliza MATLAB para mostrar el resultado de las funciones de representación. También puede controlar en qué medida MATLAB elimina y restablece las propiedades de las figuras y los ejes específicos.

Puede modificar la manera la manera en la que se comportan las funciones de representación de MATLAB y puede implementar comportamientos específicos en las funciones de representación que escribe.

Tenga en cuenta estos aspectos:

  • ¿Puede evitar que una figura o un eje específico se convierta en el objetivo de las gráficas de visualización?

  • ¿Qué le sucede a una gráfica existente cuando representa más datos para ese gráfico? ¿Se sustituye la gráfica existente o se añaden nuevos objetos de gráficos a la gráfica existente?

Objetivo de figuras y ejes específicos

De forma predeterminada, las funciones de representación de MATLAB muestran las gráficas en la figura actual y los ejes actuales (los objetos devueltos por gcf y gca respectivamente). Puede dirigir la salida a otra figura y ejes:

  • Especificando de manera explícita los ejes objetivo con la función de representación.

  • Convirtiendo los ejes objetivo en los ejes actuales.

Especificar los ejes objetivos

Suponga que crea una figura con dos conjuntos de ejes, ax1 y ax2.

tiledlayout(1,2)
ax1 = nexttile;
ax2 = nexttile;

Llame a plot con el objeto de ejes como primer argumento:

plot(ax1,1:10)

Para las funciones de representación que no admiten el primer argumento de los ejes, establezca la propiedad Parent:

t = 0:pi/5:2*pi;
patch(sin(t),cos(t),'y','Parent',ax2)

Convertir el objetivo en actual

Para especificar un objetivo, puede convertir una figura en la figura actual y un eje en esa figura sea el eje actual. Las funciones de representación utilizan la figura actual y sus ejes actuales de forma predeterminada. Si la figura actual no tiene ejes actuales, MATLAB crea uno.

Si fig es el identificador de una figura, entonces la instrucción

figure(fig)
  • Convierte a fig en la figura actual.

  • Vuelve a ordenar fig para que sea la figura mostrada en primer plano.

  • Vuelve a fig visible si no lo era (establece la propiedad Visible en 'on').

  • Actualiza la visualización de la figura y procesa cualquier callback pendiente.

El mismo comportamiento se aplica a los ejes. Si ax es el identificador de un eje, entonces la instrucción

axes(ax)
  • Convierte a ax en los ejes actuales.

  • Vuelve a ordenar ax para que sea el conjunto de ejes mostrado en primer plano.

  • Vuelve a ax visible si no lo era.

  • Actualiza la figura que contiene los ejes y procesa cualquier callback pendiente.

Convertir figuras o ejes en actuales sin cambiar otro estado

Puede convertir una figura o un eje en actual sin provocar un cambio en otros aspectos del estado del objeto. Establezca la raíz de la propiedad CurrentFigure o la propiedad CurrentAxes del objeto en el identificador de la figura o los ejes a los que desea dirigirse.

Si fig es el identificador de una figura existente, la instrucción

r = groot;
r.CurrentFigure = fig;

convierte a fig en la figura actual. De forma similar, si ax es el identificador de un objeto de ejes, la instrucción

fig.CurrentAxes = ax;

lo convierte en el eje actual, si fig es el identificador de la figura principal de los ejes.