You are on page 1of 23

JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.

14

CAPITULO III
GRFICOS BI-DIMENSIONALES (2-D)

MATLAB utiliza un tipo especial de ventanas para realizar las operaciones


grficas. Ciertos comandos abren una ventana nueva y otros dibujan sobre la ventana
activa, bien sustituyendo lo que hubiera en ella, o bien aadiendo nuevos elementos
grficos a un dibujo anterior. Todo esto se ver con ms detalle en las siguientes
secciones.

3.1 FUNCIONES GRFICAS 2-D ELEMENTALES


MATLAB dispone de 4 funciones bsicas para crear grficos 2-D. Estas
funciones se diferencian principalmente por el tipo de escala que utilizan en los ejes de
abscisas y de ordenadas. Estas 4 funciones son las siguientes:

3.1.1 FUNCIN plot()


Crea un grfico a partir de vectores y/o columnas de matrices, con escalas
lineales sobre los ejes

plot(X) Representa los puntos (k,Xk ). Si X es una matriz, hace lo mismo para cada
columna de la matriz. Si X es un vector complejo, representa la parte Real de X frente
a Imaginaria de X.

plot(X,Y) Representa el conjunto de puntos (X,Y). Si X o Y son matrices, representa


por filas o columnas los datos de X frente a los datos de Y, dependiendo si el otro vector
fila es columna. Para valores complejos de X e Y, se ignoran las partes imaginarias
EJEMPLO:
>> x=[1 5 3 7]; >> x=1:1:1000;
>> plot(x) >> y=sqrt(x);
>> plot(x,y)

3.1.2 LA FUNCION loglog()


Crea un grfico a partir de vectores con escala logartmica en ambos ejes

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 24
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

3.1.3 LA FUNCION semilogx()


Dibuja una funcin con escala lineal en el eje de ordenadas (eje Y) y logartmica
en el eje de abscisas (Eje X)

EJEMPLO: >> x=1:1:1000;


>> x=1:1:1000; >> y=sqrt(x);
>> loglog(x,sqrt(x)) >> semilogx(x,y)

3.1.4 LA FUNCION semilogy()


Dibuja una funcin con escala
lineal en el eje de abscisas y logartmica
en el eje de ordenadas.

EJEMPLO: >> x=1:1:1000;


>> y=sqrt(x);
>> semilogy(x,y)

3.1.5 FUNCION plotyy()


Dibuja dos funciones
con dos escalas diferentes
para las ordenadas, una a la
derecha y otra a la izquierda
de la figura

EJEMPLO:
>> x=0:pi/200:2*pi;
>> y=sin(x);
>> y1=sqrt(x);
>> plotyy(x,y,x,y1)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 25
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

plot(X,Y,S) Grafica X vs Y con las opciones definidas en S. Usualmente, S se


compone de 3 caracteres entre tildas, el primero de los cuales fija el color de lnea del
grfico, el segundo fija la etiqueta o marca en el nodo y el ltimo fija el estilo de lnea
a usar en el grfico es decir color_de_linea marca estilo_de_linea . Los colores, las
marcas y los caracteres son respectivamente, los siguientes:

smbolo Color smbolo marcadores (markes)


y Yellow . Puntos
m Magenta o Crculos
c Cyan x marcas con x
r Red + marcas en +
g Green * marcas en *
b Blue s marcas cuadradas (square)
w White d marcas en diamante (diamond)
k Black ^ triangulo apuntando arriba
v triangulo apuntando abajo
smbolo estilo de lnea > Triangulo apuntando a la der.
- lneas continuas < triangulo apuntando a la izq.
: lneas a puntos p estrella de 5 puntas
-. lneas a barra-punto h estrella de 6 puntas
-- lneas a trazos

EJEMPLO:
>> x=0:pi/40:2*pi;
>> y=cos(x);
>> plot(x,y,'+') % dibuja la lnea con el marcador (+)
>>plot(x,y, 'b+') % dibuja la lnea de color azul con el marcador (+)
>>plot(x,y, 'g*:')' %dibuja la lnea de color verde con marcador (* ) y estilo de lnea (:)

En lo sucesivo se har referencia casi exclusiva a la primera de estas funciones


(plot). Las dems se pueden utilizar de un modo similar. Existen adems otras

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 26
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

funciones orientadas a aadir ttulos al grfico, a cada uno de los ejes, a dibujar una
cuadrcula auxiliar, a introducir texto, etc. Estas funciones son las siguientes:

title('ttulo') aade un ttulo al dibujo


xlabel('tal') aade una etiqueta al eje de abscisas. Con xlabel off desaparece
ylabel('cual') aade una etiqueta al eje de ordenadas. Con ylabel off desaparece
text(x,y,'texto') introduce 'texto' en el lugar especificado por las coordenadas x e y.
Si x e y son vectores, el texto se repite por cada par de elementos. Si texto es tambin
un vector de cadenas de texto de la misma dimensin, cada elemento se escribe en las
coordenadas correspondientes.
gtext('texto') introduce texto con ayuda del mouse: el cursor cambia de forma y
se espera un clic para introducir el texto en esa posicin
legend() define rtulos para las distintas lneas o ejes utilizados en la figura.
grid activa la inclusin de una cuadrcula en el dibujo. Con grid off
desaparece la cuadrcula

3.1.6 LA FUNCION legend(cad1,cad2,cad3,.)


Pone una leyenda en el diagrama actual usando las secuencias especificadas
como etiquetas

CODIGO EN EDITOR EJEMPLO DE FUNCIN LEGEND


x=0:pi/40:2*pi; >> x = 0:.2:12;
y=cos(x); >> plot(x,besselj(1,x),x,besselj(2,x),x,besselj(3,x));
plot(x,y,'+') legend('primero','Secundo','tercero');
title('la funcion coseno')
xlabel('eje x')
ylabel('eje y')
text(x,y, 'coseno ')
text(3.5,0.2, 'jose ')
grid

La funcin plot() permite tambin dibujar mltiples curvas introduciendo varias


parejas de vectores como argumentos. En este caso, cada uno de los segundos vectores
______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 27
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

se dibuja en ordenadas como funcin de los valores del primer vector de la pareja, que
se representan en abscisas. Si el usuario no decide otra cosa, para las sucesivas lneas se
utilizan colores que son permutaciones cclicas del azul, verde, rojo, cyan, magenta,
amarillo y negro. Obsrvese bien cmo se dibujan el seno y el coseno en el siguiente:

EJEMPLOS:
>> x=0:pi/25:6*pi;
>> y=sin(x); z=cos(x);
>> plot(x, y, x, z, '--')

3.1.7 ANADIR LNEAS A UN GRAFICO YA EXISTENTE


Existe la posibilidad de aadir lneas a un grfico ya existente, sin destruirlo o
sin abrir una nueva ventana. Se utilizan para ello los comandos hold on y hold off. El
primero de ellos hace que los grficos sucesivos respeten los que ya se han dibujado en
la figura (es posible que haya que modificar la escala de los ejes); el comando hold off
deshace el efecto de hold on.

EJEMPLO: CODIGO EN EDITOR


x=0:pi/40:2*pi; y=cos(x);
plot(x,y)
x1=0:pi/40:2*pi;
y1=sin(x1);
x2=0.3:pi/40:2*pi;
y2=log(x2);
hold on
plot(x1,y1,'--')
plot(x2,y2,'-.')
hold off

3.1.8 EL COMANDO subplot()


Una ventana de grfica se puede dividir en m particiones horizontales y n
particiones verticales, con objeto de representar mltiples grficos en ella. Cada una de
estas subventanas tiene sus propios ejes y sus propiedades propias. La forma general de
este comando es:
subplot(m,n,i)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 28
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

Donde m y n son el nmero de subdivisiones en filas y columnas, e i es la subdivisin


que se convierte en activa. Las subdivisiones se numeran consecutivamente empezando
por la primera fila, siguiendo por la segunda fila, etc.

>> subplot(2,2,3) >> subplot(2,2,2) >> subplot(2,2,1) >> subplot(2,2,4)

EJEMPLO: La siguiente secuencia de comandos genera cuatro grficos en la misma


ventana:
CODIGO EN EDITOR
x=0:pi/40:2*pi;
y=sin(x);
z=cos(x);
w=exp(-x*0.1).*y;
v=y.*z;
subplot(2,2,1), plot(x,y)
subplot(2,2,2), plot(x,z)
subplot(2,2,3), plot(x,w)
subplot(2,2,4), plot(x,v)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 29
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

Se puede practicar con este ejemplo aadiendo ttulos a cada subplot, as como
rtulos para los ejes. Se puede intentar tambin cambiar los tipos de lnea. Para volver a
la opcin por defecto basta teclear el comando:
>> subplot(1,1,1)

3.1.9 CONTROL DE EJES


El comando bsico es el comando axis. Por defecto, MATLAB ajusta la escala
de cada uno de los ejes de modo que vare entre el mnimo y el mximo valor de los
vectores a representar. Este es el llamado modo "auto", o modo automtico. Para definir
de modo explcito los valores mximo y mnimo segn cada eje, se utiliza el comando:
axis([xmin, xmax, ymin, ymax])
axis('auto') devuelve el escalado de los ejes al valor por defecto.
v=axis devuelve un vector v con los valores [xmin, xmax, ymin, ymax]
axis('ij') utiliza ejes de pantalla, con el origen en la esquina superior
izquierda. y el eje j en direccin vertical descendente
axis('xy') utiliza ejes cartesianos normales, con el origen en la esquina
Inferior izquierda y el eje y vertical ascendente
axis('image') La ventana tendr las proporciones de la imagen que se desea
representar en ella (por ejemplo la de una imagen bitmap que se
desee importar)
axis('equal') el escalado es igual en ambos ejes
axis('square') la ventana ser cuadrada
axis('normal') elimina las restricciones introducidas por 'equal' y 'square'
axis('off') elimina las etiquetas, los nmeros y los ejes
axis('on') restituye las etiquetas, los nmeros y los ejes

EJEMPLO
> x=0:pi/40:2*pi; y=sin(x); plot(x,y)
>> axis([-1 7, -2, 2])
>>v=axis
>>axis('ij')
>>axis('xy')
>> axis('image')
>>axis('equal')
>>axis('square')
>>axis('normal')
>>axis('off')
>> axis('on')

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 30
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

3.1.10 CONTROL DE VENTANAS GRAFICAS: FUNCION figure()

Si se llama a la funcin figure sin argumentos, se crea una nueva ventana grfica
con el nmero consecutivo que le corresponda. El valor de retorno es dicho nmero.
Por otra parte, el comando figure(n) hace que la ventana n pase a ser la ventana
o figura activa. Si dicha ventana no existe, se crea una nueva ventana con el nmero
consecutivo que le corresponda La funcin close cierra la figura activa, mientras que
close(n) cierra la ventana o figura nmero n.
El comando clf elimina el contenido de la figura activa, es decir, la deja abierta
pero vaca. La funcin gcf devuelve el nmero de la figura activa en ese momento.

El comando figure(gcf) (get current figure) permite hacer visible la ventana de


grficos desde la ventana de comandos.
EJEMPLO
>> x=-4*pi:pi/20:4*pi;
>> plot(x,sin(x),'r',x,cos(x),'g')
>> title('Funcin seno(x) -en rojo- y funcin coseno(x) -en verde-')
>> xlabel('ngulo en radianes'), figure(gcf)
>> ylabel('valor de la funcin trigonomtrica'), figure(gcf)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 31
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

3.1.11 LA FUNCION fplot()


La funcin fplot admite como argumento de entrada un nombre de funcin o un
nombre de fichero *.m. La funcin puede ser escalar (un nico resultado por cada valor
de x) o vectorial. La forma general de esta funcin es la siguiente:
fplot('funcion', limites, 'cadena')
Donde:
'funcion' representa el nombre de la funcin o del fichero *.m entre apstrofos
(Pasado como cadena de caracteres).
limites es un vector de 2 4 elementos, cuyos valores son [xmin,xmax] o
[xmin,xmax,ymin,ymax],
'cadena' tiene el mismo significado que en plot y permite controlar el color, los
markers y el tipo de lnea.:

>> fplot('200*sin(x)./x ', [-20 20], 'b')

3.2 FUNCION plot(x,y,S) avanzado.


Tenemos los siguientes atributos:

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 32
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

Color: color de lnea.


LineWith: Ancho de la lnea.
MarkerEdgeColor: color del borde de las marcas.
MarkerFaceColor: color de la marca
MarkerSize: tamao de la marca.
Para especificar un color, se puede utilizar un vector de tres componentes con
valores entre 0 y 1 que especifica un color segn el estndar RGB (Red, Green, Blue.
Crea un color aadiendo los partes de rojo, verde y azul segn los valores de un vector
de tres componentes).

EJEMPLO:

>> x=linspace(-2*pi,2*pi,100); >> x=linspace(-2*pi,2*pi,100);


>> y=sin(x); >> y=sin(x);
>> plot(x,y,'color',[0.9 0.1 0.3]) >> plot(x,y,'color',[0.1 0.9 0.3])

>> x=linspace(-2*pi,2*pi,100);y=sin(x); >> x=linspace(-2*pi,2*pi,100); y=sin(x);


>> plot(x,y,'linewidth',2) >> plot(x,y,'linewidth',4)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 33
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

>> x=linspace(-2*pi,2*pi,100); y=sin(x); > >x=linspace(-2*pi,2*pi,100); y=sin(x);


>> plot(x,y,'-d','markeredgecolor','r') >> plot(x,y,'-d','markerfacecolor',[0.9 0.5 0.3])

>> x=linspace(-2*pi,2*pi,100); >> x=linspace(-2*pi,2*pi,100); y=sin(x);


>> y=sin(x); >> plot(x,y,'-d','markersize',13,'markerfacecolor',[0.9 0.5 0.3])
>> plot(x,y,'-d','markersize',10)

>> x=linspace(-2*pi,2*pi,100); y=sin(x); plot(x,y,'-d','markersize',10)


>> xlabel('Eje OX','fontname','Comic Sans Ms')
>> ylabel('Eje OY','fontname','arial')
>> title('la funcion f(x)=sen(x)','fontname','impact')

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 34
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

>> x=linspace(-2*pi,2*pi,100); y=sin(x); plot(x,y,'-d','markersize',10)


>> xlabel('Eje OX','fontname','Comic Sans Ms','fontsize',14)
>> ylabel('Eje OY','fontname','arial','fontsize',18)
>> title('la funcion f(x)=sen(x)','fontname','impact','fontsize',20)

>> x=linspace(-2*pi,2*pi,100); plot(x,sin(x)); >> x=linspace(-2*pi,2*pi,100); plot(x,sin(x));


>> set(gca,'fontsize',16) >> setgca,'fontsize',20)

>> x=linspace(-2*pi,2*pi,100); y=sin(x); >> x=linspace(-2*pi,2*pi,100); y=sin(x);


>> plot(x,y) >> plot(x,y)
>> set(gca,'xtick',[-6 -4 -2 0]) >> set(gca,'xtick',[0 2 4 6])

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 35
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

3.3 GRFICOS EN COORDENADAS POLARES


Matlab habilita el comando especfico polar, que representa funciones en
coordenadas polares.
Su sintaxis es la siguiente:
polar( ,r) Representa la curva en coordenadas polares r=r( ).
polar ( ,r,S) Representa la curva en coordenadas polares con el estilo de lnea dado
por S.
EJEMPLO

>>%El CARDIODE >>%ROSAS de 4 petalos


>>%polar(teta,r) >>polar(a,4*sin(2*a))
>>a=0:pi/40:2*pi;
>>polar(a,2*(1+cos(a)));

3.3.1 AREAS
>> Y = [1, 5, 3;3, 2, 7;1, 5, 3;2, 6, 1];
>> area(Y)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 36
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

GRFICOS TRI-DIMENSIONALES (3-D)

Quizs sea sta una de las caractersticas de MATLAB que ms admiracin


despierta entre los usuarios no tcnicos.
Un grfico de malla tridimensional viene definido por una funcin z=f(x,y), de
tal forma que los puntos de la superficie se representan sobre una rejilla, resultado de
levantar los valores de z dados por f(x,y) sobre la correspondientes puntos del plano
(x,y).

4.1 GRAFICOS DE LINEA EN 3D


1) plot3(x,y,z) ._Que dibuja una lnea que une los puntos (x(1), y(1), z(1)), (x(2), y(2),
z(2)), etc. y la proyecta sobre un plano para poderla representar en la pantalla.

EJEMPLO
>> x=0:0.5:4, y=1+x.^2, z=log(1+x)
x=
0 0.5000 1.0000 1.5000 2.0000 2.5000 3.0000 3.5000 4.0000

y=
1.0000 1.2500 2.0000 3.2500 5.0000 7.2500 10.0000 13.2500 17.0000

z=
0 0.4055 0.6931 0.9163 1.0986 1.2528 1.3863 1.5041 1.6094
>> plot3(x,y,z)
>> grid

Al igual que en el caso plano, se puede incluir una cadena de 1, 2 3 caracteres


para determinar el color, los marcas, y el tipo de lnea:
EJEMPLO
>> plot3(x,y,z,'+r')
>> grid

Un de superficie cuyo grafo tiene la forma de red. Para representar un grfico de


malla, se utiliza el comando mesh y sus variantes, cuya sintaxis la siguiente.

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 37
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.2 GENERACIN DE MALLADOS EN EL PLANO x-y


4.2.1 [X,Y]=meshgrid(x,y)
Crea una matriz X cuyas filas son copias del vector x, y una matriz Y cuyas
columnas son copias del vector y.
Una vez dada esta orden, la grfica de malla se genera mediante: mesh(X,Y,Z),
que veremos ms adelante.

>>x =[1 2 3];


>>y =[4 5 6 7];

>> [X,Y]=meshgrid(x,y)

X= Y=
1 2 3 4 4 4
1 2 3 5 5 5
1 2 3 6 6 6
1 2 3 7 7 7

OBSERVACIN.
El vector x=[1 2 3] representa el Eje X y el vector y=[4 5 6 7] representa el Eje Y.

(1,7) (2,7) (3,7)

(1,6) (2,6) (3,6)

(1,5) (2,5) (3,5)

(1,4) (2,4) (3,4)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 38
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.3 GRFICOS DE SUPERFICIE EN 3-D


4.3.1 mesh(X,Y,Z,C)._Representa el grfico de malla de la funcin z=f(x,y),
dibujando las lneas de la rejilla que componen la malla con los colores especificados
en C. El argumento C se puedo ignorar.

EJEMPLO:

4.3.2 COORDENADAS RECTANGULAR,


Graficar el paraboloide z x 2 y 2 en el dominio rectangular [ -4,4 ]x[ -6,6 ]
En matlab tenemos

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> mesh(X,Y,Z)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 39
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.3.3 meshz(X,Y,Z,C)._Representa el grfico de malla de la funcin z= f(x,y) con


una especie de cortina o teln en la parte inferior.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> meshz(X,Y,Z)

4.3.4 meshc(X,Y,Z,C)._Representa el grfico de malla de la funcin z=f(x,y) con


el grafico de contorno correspondiente (curvas de nivel proyectadas sobre el plano XY).

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> meshc(X,Y,Z)

4.3.5 surf(X,Y,Z)._Representa el grafico de superficie de la funcin z=f(x,y),


realizando el dibujo con los colores especificados en C. El argumento en C se puede
ignorar.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> surf(X,Y,Z)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 40
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.3.6 surfl(X,Y,Z,C)._Representa el grafico de superficie de la funcin z=f(x,y),


realizando el dibujo sombreado.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> surfl(X,Y,Z)

4.4 CURVAS DE NIVEL


4.4.1 contour(X,Y,Z)._Dibuja el grfico de contorno (curvas de nivel) para la
matriz (X,Y,Z),. El nmero de lneas de contorno a utilizar es automtico.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> contour(X,Y,Z)

4.4.2 contuor(X,Y,Z,n)._Dibuja el grfico de contorno (curvas de nivel) para las


coordenadas (X,Y,Z). Usando n lneas de contorno.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> contour(X,Y,Z,4)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 41
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.4.3 contuor3(x,y,z)._Dibuja los grficos de contorno en 3 dimensiones.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> contour3(X,Y,Z)

4.4.4 contuor3(X,Y,Z,n)._Dibuja los grficos de contorno en 3 dimensiones, con


n curvas

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> contour3(X,Y,Z,20)

4.4.5 pcolo(X,Y,Z)._Dibuja un grfico de contorno (curvas de nivel) para la


matriz (X,Y,Z) utilizando una representacin basada en densidades de colores. Suele
denominarse grfico de densidad.

>> x=-4:0.25:4; y=-6:0.25:6;


>> [X,Y]=meshgrid(x,y);
>> Z=X.^2+Y.^2;
>> pcolor(X,Y,Z)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 42
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

4.5 COORDENADAS CILNDRICAS, ESFRICAS Y


PARAMTRICAS
Graficar el cono z x 2 y 2 en el dominio rectangular [ -6 , 6 ]x[ -6 ,6 ] es una
situacin donde no estn claras las propiedades geomtricas del cono, por esa razn es
mejor graficar en el dominio circular, con radio variando desde 0 hasta 6, y all levantar
el cono que queremos. Para ello necesitamos hacer el cambio de coordenadas, pasar la
coordenada cartesiana a la coordenada cilndrica.

4.5.1 COORDENADAS CILNDRICAS,


x r cos(u )

y rsen(u ) u [ , ], r [r1, r 2]
zz

EJEMPLO:
Graficar el cono z x 2 y 2 en el dominio circular de radio 6 centrado en el origen
de coordenadas.

[r,u]=meshgrid(0:0.25:6,0:pi/30:2*pi);
x=r.*cos(u);
y=r.*sin(u);
z=sqrt(x.^2+y.^2);
surf(x,y,z)

4.5.2 COORDENADAS ESFRICAS

x r s en(v) cos(u )

y rsen(v) sen(u ) u [1 , 2 ], v [1 , 2 ]
z r cos(v)

EJEMPLO:

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 43
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

Graficar la esfera z 2 x 2 y 2 r 2 , de radio r=6 en coordenadas esfricas,


parametrizando en coordenadas esfricas tenemos

x 6s en(v) cos(u )

y 6 sen(v) sen(u ) u [0, 2 ], v [0, ]


z 6 cos(v)

[u,v]=meshgrid(0:pi/20:2*pi,0:pi/20:pi);
x=6*sin(v).*cos(u);
y=6*sin(v).*sin(u);
z=6*cos(v);
surf(x,y,z)
axis('image')

4.5.3 COORDENADAS PARAMTRICAS EN CURVAS 3-D

x x(t )

y y (t ) t [t1 , t2 ],
z z (t )

EJEMPLO:
Graficar la siguiente curva paramtrica
x sen(t )

y cos(t ) t [0, 2 ],
z cos(t )

t=0:pi/20:2*pi;
x=sin(t);
y=cos(t);
z=cos(t);
plot3(x,y,z)
grid

4.6 CILINDRO, ESFERAS Y ELIPSOIDES


CILINDRO:
[x,y,z]=cylinder Retorna las coordenadas x, y, x de un cilindro de radio 1
[x,y,z]=cylinder(R,N) Retorna las coordenadas x,y,z necesarias para la
generacin de un cilindro con altura 1, Radio R y nmero de puntos en cada
circunferencia de N (20 por defecto)
EJEMPLO:
______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 44
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

>>[x,y,z]=cylinder; >>[x,y,z]=cylinder(2,10);
>>mesh(x,y,z) >>mesh(x,y,z)

Sphere Genera una esfera que consiste de 20-por-20 las caras


[x,y,z]=sphere(N) Retorna las coordenadas x, y, z necesarias para la generacin
de una esfera con radio 1. El nmero de ternas es (N+1)x(N+1) ( N=20 por defecto)

EJEMPLO:
>>sphere, >> [x,y,z]=sphere(30);
>> axis equal, >>mesh(x,y,z)

[x,y,z]= ellipsoide(xc,yc,zc,xr,yr,zr,N) Retorna las coordenadas x,


y, z necesarias para la generacin de una elipsoide centradad en (xc,yc,zc) con
semiejes xr,yr,zr. El nmero de ternas es (N+1)x(N+1), ( N=20 por efecto)
EJEMPLO:

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 45
JOSE JEREMIAS CABALLERO CANTU MatLab R2012a 7.14

>>[x,y,z]=ellipsoid(0,0,0,5,10,20);
>>mesh(x,y,z)

______________________________________________________________________
Facultad de Ciencias Matemticas -CEUPSMAT jjcc941@hotmail.com
Pg. 46

You might also like