Cómo dibujar una curva en MATLAB dados los valores de las coordenadas x e y
s es un parámetro opcional
Para obtener más detalles, consulte el siguiente contenido
Tutorial de Matlab: dibujo 2D
2. Comandos básicos de dibujo del plano xy
MATLAB no solo es bueno para operaciones numéricas relacionadas con matrices, sino que también es adecuado para diversas visualizaciones científicas
(visualización científica). ). Esta sección presentará los comandos básicos de dibujo del plano xy y del espacio xyz
, incluido el dibujo, la impresión y el archivo de curvas unidimensionales y superficies bidimensionales.
plot es la función básica para dibujar curvas unidimensionales, pero antes de usarla, necesitamos definir las coordenadas x e y de cada punto de la curva. Aquí hay un ejemplo de una curva sinusoidal:
cerrar todo; x=linspace(0, 2*pi, 100); % x coordenada de 100 puntos
y=sin(x); ) ; % correspondiente a la coordenada y
plot(x,y
======================); =============================
Organizador pequeño: funciones básicas de dibujo de MATLAB
gráfico: escala lineal del eje x y del eje y)
log: escala logarítmica)
semilogx: el eje x es la escala logarítmica, el eje y es la escala lineal
semilogía: el eje x es una escala lineal y el eje y es una escala logarítmica
===================== == ===============================
Para dibujar múltiples curvas, simplemente intercambie las coordenadas Simplemente ingrese la función de trazado:
plot(x, sin(x), x, cos(x)
Para cambiar el color, agregue caracteres relevantes después del par de coordenadas Cadena. :
plot(x, sin(x), 'c', x, cos(x), 'g')
Para cambiar el color y el estilo de línea al mismo tiempo , simplemente agregue la cadena relevante después del par de coordenadas:
plot(x, sin(x), 'co', x, cos(x), 'g*'); >= ======================== ========================= == =
Disposición pequeña: función de trama de trama ternaria
Color de carácter Tipo de línea de trama de personaje
y yellow.point
k negro o círculo
w blanco x x x
b azul + +
g verde * * *
r rojo - línea continua
c Azul brillante: línea discontinua
m Violeta manganeso-.
Línea punteada y discontinua
-- línea discontinua
============================== === ======================
Una vez completado el gráfico, podemos usar el eje ([xmin,xmax,ymin ,ymax]) función para ajustar la norma del eje de coordenadas del gráfico
Around:
axis([0, 6, -1.2, 1.2]); Además, MATLAB también puede agregar varias anotaciones y procesamiento:
xlabel('input value'); % anotación del eje x
ylabel('Function Value'); anotación del eje
yllabel('Valor de función'); % anotación del eje y
Esta es la primera vez que agrega una anotación al gráfico. Anotación del eje
title('Dos funciones trigonométricas'); % Título del gráfico
legend('y = sin(x)','y = cos(x)'); Anotación gráfica
cuadrícula activada; % cuadrícula de visualización
Podemos usar subtramas para dibujar múltiples gráficos pequeños en la misma ventana al mismo tiempo:
subtrama(2) , 2,1); trama(x, sin(x));
subtrama(2,2,2); ( 2,2,3); trama(x, sinh(x)).
subplot(2,2,4); plot(x, cosh(x));
MATLAB también tiene una variedad de otras funciones de dibujo bidimensionales para adaptarse a diferentes aplicaciones. Consulte la tabla a continuación para obtener más detalles.
============================================ === =========
Organización pequeña: varias otras funciones de dibujo bidimensional
gráfico de barras
gráfico de barras de error más error rango
fplot gráfico de función más preciso
gráfico de coordenadas polares polares
gráfico acumulativo histórico
gráfico acumulativo de coordenadas polares rosas
Diagrama de escalera y escalera
Diagrama de aguja de vástago
Diagrama de sólido relleno
Diagrama de pluma
Diagrama de brújula
diagrama de campo vectorial del carcaj
====================================== === ===============
A continuación damos ejemplos de cada función.
Los gráficos de barras son una buena representación cuando el número de puntos de datos es pequeño:
cerrar todo; % Cerrar todas las ventanas del gráfico
x=1:10;
y=rand(size(x));
bar(x,y);
Si se conoce el error de los datos La cantidad puede ser representado por barras de error.
El siguiente ejemplo hace esto usando la desviación estándar unitaria
La cantidad de error en la información:
x = linspace(0,2*pi,30); >y = pecado(x);
e = std(y)*ones(tamaño(x));
errorbar(x,y,e)
Para funciones que cambian drásticamente, use la función f que cambia drásticamente. Puede usar fplot para dibujar con mayor precisión y densidad los cambios dramáticos, como se muestra en el siguiente ejemplo:
fplot('sin(. 1/ x)', [0.02 0.2]); % [0.02 0.2] es el rango del gráfico
Para trazar coordenadas polares, utilice polar:
theta=linspace(0 , 2 *pi);
r=cos(4*theta);
polar(theta, r
Para grandes cantidades de datos, puedo usar hist Muestra las propiedades estadísticas y de partición de los datos.
El siguiente comando se puede utilizar para verificar si randn produce puntuaciones desordenadas gaussianas:
x=randn(5000, 1); % produce 5000 = 0, = puntuación de desorden gaussiana. de 1
hist(x,20); % 20 representa el número de barras
rose está muy cerca de hist, excepto que el tamaño de los datos se trata como un ángulo, El número de datos se trata como una distancia, y ?
(15) ¿ceja? ¿Espina de Hao Ma Piao?
x=randn(1000, 1
<); p >rose(x);Puedes dibujar un diagrama de escalera abajo:
x=linspace(0,10,50); (x ).*exp(-x/3);
escaleras(x,y);
los tallos pueden dibujar diagramas de punta, generalmente utilizados para dibujar señales digitales:
x=linspace(0,10,50);
y=sin(x).
x=linspace(0,10,50); >
y=sin(x):
x=linspace(0,10,50);
y=sin(x).*exp(-x/3); );
fill(x,y,'b'); % 'b' es azul
la pluma visualiza cada punto de datos como un número complejo y lo traza con una flecha:
theta=linspace(0, 2*pi, 20);
z = cos(theta)+i*sin(theta);
pluma(z); );
la brújula está muy cerca de la pluma, excepto que cada número de flecha comienza desde un punto:
theta=linspace(0, 2*pi, 20); p>z = cos(theta)+i*sin(theta);
compass(z);
3. Comandos básicos del estereograma XYZ
una de las herramientas más importantes en visualización científica. Una tecnología muy importante. Este capítulo presentará los comandos básicos de dibujo de estereogramas XYZ de MATLAB uno por uno
.
Malla y trazado son comandos básicos de dibujo tridimensional.
Malla dibuja una malla tridimensional y
trazado dibuja una superficie tridimensional. Ambos comandos producirán gráficos con diferentes colores según la altura.
El siguiente
comando de columna dibujará una cuadrícula formada por funciones:
x=linspace(-2, 2, 25 % x-axis There); hay 25 puntos en el eje y
y=linspace(-2, 2, 25 % Hay 25 puntos en el eje y
[xx,yy]=); meshgrid(x, y); % xx y yy son matrices de 21x21
zz=xx.*exp(-xx.^2-yy.^2); Calcule el valor de la función, zz también es una matriz de 21x21
mesh(xx, yy, zz % Dibujar malla cúbica
La superficie es similar a la malla:
x= linspace(-2, 2, 25); % Toma 25 puntos en el eje x
y= linspace(-2, 2, 25 % Toma 25 puntos en el eje y
[ xx,yy]= meshgrid(x, y); % xx e yy son matrices de 21x21
zz=xx.*exp(-xx. ^2-yy.^2); valor, zz también es una matriz de 21x21
surf(xx, yy, zz % Dibujar gráfico de superficie del cubo
Para probar el gráfico de superficie del cubo, MATLAB proporciona una función de pico); , que puede generar un polígono de relieve
p>
que contiene tres máximos locales y tres mínimos locales. La ecuación es:
La forma más rápida de graficar esta función es escribir picos:
picos
z = 3*(1-x).^2 .* exp(-(x.^2) - (y+1).^2) ...
- 10*(x/5 - x.^3 - y.^5). *exp (-x.^2-y.^2) ...
- 1/3*exp(-(x+1).^2 - y.^2)
También podemos tomar los puntos de la función pico y trazarlos de varias maneras. meshz agrega un perímetro a la superficie
:
[x,y,z]=peaks;
meshz(x,y,z); p>
eje([-inf inf -inf inf -inf inf]
);