Escolar Documentos
Profissional Documentos
Cultura Documentos
GRAFICO DE LINEA
Ahora vamos a graficar algunas curvas que deben estar parametrizadas, se hara con el comando de MatLab:
plot3, la sintaxis es como sigue.
plot 3( x, y, z,' especificaciones linea ',' propiedades ',' valores ')
- Las variables x, y, z representan los vectores con las coordenadas de los puntos.
- Los especificadores de lnea es opcional, definen el tipo y el color de lnea, y los marcadores.
- Las propiedades y valores se usan para especificar el grosor de lnea, el tamao y los colores del borde y el
relleno de los marcadores.
- Los especificadores de lnea, las propiedades y los marcadores son los mismos que para grficos en 2D.
Ejemplo01: Graficar x 2 y 2 2 z , la cual puede ser parametrizada mediante las ecuaciones:
x t sen 2t
y t cos 2t 0 t 6
z 0,5t
Solucin:
Curva3d01.m En MatLab
>> curva3d01
t=0:0.1:6*pi;
x=sqrt(t).*sin(2*t);
y=sqrt(t).*cos(2*t);
z=0.5*t; 10
plot3(x,y,z,'r','LineWidth',1)
8
grid on
xlabel('x'); 6
ylabel('y');
z
4
zlabel('z');
2
0
5 5
0 0
-5 -5
y x
Curva3d02.m En MatLab
clear,clf % borra curvas >> curva3d02
t = 0:0.1:20; % rango de t
r = exp(0.2*t); % parte de funcin
th=pi*t*0.8; % cambio de variable
z=t; % coordenada x 20
x=r.*sin(th); % coordenada y
y=r.*cos(th); % coordenada z 15
grid
xlabel('x');ylabel('y');zlabel('z'); 5
0
100
50 40
20
0
0 -20
-40
y -50 -60
x
09 grficos en 3D 1
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Ejemplo 03: La posicin de una partcula en el tiempo viene dada por:
x 2 4 cos t cos t
x 2 4 cos t sin t 0 t 20
zt 2
Curva3d03.m En MatLab
t=0:0.1:200; >> curva3d03
x=(2+cos(t)).*cos(t);
y=(2+cos(t)).*sin(t);
z=t.^2; x 10
4
plot3(x,y,z,'r','LineWidth',1) 4
grid on
3
xlabel('x');
ylabel('y'); 2
z
zlabel('z');
1
0
4
2 3
0 2
1
-2 0
y -4 -1
x
plot3(x,y,z,'r','LineWidth',1)
1
grid on
xlabel('x'); 0
z
ylabel('y');
-1
zlabel('z');
-2
1
0.5 3
2
0 1
-0.5 0
-1
y -1 -2
x
20
2
10
1
0
z
0
z
-10
-1
-20
5
-2 40
4 20
0
2 5 0
-20
0 -5
0 y -40
x
-2
y -4 -5
x
09 grficos en 3D 2
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Ejemplo 05: Graficaremos ahora la curva de Viviani, que es la interseccin de un cilindro y una esfera.
x a y 2 a 2
2
x 2 y 2 z 2 4a 2
x a 1 cos t
Una parametrizacin de esta curva es:
y a s e n t 2 t 2
z 2a sen t / 2
Curva3d05.m En MatLab
t=-2*pi:0.1:2*pi; >> curva3d05
x=1+cos(t);
y=sin(t);
z=2*sin(t/2);
plot3(x,y,z,'r','LineWidth',1) 2
grid on
1
xlabel('x');
ylabel('y'); 0
z
zlabel('z');
-1
-2
1
0.5 2
0 1.5
1
-0.5 0.5
y -1 0
x
,1) 0.5
grid on
xlabel('x'); 0
z
ylabel('y'); -0.5
zlabel('z');
-1
1
0.5 1
0 0.5
0
-0.5 -0.5
y -1 -1
x
09 grficos en 3D 3
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
1
x' sen 2t 2 t cos 2t
x t sen 2t 2 t
Derivando:
y t cos 2t 0 t 6 y'
1
cos2t 2 tsen 2t 0 t 6
z 0,5t 2 t
z ' 0,5
Para graficar un vector tangente en una curva tridimensional, se usa el comando: quiver3
Solucin:
x=sqrt(t).*sin(2*t);
y=sqrt(t).*cos(2*t); 10
z=0.5*t; 8
plot3(x,y,z,'r','LineWidth',1) 6
Eje z
hold on 4
xlabel('Eje x')
2
ylabel('Eje y')
0
5
5
zlabel('Eje z') 0
-5 0
title('Espiral con sus vectores Eje y -10 -5
Eje x
tangentes')
t2=0:6*pi; Espiral con sus vectores tangentes
x2=sqrt(t2).*sin(2*t2); 6
y2=sqrt(t2).*cos(2*t2); 4
z2=0.5*t2;
u2=sin(2*t2)./(2*sqrt(t2))+2*sq 2
rt(t2).*cos(2*t2);
Eje y
0
v2=cos(2*t2)./(2*sqrt(t2))-
2*sqrt(t2).*sin(2*t2); -2
w2=0.5*ones(1,length(z2));
quiver3(x2,y2,z2,u2,v2,w2,1)
-4
grid -6
-5 0 5
Eje x
Ahora configurando la presentacin de los vectores tangentes, para ello se agrega una lnea adicional con el
comando: set
Espiral con sus vectores tangentes
Espiral con sus vectores tangentes
10
10
8
8
6
6
Eje z
Eje z
4
4
2 2
0 0
5 5
5 0 5
0
-5 0 -5 0
09 grficos en 3D 4
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
09 grficos en 3D 5
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
ym
y2
y1
y0
x0 x1 x2 x3 xn1 xn
Con el comando en MatLab: meshgrid
X , Y meshgrid x, y
Programa: superficier3.m En MatLab
x=1:1:5; >> superficier3
y=-4:1:3; X= 1 2 3 4 5
1 2 3 4 5
[X,Y]=meshgrid(x,y)
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
Y = -4 -4 -4 -4 -4
-3 -3 -3 -3 -3
-2 -2 -2 -2 -2
-1 -1 -1 -1 -1
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
>>
09 grficos en 3D 6
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Programa: superficier3.m En MatLab
x=1:1:5; >> superficier3
y=-4:1:3; X=
1 2 3 4 5
[X,Y]=meshgrid(x,y)
1 2 3 4 5
z=X.*Y.^2./(X.^2+Y.^2) 1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
Y=
-4 -4 -4 -4 -4
-3 -3 -3 -3 -3
-2 -2 -2 -2 -2
-1 -1 -1 -1 -1
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
z=
0.9412 1.6000 1.9200 2.0000 1.9512
0.9000 1.3846 1.5000 1.4400 1.3235
0.8000 1.0000 0.9231 0.8000 0.6897
0.5000 0.4000 0.3000 0.2353 0.1923
0 0 0 0 0
0.5000 0.4000 0.3000 0.2353 0.1923
0.8000 1.0000 0.9231 0.8000 0.6897
0.9000 1.3846 1.5000 1.4400 1.3235
>>
Un grafico de malla, con el comando mesh. Lo que realiza aqu es levantar las lneas que estn en plano xy
mesh X , Y , Z
Grafico de superficie con el comando surf. Aqu se levanta el plano que est en xy.
surf X , Y , Z
Ah van los ejemplos
Programa: mallar3.m Programa: superficier3.m
x=1:1:5; x=1:1:5;
y=-4:1:3; y=-4:1:3;
[X,Y]=meshgrid(x,y); [X,Y]=meshgrid(x,y);
Z=X.*Y.^2./(X.^2+Y.^2); Z=X.*Y.^2./(X.^2+Y.^2);
mesh(X,Y,Z) surf(X,Y,Z)
Grafico asociado Grafico asociado
2
2
1.5
1.5
1
1
0.5
0.5
0
4
2 5 0
0 4 4
3
-2 2 2 5
-4 1 0 4
3
-2 2
-4 1
09 grficos en 3D 7
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
2 2
1.5 1.5
1 1
0.5
0.5
0
4 0
4
2 5
2 5
0 4
3 0 4
-2 2 3
-2 2
-4 1
-4 1
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
mesh(X,Y,Z)
Eje z
title('Altibajos') 2
2
4
0
0
-2 -2
Eje y -4 -4
Eje x
09 grficos en 3D 8
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Solucin: Graficando la superficie en formato superficie.
Programa: superficie02.m Programa: superficie02.m
x=-3:0.1:3; Altibajos
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
Z=E.*sin(X).*cos(0.5*Y); 0.2
surf(X,Y,Z)
Eje z
0
title('Altibajos') 60
60
80
40
40
20 20
Eje y 0 0
Eje x
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
meshz(X,Y,Z)
Eje z
title('Altibajos') 2
2
4
0
0
-2 -2
Eje y -4 -4
Eje x
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
meshc(X,Y,Z)
Eje z
title('Altibajos') 2
2
4
0
0
-2 -2
Eje y -4 -4
Eje x
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
surfc(X,Y,Z)
Eje z
title('Altibajos') 60
60
80
40
40
20 20
Eje y 0 0
Eje x
09 grficos en 3D 9
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Programa: superficie02.m Programa: superficie02.m
x=-3:0.1:3; Altibajos
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
Z=E.*sin(X).*cos(0.5*Y);
0.2
surfl(X,Y,Z)
Eje z
0
title('Altibajos') 60
60
80
40
40
20 20
Eje y 0 0
Eje x
Grafico de cascada
Programa: superficie02.m Programa: superficie02.m
x=-3:0.1:3; Altibajos
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
waterfall(X,Y,Z)
Eje z
0
title('Altibajos') 2
2
4
0
0
-2 -2
Eje y -4 -4
Eje x
Grafico de contorno 3D
Programa: superficie02.m Programa: superficie02.m
x=-3:0.1:3; Altibajos
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 0.4
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
0.2
Z=E.*sin(X).*cos(0.5*Y);
Contour3(X,Y,Z,15) % el 15,
Eje z
ylabel('Eje y') 2
2
3
0 1
zlabel('Eje z') -2 -2
-1
0
title('Altibajos') Eje y -3
Eje x
y=-3:0.1:3;
[X,Y]=meshgrid(x,y); 2
E=1.8.^(-1.5*sqrt(X.^2+Y.^2));
Z=E.*sin(X).*cos(0.5*Y); 1
Contour(X,Y,Z,15) % el 15,
Eje y
0
% indica el numero de
% niveles, opcional -1
xlabel('Eje x')
ylabel('Eje y') -2
zlabel('Eje z') -3
title('Altibajos') -3 -2 -1 0
Eje x
1 2 3
09 grficos en 3D 10
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
Ejemplo: Ahora se construir la esfera bidimensional de radio 5 2 , con seis paos, que resultan ser la imagen de las
funciones: z 50 x 2 y 2 , z 50 x 2 y 2 , y 50 z 2 x 2 , y 50 z 2 x 2 , x 50 y 2 z 2 ,
x 50 y 2 z 2 , en el dominio 5,55,5
Programa: cubresfera.m
% Cubriendo arriba y abajo
x=-5:0.3:5;
y=-5:0.3:5;
[X,Y]=meshgrid(x,y);
Z=sqrt(50-X.^2-Y.^2);
surf(X,Y,Z),hold on
Z=-sqrt(50-X.^2-Y.^2);
surf(X,Y,Z),hold on
% cubriendo derecha e izquierda
x=-5:0.3:5;
z=-5:0.3:5;
[X,Z]=meshgrid(x,z);
Y=sqrt(50-X.^2-Z.^2);
surf(X,Y,Z), hold on
Y=-sqrt(50-X.^2-Z.^2);
surf(X,Y,Z),hold on
% Cubriendo atrs y adelante.
y=-5:0.3:5;
z=-5:0.3:5;
[Y,Z]=meshgrid(y,z);
X=sqrt(50-Y.^2-Z.^2);
surf(X,Y,Z),hold on
X=-sqrt(50-Y.^2-Z.^2);
surf(X,Y,Z),hold off
xlabel('Eje x')
ylabel('Eje y')
zlabel('Eje z')
title('Cubriendo la Esfera')
Cubriendo la Esfera
10
5
Eje z
-5
-10
10
5 10
0 5
0
-5 -5
Eje y -10 -10
Eje x
09 grficos en 3D 11
CAPITULO 09: GRAFICOS EN 3D Lic. Amado Malca Villalobos
SUPERFICIES PARAMETRIZADAS
Graficando F X (u, v), Y (u, v), Z (u, v) 0,
% Un cilindro
clear
u=(0:0.1:3*pi)';
v=0:0.1:4;
X=sin(u)*ones(size(v));
Y=cos(u)*ones(size(v));
Z=ones(1,size(u))'*v;
surf(X,Y,Z)
GRAFICOS ESPECIALES
He aqu algunos opciones diferentes para una mejor comprensin de los comandos teclear:
help nombre_comando
Esfera
[ X Y Z]=sphere(30); % esfera unitaria
surf(X,Y,Z)
0.5
-0.5
-1
1
0.5 1
0 0.5
0
-0.5 -0.5
-1 -1
Cilindro
t=linspace(0,2*pi,30);
r=2+sin(t);
[ X Y Z]=cylinder(r);
surf(X,Y,Z)
axis square
0.8
0.6
0.4
0.2
0
4
2 4
0 2
0
-2
-2
-4 -4
09 grficos en 3D 12