Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

Cortes en gráficas y diagramas

Este ejemplo muestra cómo MATLAB® utiliza los cortes en las gráficas y cómo controlarlos.

¿Qué son los cortes?

Los cortes se producen cuando parte de un objeto sale de los límites de los ejes de una gráfica. En MATLAB®, la parte del objeto que se corta no aparece en la pantalla ni en la salida impresa. De forma predeterminada, MATLAB corta la mayoría de los objetos en los límites de los ejes.

Desactivar los cortes

Cortes en gráficas en 2D

Los cortes se producen en gráficas en 2D. Por ejemplo, MATLAB corta la onda sinusoidal en esta gráfica en 2D.

x = 0:pi/20:2*pi;
y = sin(x);
plot(x,y)
xlim([0,2*pi])
ylim([-0.9 0.9])

Puede controlar los cortes de la onda sinusoidal usando la propiedad Clipping de los ejes. Establezca los cortes en "off" para mostrar la onda sinusoidal completa.

ax = gca;
ax.Clipping = "off";

Cortes en gráficas en 3D

Los cortes también se producen en gráficas en 3D. Por ejemplo, MATLAB corta la superficie en esta gráfica en 3D.

figure
surf(peaks)
zlim([-4 4])

Puede controlar el comportamiento de los cortes de los ejes usando la propiedad Clipping de los ejes. Establezca los cortes en "off" para mostrar la superficie completa.

ax = gca;
ax.Clipping = "off";

Controlar el estilo de corte

Utilice la propiedad ClippingStyle para controlar cómo funciona el corte con respecto a los ejes. Si establece ClippingStyle en "3dbox", MATLAB corta los objetos según el volumen definido por los límites de los ejes x, y y z. Si establece ClippingStyle en "rectangle", MATLAB corta los objetos en un rectángulo imaginario dibujado fuera de los ejes x, y y z. Estas gráficas muestran la diferencia entre los dos estilos de corte.Two side-by-side surface plots. The plot with the ClippingStyle property set to "3dbox" shows the surface clipped at the axis limits. The plot with the ClippingStyle property set to "rectangle" shows the surface clipped beyond the axis limits.

Controlar el corte de texto

Los objetos que no son ejes tienen la propiedad Clipping. MATLAB también puede cortar objetos de texto en el cuadro de la gráfica de los ejes. Por ejemplo, represente algunos datos y añada una descripción de texto. De forma predeterminada, la propiedad Clipping para objetos de texto se establece en "off", por lo que si se acerca o aleja, o se desplaza, el texto puede extenderse más allá de los límites de los ejes.

figure
x = 1:10;
y = -10:10;
[X,Y] = meshgrid(x,y);
Z = X.^2-Y.^2;
surf(X,Y,Z);
ylim([-20.5 1.5])

t = text(1,7,60,"example");

Si establece la propiedad Clipping del texto en "on", el texto completo desaparece de la vista cuando la posición (x,y,z) del objeto de texto, también conocida como punto de anclaje, queda fuera del cuadro de la gráfica de los ejes.

t.Clipping = "on";

Si desea que el texto se corte en el cuadro de la gráfica de los ejes y que se muestre texto parcial, establezca también la propiedad ClippingStyle de los ejes en "rectangle".

ax = gca;
ax.ClippingStyle = "rectangle";

Cortes y marcadores

El corte no afecta a los marcadores dibujados en cada punto de datos siempre y cuando los puntos de datos se encuentren dentro de los límites de los ejes x e y de la gráfica. MATLAB muestra el marcador completo incluso si se expande ligeramente fuera de los límites de los ejes.

p = plot(1:10,'*');
p.MarkerSize = 10;
axis([1 10 1 10])

Consulte también

Funciones

Propiedades

Temas relacionados