Main Content

contour3

Diagrama de contorno en 3D

  • 3-D contour plot

Descripción

ejemplo

contour3(Z) crea un diagrama de contorno 3D que contiene las isolíneas de la matriz Z, donde Z contiene los valores de altura del plano x-y. MATLAB® selecciona de forma automática las líneas de contorno que se van a mostrar. Los índices de columna y de fila de Z son las coordenadas x e y del plano, respectivamente.

ejemplo

contour3(X,Y,Z) especifica las coordenadas x e y para los valores de Z.

ejemplo

contour3(___,levels) especifica las líneas de contorno que se van a mostrar como último argumento en cualquiera de las sintaxis anteriores. Especifique levels como un valor escalar n para mostrar las líneas de contorno en n niveles (alturas) elegidos de forma automática. Para dibujar las líneas de contorno en alturas específicas, especifique levels como vector de valores que aumentan monotónicamente. Para dibujar los contornos en una altura (k), especifique levels como vector fila de dos elementos [k k].

contour3(___,LineSpec) especifica el estilo y el color de las líneas de contorno.

contour3(___,Name,Value) especifica opciones adicionales para el diagrama de contorno utilizando uno o más argumentos de par nombre-valor. Especifique las opciones después de todos los demás argumentos de entrada. Para obtener una lista de las propiedades, consulte Contour Properties.

contour3(ax,___) muestra el diagrama de contorno en los ejes objetivo. Especifique los ejes como el primer argumento en cualquiera de las sintaxis anteriores.

M = contour3(___) devuelve la matriz de contorno M, que contiene las coordenadas (x, y) de los vértices en cada nivel.

ejemplo

[M,c] = contour3(___) devuelve la matriz de contorno y el objeto de contorno c. Utilice c para establecer las propiedades después de mostrar el diagrama de contorno.

Ejemplos

contraer todo

Defina Z como una función de X y de Y. En este caso, llame a la función sphere para crear X, Y y Z. Después, represente los contornos de Z.

[X,Y,Z] = sphere(50);
contour3(X,Y,Z);

Figure contains an axes object. The axes object contains an object of type contour.

Defina Z como una función de dos variables, X e Y. Después, represente los contornos de Z. En este caso, deje que MATLAB® elija los contornos y los límites para los ejes x e y.

[X,Y] = meshgrid(-5:0.25:5);
Z = X.^2 + Y.^2;
contour3(Z)

Figure contains an axes object. The axes object contains an object of type contour.

Ahora, especifique los 50 niveles de contorno y muestre los resultados dentro de los límites x e y utilizados para calcular Z.

contour3(X,Y,Z,50)

Figure contains an axes object. The axes object contains an object of type contour.

Defina Z como una función de dos variables, X e Y. Después, represente los contornos en Z = [-.2 -.1 .1 .2]. Muestre las etiquetas de contorno estableciendo la propiedad ShowText en 'on'.

[X,Y] = meshgrid(-2:0.25:2);
Z = X.*exp(-X.^2-Y.^2);
contour3(X,Y,Z,[-.2 -.1 .1 .2],'ShowText','on')

Figure contains an axes object. The axes object contains an object of type contour.

Defina Z como una función de X y de Y. En este caso, llame a la función peaks para crear X, Y y Z. A continuación, muestre los contornos en Z = 2.

[X,Y,Z] = peaks;
contour3(X,Y,Z,[2 2]);

Figure contains an axes object. The axes object contains an object of type contour.

Defina Z como una función de dos variables, X e Y. Represente 30 contornos de Z y, a continuación, establezca el ancho de línea en 3.

[X,Y] = meshgrid(-2:0.0125:2);
Z = X.*exp(-X.^2-Y.^2);
[M,c] = contour3(X,Y,Z,30);
c.LineWidth = 3;

Figure contains an axes object. The axes object contains an object of type contour.

Argumentos de entrada

contraer todo

Coordenadas x, especificadas como matriz del mismo tamaño que Z o como vector con una longitud n, en el que [m,n] = size(Z). El valor predeterminado de X es el vector (1:n).

Cuando X es una matriz, los valores deben ser estrictamente crecientes o decrecientes en una dimensión y mantenerse constantes en la otra. La dimensión que varía debe ser la opuesta a la dimensión que varía en Y. Puede usar la función meshgrid para crear matrices X e Y.

Cuando X es un vector, los valores deben ser estrictamente crecientes o decrecientes.

Ejemplo: X = 1:10

Ejemplo: X = [1 2 3; 1 2 3; 1 2 3]

Ejemplo: [X,Y] = meshgrid(1:10)

La propiedad XData del objeto Contour guarda las coordenadas x.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas y, especificadas como matriz del mismo tamaño que Z o como vector con una longitud m, en el que [m,n] = size(Z). El valor predeterminado de Y es el vector (1:m).

Cuando Y es una matriz, los valores deben ser estrictamente crecientes o decrecientes en una dimensión y mantenerse constantes en la otra. La dimensión que varía debe ser la opuesta a la dimensión que varía en X. Puede usar la función meshgrid para crear las matrices X e Y.

Cuando Y es un vector, los valores deben ser estrictamente crecientes o decrecientes.

Ejemplo: Y = 1:10

Ejemplo: Y = [1 1 1; 2 2 2; 3 3 3]

Ejemplo: [X,Y] = meshgrid(1:10)

La propiedad YData del objeto Contour guarda las coordenadas y.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Coordenadas z, especificadas como matriz. Esta matriz debe tener al menos dos filas y dos columnas, y debe contener al menos dos valores diferentes.

Ejemplo: Z = peaks(20)

La propiedad ZData del objeto Contour guarda las coordenadas z.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Niveles de contorno, especificados como número entero escalar o como vector. Utilice este argumento para controlar el número y la ubicación de las líneas de contorno. Cuando no especifica los niveles, la función contour3 elige los niveles automáticamente.

  • Para dibujar líneas de contorno en n alturas elegidas automáticamente, especifique levels como el valor escalar n.

  • Para dibujar las líneas de contorno en alturas específicas, especifique levels como vector de valores que aumentan monotónicamente.

  • Para dibujar líneas de contorno en una altura única k, especifique levels como vector fila de dos elementos [k k].

Ejemplo: contour3(peaks,10) dibuja líneas de contorno en 10 alturas elegidas automáticamente en la función peaks.

Ejemplo: contour3(peaks,[-4 0 4]) dibuja líneas de contorno en 3 alturas específicas en la función peaks: -4, 0 y 4.

Ejemplo: contour3(peaks,[3 3]) dibuja líneas de contorno para mostrar dónde la altura de la función peaks es 3.

Tipos de datos: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Estilo de línea y color, especificado como vector de caracteres o escalar de cadena que contiene caracteres y símbolos. Los caracteres y los símbolos pueden aparecer en cualquier orden. Puede especificar el estilo de línea, el color de línea o ambos. Los símbolos de marcador, como 'o', se ignoran.

Ejemplo: '--g' es una línea verde discontinua.

Estilo de líneaDescripciónLínea resultante
"-"Línea continua

Sample of solid line

"--"Línea discontinua

Sample of dashed line

":"Línea de puntos

Sample of dotted line

"-."Línea de puntos y rayas

Sample of dash-dotted line, with alternating dashes and dots

Nombre del colorNombre cortoApariencia
'red''r'

Sample of the color red

'green''g'

Sample of the color green

'blue''b'

Sample of the color blue

'cyan' 'c'

Sample of the color cyan

'magenta''m'

Sample of the color magenta

'yellow''y'

Sample of the color yellow

'black''k'

Sample of the color black

'white''w'

Sample of the color white

Ejes objetivo, especificados como objeto Axes. Si no especifica los ejes, contour3 representa en los ejes actuales.

Argumentos de par nombre-valor

Especifique pares opcionales de argumentos como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de otros argumentos, pero el orden de los pares no importa.

En las versiones anteriores a R2021a, utilice comas para separar cada nombre y valor, y encierre Name entre comillas.

Ejemplo: contour3(Z,'ShowText','on') representa las etiquetas de línea de contorno.

Nota

Las propiedades que se enumeran aquí son solo un subconjunto. Para obtener una lista completa, consulte Contour Properties.

Etiquetas de línea de contorno, especificadas como 'on' o como 'off', o como 1 (true) o 0 (false) numérico o lógico. Un valor de 'on' equivale a true, y 'off' equivale a false. En consecuencia, puede utilizar el valor de esta propiedad como valor lógico. El valor se guarda como valor lógico activado/desactivado del tipo matlab.lang.OnOffSwitchState.

  • 'on': muestra los valores de altura en las líneas de contorno.

  • 'off': no etiqueta las líneas de contorno.

Ancho de línea, especificado como valor positivo en puntos. Un punto equivale a 1/72 pulgadas.

Espaciado de etiquetas en las líneas de contorno, especificado como valor escalar en puntos, donde un punto equivale a 1/72 pulgadas. Utilice esta propiedad para controlar el número de etiquetas de contorno en las líneas de contorno. Los valores más pequeños generan más etiquetas.

Debe establecer la propiedad ShowText en 'on' para que la propiedad LabelSpacing surta efecto.

Si utiliza la función clabel para mostrar las etiquetas, la propiedad LabelSpacing no surte ningún efecto y la gráfica muestra una etiqueta por línea.

Argumentos de salida

contraer todo

Matriz de contorno, devuelta como matriz de dos filas con la siguiente forma.

Z1, x1,1, x1,2, ..., x1,N1, Z2, x2,1, x2,2, ..., x2,N2, Z3, ...
N1, y1,1, y1,2, ..., y1,N1, N2, y2,1, y2,2, ..., y2,N2, N3, ...

Las columnas de la matriz definen las líneas de contorno. Cada línea de contorno comienza con una columna que contiene valores Z y N:

  • Zi: la altura de la i-ésima línea de contorno

  • Ni: el número de vértices de la i-ésima línea de contorno

  • (xij, yij): las coordenadas de los vértices para la i-ésima línea de contorno, donde j oscila entre 1 y Ni

Objeto Contour. Utilice este objeto para establecer las propiedades después de mostrar el diagrama de contorno.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a

Consulte también

Funciones

Propiedades