Saltar al contenido

Gráficas Tridimensionales MATLAB

Hola controleros y controleras bienvenidos a otra entrada de nuestro curso de MATLAB, donde vamos a aprender a hacer gráficas tridimensionales MATLAB.

Antes de comenzar, si deseas aprender MATLAB desde cero, no te pierdas nuestro CURSO GRATIS DE MATLAB.

Graficas Tridimensionales en Matlab

MATLAB ofrece una variedad de comandos para gráficas tridimensionales, como, por ejemplo:

Gráficas Tridimensionales
plot3(x,y,z) Crea una grafica lineal tridimensional
comet3(x,y,z) Genera una versión animada de plot3
mesh(z)
mesh(x,y,z)
Crea una superficie de malla
surf(z) surf(x,y,z) Crea una grafica de superficie similar a la función mesh
shading interp Interpola entre los colores usados para ilustrar gráficas de superficie
shading flat Colorea cada sección de retícula con un color sólido
colormap(map_name) Permite al usuario seleccionar el patron de color a usar en las gráficas de superficie
contour(z) controur(x,y,z) Genera una gráfica de contorno
surfc(z) surfc(x,y,z) Crea una gráfica de superficie combinada con una gráfica de contorno
pcolor(z) pcolor(x,y,z) crea una gráfica en pseudocolor

Gráfica lineal tridimensional

Permite graficar en 3 dimensiones con el comando plot3

Este tipo de gráfico es similar al plot con la diferencia que ahora se agrega la coordenada z para graficar en el espacio.

Adicionalmente podemos usar el comando comet3 para ver la misma gráfica 3D de forma animada en la figura de Matlab

Hagamos una función que represente una especie de resorte en Matlab.

(el código lo encontrarás al final de esta entrada)

Graficas Lineales Tridimensionales MATLAB

Gráficas Mesh

Muy usados en problemas de optimización de procesos de ingeniería.

Se pueden usar para dar buen efecto a una matriz bidimensional sencilla m×n. En esta aplicación, el valor en la matriz representa el valor z en la gráfica. Los valores x y y se basan en las dimensiones de la matriz.

mesh(z);

Grafica Mesh

La función mesh también se puede usar con tres argumentos: mesh(x,y,z). En este caso, x es una lista de coordenadas x, y es una lista de coordenadas y, y z es una lista de coordenadas z.

El vector x debe tener el mismo número de elementos que el número de columnas en el vector z; el vector y debe tener el mismo número de elementos que el número de filas en el vector z.

x=linspace(1,50,10);
y=linspace(500,1000,3);
z=[1:10;
2:2:20;
3:12]
mesh(z);

Gráficas Surf

Las gráficas surf son similares a las gráficas mesh, pero surf crea una superficie tridimensional colorida en lugar de una mesh. Los colores varían con el valor de z.

surf(x,y,z);

Gráficas Tridimensionales MATLAB Surf

Se usa exactamente igual que mesh y su esquema sombreado para las gráficas de superficie se controla con el comando shading.
•shading interp
•shading flat
•shading faceted

[X, Y] = meshgrid (x, y) replica los vectores de cuadrícula x e y para producir las coordenadas de una cuadrícula rectangular (X, Y). El vector de cuadrícula x es un número replicado (y) veces para formar las columnas de X. El vector de cuadrícula y es un número replicado (x) veces para formar las filas de Y.

Gráficas de contorno

Las gráficas de contorno son representaciones bidimensionales de superficies tridimensionales.

Para crear se usa el comando contour, y para combinar contorno con superficie se usa el comando surfc:

Gráficas Tridimensionales MATLAB

El esquema de color usado en las gráficas de superficie se puede controlar con la función colormap.

Por ejemplo, colormap(gray)

Otroscolor map son: autumn, spring, summer, winter, iet, bone, colorcube, cool, copper, flag, hot, hsy, pink, prism, white

Gráficas en pseudocolor

Las gráficas en pseudocolor son similares a las gráficas de contorno, excepto que, en lugar de líneas que resaltan un contorno específico, se genera un mapa bidimensional sombreado sobre una retícula. •pcolor(X,Y,Z)

La retícula se borra cuando se usa sombreado interpolado:

•pcolor(X,Y,Z)
•shading interp

pseudocolor matlab

Gráficas Tridimensionales MATLAB Códigos

A continuación puedes descargar los códigos de MATLAB utilizados en esta entrada:

[sociallocker id=”948″]

Graficas tridimensionales MATLAB

%Graficas Tridimensionales
clear, clc
x=linspace(0,10*pi,1000);
y=cos(x);
z=sin(x);

figure
plot3(x,y,z)
grid
xlabel('ángulo')
ylabel('cos(x)')
zlabel('sen(x)')
title('Resorte')

pause
figure
comet3(x,y,z),grid

Graficas de Superficie Matlab

%% Graficas de Superficie
%Crea la matriz
clc
clear all
close all

%% Función mesh
%Caso 1
z=[1:10;
    2:2:20;
    3:12]
mesh(z);
xlabel('eje x')
ylabel('eje y')
zlabel('eje z')
pause

%Caso 2
x=linspace(1,50,10);
y=linspace(500,1000,3);
z=[1:10;
    2:2:20;
    3:12]
figure
mesh(x,y,z);
pause
%% Función surf
figure
surf(x,y,z);
pause
%esquema sombreado 
shading interp
% shading flat
% shading faceted

Graficas de Contorno Matlab

clc
clear all
close all

x=[-2:0.2:2];
y=[-2:0.2:2];
[X,Y]=meshgrid(x,y);
Z=X.*exp(-X.^2-Y.^2);

subplot(2,2,1)
mesh(X,Y,Z)
title('Grafica Mesh'), xlabel('eje x'), ylabel('eje y')
zlabel('eje z');

subplot(2,2,2)
surf(X,Y,Z)
title('Grafica Superficie'), xlabel('eje x'), ylabel('eje y')
zlabel('eje z');

subplot(2,2,3)
contour(X,Y,Z)
title('Grafica de Contorno'), xlabel('eje x'), ylabel('eje y')
zlabel('eje z');

subplot(2,2,4)
surfc(X,Y,Z)
title('Combinación grafica de superficie y contorno'), xlabel('eje x'), ylabel('eje y')
zlabel('eje z');

%%  Pseudocolor
figure
subplot(1,2,1)
pcolor(X,Y,Z)
title('Pseudo Color con Reticula')

%Sin reticula
subplot(1,2,2)
pcolor(X,Y,Z)
title('Pseudo Color sin Reticula')
shading interp

[/sociallocker]

Eso es todo por la entrada del dia de hoy, espero les haya gustado y hayan aprendido algo nuevo. Si te ha servido el contenido de esta entrada, de los videos y los códigos de implementación y deseas apoyar mi trabajo invitandome a un café super barato, puedes hacerlo en el siguiente link:

👉 Invitar a Sergio a un Café ☕️

Que esten muy bien, nos vemos en la siguiente entrada.