Preparar figuras y ejes para la gráfica
Comportamiento de las funciones de representación de MATLAB
Las funciones de representación de MATLAB® crea una nueva figura y ejes si no existen o si vuelve a utilizar una figura o un eje o una figura existentes. Cuando vuelve a utilizar ejes existentes, MATLAB
Elimina los objetos de gráficas de los ejes.
Restablece la mayoría de propiedades de los ejes a sus valores predeterminados.
Calcula los nuevos límites de los ejes según los nuevos datos.
Cuando una función de representación crea una gráfica, la función puede:
Crear una figura y un eje para la gráfica y establezca las propiedades necesarias para la gráfica particular (comportamiento predeterminado su no existe la figura actual)
Volver a utilizar una figura y un eje existentes, eliminando y restableciendo las propiedades de los ejes según lo necesario (comportamiento predeterminado si existe una gráfica)
Agregar nuevos objetos de datos a una gráfica existente sin restablecer las propiedades (si
holdeson)
Las propiedades de la figura y el eje NextPlot controlan la manera en la que se comportan las funciones de representación de MATLAB.
Cómo las propiedades NextPlot controlan el comportamiento
Las funciones de representación de MATLAB dependen de los valores de la figura y de los ejes de las propiedades NextPlot para determinar si añadir, eliminar o eliminar y restablecer la figura y los ejes antes de representar la nueva gráfica. Las funciones de creación de objetos de bajo nivel no comprueban las propiedades NextPlot. Simplemente agregan los nuevos objetos de gráficas a la figura y ejes actuales.
La siguiente tabla resume los valores posibles para las propiedades NextPlot.
NextPlot | Figura | Ejes |
|---|---|---|
| Crea una nueva figura y la utiliza como la figura actual. | No es una opción para los ejes. |
| Agregue nuevos objetos de gráficas sin eliminar o restablecer la figura actual. (Valor predeterminado) | Agregue nuevos objetos de gráficas sin eliminar o restablecer los ejes actuales. |
| Elimina todos los objetos de ejes cuyos identificadores no están ocultos antes de la incorporación de nuevos objetos. No restablece las propiedades de la figura. Equivale a | Elimina todos los objetos secundarios de ejes cuyos identificadores no están ocultos antes de la incorporación de nuevos objetos de gráficas. No restablece las propiedades de los ejes. Equivale a |
| Retira todos los objetos de los ejes y restablece las propiedades de la figura a sus valores predeterminados antes de agregar nuevos objetos. Equivale a | Retira todos los objetos secundarios y restablece las propiedades de los ejes a sus valores predeterminados antes de agregar nuevos objetos. Equivale a |
Las funciones de representación llaman a la función newplot para obtener el identificador para los ejes apropiados.
La situación predeterminada
Tenga en cuenta la situación predeterminada en la que la propiedad NextPlot es add y la propiedad NextPlot del eje es replace. Cuando llama a newplot:
Comprueba el valor de la propiedad
NextPlotde la figura actual (que es,add).Determina que MATLAB puede representar en la figura actual sin modificar la figura. Si no hay una figura actual,
newplotcrea una, pero no vuelve a comprobar su propiedadNextPlot.Comprueba el valor de la propiedad
NextPlotde los ejes actuales (que es,replace), elimina todos los objetos de gráficas de los ejes, restablece todas las propiedades de los ejes (exceptoPositionyUnits) en sus valores predeterminados y devuelve el identificador de los ejes actuales. Si no hay ejes actuales,newplotcrea uno, pero no vuelve a comprobar su propiedadNextPlot.Elimina todos los objetos de gráficas de los ejes, restablece todas las propiedades de los ejes (excepto
PositionyUnits) en sus valores predeterminados y devuelve el identificados de los ejes actuales. Si no hay ejes actuales,newplotcrea uno, pero no vuelve a comprobar su propiedadNextPlot.
Función hold y propiedades NextPlot
La función hold proporciona un acceso práctico a las propiedades NextPlot. Cuando desea agregar objetos a una gráfica sin eliminar otros objetos o restablecer las propiedades utilice hold on:
hold on: Establece las propiedadesNextPlotde la figura y los ejes enadd. Las gráficas de línea siguen utilizando los valores de la propiedadColorOrderyLineStyleOrder.hold off: establece la propiedadNextPlotde los ejes enreplace
Utilice ishold para determinar si hold es on o off.
Controlar el comportamiento de las funciones de representación escritas por el usuario
MATLAB proporciona la función newplot para simplificar la escritura de funciones de representación que se adaptan a la configuración de las propiedades NextPlot.
newplot comprueba los valores de las propiedades NextPlot y toma la medida apropiada según estos valores. Coloque newplot al principio de cualquier función que llame a las funciones de creación de objetos.
Cuando su función llama a newplot, newplot primero solicita la figura de la propiedad NextPlot. Según los valores de la propiedad newplot lleva a cabo después la acción descrita en la siguiente tabla según el valor de la propiedad.
| Valor de la propiedad NextPlot de la figura | Función newplot |
|---|---|
No existen figuras | Crea una figura y convierte a esta figura en la figura actual. |
| Convierte a la figura en la figura actual. |
| Crea una nueva figura y la convierte en la figura actual. |
| Elimina los elementos secundarios de la figura (los objetos de los ejes y sus descendientes) y convierte a esta figura en la figura actual. |
| Elimina los elementos secundarios de la figura, restablece sus propiedades a sus valores predeterminados y convierte a esta figura en la figura actual. |
A continuación, newplot comprueba la propiedad NextPlot de los ejes actuales. Según el valor de la propiedad, newplot lleva a cabo las acciones descritas en la siguiente tabla.
| Valor de la propiedad NextPlot de los ejes | Función newplot |
|---|---|
No existen ejes en la siguiente figura | Crea unos ejes y los utiliza como los ejes actuales |
| Convierte los ejes en los ejes actuales y devuelve su identificador. |
| Elimina los elementos secundarios de los ejes y convierte estos ejes en los ejes actuales. |
| Elimina los elementos secundarios de los ejes, restablece las propiedades de los ejes a sus valores predeterminados y convierte estos ejes en los ejes actuales. |