Está en la página 1de 71

UNIVERSIDADNACIONAL DEINGENIERIA

FACULTAD DEINGENIERIA ELECTRICA YELECTRONICA

GRÁFICOS EN MATLAB
KRAQ
GRÁFICOS EN MATLAB
MATLAB provee una amplia variedad de técnicas para mostrar datos gráficamente.
Las herramientas interactivas permiten manipular gráficos para alcanzar resultados
para alcanzar resultados que revelen más información acerca de los datos. También
puede imprimir los gráficos para representaciones o exportaciones a formatos
estándar de gráficos para su representación en Navegadores Web (*.jpeg *.pdf ,etc)
u otros medios

El entorno de MATLAB ofrece una variedad de funciones de trazado de datos y


un conjunto de herramientas gráficas para crear y modificar las pantallas
gráficas
Anatomía de las gráficas en MATLAB
>> x=0:0.2:20;
 El entorno MATLAB ofrece una variedad de
>> y=sin(x)./sqrt(x+1);
funciones para gráfica de datos además de
>> y(2,:)=sin(x/2)./sqrt(x+1);
herramientas de GUI para crear y modificar la
>> y(3,:)=sin(x/3)./sqrt(x+1);
visualización de las gráficas.
>> plot(x,y)
 Una figura es una ventana MATLAB que contiene
la visualización de una gráfica (usualmente trazado
de datos) y componentes UI.
 Un trazado (plot) es cualquier visualización
gráfica, a partir de un conjunto de datos que se
pueda crear dentro de una ventana figura.
 Una gráfica (graph) es el conjunto de uno o más
trazas en ejes bidimensionales o tridimensionales.

Ventana figura (figure)


Eje (axes)

Traza de curvas (plots)


Anatomía de las gráficas en MATLAB
 Preparar los datos a graficar.
oLos datos deben estar en el workspace.
 Especificar la ventana figura en la que se desea hacer la gráfica.
o Uso del comando figure.
 Hace la subdivisión de la gráfica en sub-gráficas (ejes) si es necesario.
Especificar la sub-gráfica (eje) en la que se desea hacer la gráfica.
o Usando el comando subplot.
 Efectuar el trazado de la gráfica.
o Usando las funciones trazadoras de gráfica bidimensional/tridimensional.
 Agregar detalles a la gráfica.
o Leyenda, enrejado, título, etiquetas, etc.
 Estableciendo valores a las propiedades de los objetos que componen la gráfica.
o Creando manipuladores a los objetos de la gráfica.
o Obteniendo/establecimiento propiedades mediante los comandos get y set.
GRÁFICOS EN MATLAB
ANATOMÍA DE MATLAB
Las funciones y herramientas de graficación de MATLAB dirigen sus salidas a
ventanas especiales denominadas ventana figura (Figure)
Ventana Figura de
MATLAB Figura acoplable
al escritorio
Barra de
herramientas

Trazado de líneas que


representan datos

Ejes con los que se


trazan los datos
GRÁFICOS EN MATLAB
La barra de herramientas de la ventana figura permite tener acceso a las
características más comúnmente usadas en la edición de gráficos

Enlace de Insertar barra Insertar leyenda


Pincel de datos datos de colores

Habilitación del modo Cursor de


edición de trazado Pan datos
Rotación en Ocultar u mostrar las
3D herramientas de trazado
Acercamiento o
alejamiento
GRÁFICOS EN MATLAB
GRÁFICOS BIDIMENSIONALES
Gráficos Gráficos Gráficos Gráficas de Gráficas Gráficos de
de línea de barras de área dirección radiales dispersión
GRÁFICOS EN MATLAB
Funciones básicas para el trazado de una gráfica

FUNCION DESCRIPCIÓN

plot Graficadatos2Dconescalaslinealesparasusejes

Plot3 Graficadatos3Dconescalaslinealessusejes

loglog Graficaconescalalogaritmicaparaambosejes

semilogx Gráficaconunaescalalogaritmicaparaelejexyescalalinealparaelejey

semilogy Gráficaconunaescalalogaritmicaparaelejeyyescalalinealparaelejex

plotyy Graficacon2ejesy(izquierdayderecha)

hold Mantienevariosgráficosalavez

grid Dibujaunarejilla
GRÁFICOS EN MATLAB
GRÁFICOS BIDIMENSIONALES
 Se deben seguir los siguientes pasos :
o Preparar los datos por graficar (coordenadas de los puntos).
x=0:pi/4:2*pi;
y=sin(x);

o Con estos vectores se efectúa la gráfica haciendo uso de las funciones


MATLAB para el trazado bidimensional

plot(x,y);
GRÁFICOS EN MATLAB
Plot : Grafica líneas en 2D
plot(Y)
plot(X1,Y1,...,Xn,Yn)
Plot(X1,Y1,LineSpec,…,Xn,Yn,LineSpec)|
plot(X1,Y1,LineSpec,'PropertyName',PropertyValue)
x = -pi:.1:pi;
y = sin(x); 1

plot(x,y) 0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
-4 -3 -2 -1 0 1 2 3 4
GRÁFICOS EN MATLAB
GRÁFICOS EN MATLAB
Especificación de estilos de línea y colores
Es posible especificar el color, la línea de estilos, y los marcadores (por
ejemplo, los signos más o círculos) al trazar sus datos utilizando el comando plot:
plot(x,y,'color_style_marker')

color_style_marker es
una cadena que contiene de uno
cuatro
caracteres (entrecomillas) construi
do a partir de un color, un estilo
de línea, y un tipo de marcador.
GRÁFICOS EN MATLAB
Trazado de líneas y marcadores
Si se especifica un tipo de marcador, pero no un estilo de línea, sólo se dibuja el marcador
plot(x,y,'ks')
Traza cuadrados de color negro en cada punto de los datos, pero no conecta el
marcador con una línea
1

>> x1 = 0:pi/100:2*pi;
0.8 >> plot(x1,sin(x1),'ks')
0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
GRÁFICOS EN MATLAB
Trazado de líneas y marcadores
plot(x,y,'r:+')
Traza una línea roja de puntos y ubica marcadores de signo + en cada punto de los
1

>> x1 = 0:pi/100:2*pi;
0.8
>> plot(x1,sin(x1),'r:+')
0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
GRÁFICOS EN MATLAB
Ubicación de marcadores en todos los puntos de los datos x
Es posible que desee utilizar menos puntos de datos para trazar los marcadores de
las que usa para trazar las líneas. Este ejemplo traza el dato dos veces usando un
número diferente de puntos para la línea punteada y los marcadores trazados
1

0.8
x1 = 0:pi/100:2*pi;
0.6 x2 = 0:pi/10:2*pi;
0.4 plot(x1,sin(x1),'r:',x2,sin(x2),'r+')
0.2

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
GRÁFICOS EN MATLAB
GRÁFICO IMAGINARIO Y DATO COMPLEJO
Cuando los argumentos para plotear son complejos. Z es un vetor o matriz complejo ,
y es equivalente a:
plot(real(Z),imag(Z))
1

0.8

0.6

0.4
t = 0:pi/10:2*pi;
plot(exp(i*t),'-o‘)
0.2

-0.2

-0.4

-0.6

-0.8

-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
GRÁFICOS EN MATLAB
Trazado de líneas y marcadores

clear all; clc;


x = -pi:pi/10:pi; 3
y = tan(sin(x)) - sin(tan(x));
plot(x,y,'--rs','LineWidth',2,... 2
'MarkerEdgeColor','k',...
'MarkerFaceColor','g',...
1
'MarkerSize',10)

-1

-2

-3
-4 -3 -2 -1 0 1 2 3 4
GRÁFICOS EN MATLAB
Creación de un trazo Ahora agregamos el título y etiquetas en x e y
plot(t,y)
T=3;
f=1/T; xlabel('x=0:2\pi');
t=0:T/1000:2*pi; ylabel('Amplitud');
y=sin(2*pi*f*t); title('Trazado de la función seno','fontsize',12)

1
Trazado de la función seno El carácter \ pi crear el símbolo π.
0.8

0.6

0.4

0.2
Amplitud

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7
x=0:2
GRÁFICOS EN MATLAB
Creación del texto en puntos dados usando el comando text

xlabel('0 \leq \itt \leq 2\pi'); El comando grid on


text(1,sin(2*pi*f*1),'\leftarrow Primer punto'); activa el grillado
text(2,sin(2*pi*f*2),'\leftarrow Segundo punto');
text(4.5,sin(2*pi*f*4.5),'\leftarrow \it sen(\omegat)');
grid on Trazado de la función seno
1
 Primer punto
0.8

0.6

0.4

0.2
Amplitud

0  sen(t)

-0.2

-0.4

-0.6

-0.8
 Segundo punto
-1
0 1 2 3 4 5 6 7
0  t  2
GRÁFICOS EN MATLAB
Otros atributos del comando text
x=0:pi/10:2*pi x=0:pi/10:2*pi
plot(x,sin(x)) plot(x,sin(x))
text(3*pi/4,sin(3*pi/4),... text(3*pi/4,sin(3*pi/4),...
'\leftarrowsin(t) = .707',... '\leftarrowsin(t) = .707',...
'EdgeColor','red',... 'EdgeColor','red',...
'LineWidth',5,... 'LineWidth',5,...
'LineStyle','-'); 'LineStyle',':');

1 1

0.8 0.8
sin(t) = .707 sin(t) = .707
0.6 0.6

0.4 0.4

0.2 0.2

0 0
GRÁFICOS EN MATLAB
Se puede especificar modificadores de flujo que controlan el tipo de fuente y color.
Los primeros cuatro modificadores son mutuamente excluyentes. Sin embargo, puede
utilizar FontName \ en combinación con uno de los otros modificadores:

Tabla de secuencia de caracter TEX

\bf — Fuente Bold


\it — Fuente Italic
\sl — Fuente oblicua
\rm — Fuente normal
\fontname{fontname} — Especifica el nombre del tipo de fuente a usar
\fontsize{fontsize} — Especifica el tamaño de la fuente a usar.
\color(colorSpec) — Especifica el color de los caracteres posteriores. Usa los cocho colres
básicos (red, green, yellow, magenta, blue, black, white) y además los
colores de simulink (gray, darkGreen, orange, and lightBlue).
\color[rgb]{r g b} — Especifica un triplete RGB con valores entre 0 y 1 como una celda array
GRÁFICOS EN MATLAB
plot handles
Cada comando cuya salida se expresa en una figura puede también devolver un
argumento llamado plot handle .
X=linspace(-pi,pi,10)
h=plot(x,cos(2*x))
Entonces h es una curva y también una variable que contiene toda la información
correspondiente a la misma y dentro del léxico de matlab suele recibir el nombre
de handle. Con la función get podemos obtener toda la información del handle y
mediante la función set podemos cambiar sus propiedades según nuestras
necesidades. No sólo las curvas devuelven un handle, todos los objetos gráficos,
incluso los ejes o la propia figura genera un handle.

get(h) : Función que obtiene las características de un handle gráfico, ya sea una
curva, los ejes de la figura o la misma figura

set(h,attr,val) : Función que modifica las características de un handle gráfico,


ya sea una curva, ejes de la figura o la misma figura
GRÁFICOS EN MATLAB
GRÁFICOS EN MATLAB
Plot handles
h : El handle.
attr : Un atributo válido del handle como cadena de caracteres.
val : El nuevo valor del atributo

gca() : No necesita ningún argumento. Devuelve el handle de los ejes de la figura.


gcf() : No necesita ningún argumento. Devuelve el handle de la figura figura activa.
Pirámide

p=plot([1,2,3,2,1]); 3

2.8
set(p,'linewidth',2); 2.6

set(p,'marker','o'); 2.4

set(p,'markersize',12); 2.2

set(p,'markerfacecolor','y'); 2

set(p,'markeredgecolor','r'); 1.8

1.6
t=title('Pirámide'); 1.4

set(t,'fontsize',14); 1.2

set(t,'color','g'); 1
1 1.5 2 2.5 3 3.5 4 4.5 5
GRÁFICOS EN MATLAB
x = -pi:.1:pi;
y = sin(x);
plot(x,y)
set(gca,'XTick',-pi:pi/2:pi)
set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'})
title('Función Seno');
xlabel('Radianes');
ylabel('Valor de la Function');
Función Seno
1

0.8

0.6

0.4
Valor de la Function

0.2

-0.2

-0.4

-0.6

-0.8

-1
-pi -pi/2 0 pi/2 pi
Radianes
GRÁFICOS EN MATLAB
x = -pi:.1:pi;
y = sin(x);
p = plot(x,y); Theta aparece como un símbolo griego y
set(gca,'XTick',-pi:pi/2:pi)
set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'}) se nota el punto -pi/4 y seno(-pi/4)
xlabel('-\pi \leq \Theta \leq \pi')
ylabel('sen(\Theta)')
Trazado del sen()
title('Trazado del sen(\Theta)') 1
text(-pi/4,sin(-pi/4),'\leftarrow sin(-\pi\div4)',...
'HorizontalAlignment','left') 0.8
set(p,'Color','red','LineWidth',2) 0.6

0.4
Ejercicio: Colocar más puntos visibles
0.2
sen()

-0.2
Es importante saber algunos
-0.4
comandos en LateX
Cambia el color y el tamaño -0.6
 sin(-4)
-0.8

-1
-pi -pi/2 0 pi/2 pi
-   
GRÁFICOS EN MATLAB
Trazado de varios conjuntos de datos en un gráfico
Multiples pares x-y pueden crear múltiples gráficos con una sola lamada a la función plot
x = 0:pi/100:2*pi; El comando legend
y = sin(x);
y2 = sin(x-.25);
escribe la leyenda de la
y3 = sin(x-.5); figura
plot(x,y,x,y2,x,y3)
legend('sin(x)','sin(x-.25)','sin(x-.5)')
GRÁFICOS EN MATLAB
plotyy : Genera dos ejes vertiicales para dos funvciones distintas
t=0:pi/20:2*pi;
y=exp(sin(t));
y1=exp(cos(t));
plotyy(t,y,t,y1,'plot','stem'); plotyy(X1,Y1,X2,Y2,'
3 3 function1','function
2')
2.5 2.5

2 2

1.5 1.5

1 1

0.5 0.5

0 0
0 1 2 3 4 5 6 7
GRÁFICOS EN MATLAB
Ejemplos

El cicloide El cardioide El asteroide

t E 0 – 2*pi t E 0 – 2*pi t E 0 – 2*pi


X=a(t-sen(t)) X=cos(t)(1+cos(t)) X=acos(t)^3
Y= a(1-cos(t)) Y= sen(t)(1+cos(t)) Y= asen(t)^3

1.5 1

2 0.8
1
0.6

1.5 0.5
0.4

0.2

0 0
1
-0.2
-0.5
-0.4
0.5
-0.6
-1
-0.8
0
0 1 2 3 4 5 6 7 -1.5 -1
-0.5 0 0.5 1 1.5 2 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
GRÁFICOS EN MATLAB
50
10

40
10

loglog
30
10

x = logspace(-1,2);
loglog(x,exp(x),'-s') 10
20

grid on 10
10

0
10 -1 0 1 2
10 10 10 10

10
x 10

x = logspace(0,10); 3

semilogx(x,3*x,'-s') 2.5
grid on
2

1.5

0.5

0 0 2 4 6 8 10
10 10 10 10 10 10
GRÁFICOS EN MATLAB
10
10
x = 0:.1:10;
semilogy(x,10.^x) 8
10

6
10

4
10

2
10

0
10
0 1 2 3 4 5 6 7 8 9 10
GRÁFICOS EN MATLAB
axis
El comando axis proporciona una serie de opciones para el configuración de la escala,
la orientación y razón del aspecto de los gráficos. También puede configurar estas
opciones de forma interactiva

El comando axis define los límites de los ejes (mínimos y máximos)


axis([xmin xmax ymin ymax])
O para gráficos de tres dimensiones
axis([xmin xmax ymin ymax zmin zmax])

Permite una selección automático de límites


axis auto axis equal axis square

axis normal
GRÁFICOS EN MATLAB

polar

Gráfico del seno polar


90
0.5
120 60
0.4

0.3
150 30
0.2

figure 0.1

tetha = 0:.01:2*pi; 180 0


polar(tetha,sin(2*tetha).*cos(2*tetha),'--r')
title('Gráfico del seno polar')
210 330

Graficar:
240 300
270
GRÁFICOS EN MATLAB
Inclusión de trazos en una gráfica existente

hold : Cambia el comportamiento de la ventana activa, hold on hace que cada dato se
represente sobre el anterior, hold off borra las ventanas antes de pintar en ellas.

Ventana figura
Las funciones gráficas abren automáticamente figuras si no hay ventanas figuras en
la pantalla. Si existe una ventana figura es para, se utiliza para salida de gráficos. Si
hay múltiples ventanas figura abierta aquella que es designada la “figura actual” (la
ultima figura usada o clickeada dentro) es usada.

Para crear una nueva ventana figura: figure(n)


Donde n es el número en el título de la ventana figura
GRÁFICOS EN MATLAB
Mostrando múltiples trazos en una figura
Se pueden mostrar múltiples trazados en una misma ventana figura e imprimirlos en
el mismo pedazo de papel con la función subplot
Subplot(m,n,i) particiona la ventana figura en una matriz de mxn subtrazas y
selecciona la subtraza i-ésima para el actual trazado . Los trazados son numerados
a lo largo de la fila superior de la ventana figura
subplot(m,n,1) subplot(m,n,2) subplot(m,n,n)

1 2 … n


n+1 n+2 2n
m
filas . . .
. . .

(m-1)n+1 (m-1)n+2 … mn

n filas
GRÁFICOS EN MATLAB
Mostrando múltiples trazos en una figura

>> x=[3.2 4.1 5.0 5.6];


>> y=[2.5 4.0 3.35 4.9];
>> subplot(2,1,1)
>> plot(x)
>> subplot(2,1,2)
>> plot(y)
GRÁFICOS EN MATLAB
Mostrando múltiples trazos en una figura

t=0:0.1:2*pi;
y1=exp(sin(t));
y2=cos(t);
y3=y1./y2;
subplot(2,2,[1 3]);
plot(t,y1);
axis([0 2*pi 0 3]);
subplot(2,2,2);
plot(t,y2);
axis square
grid;
subplot(2,2,4);
plot(t,y3);
axis tight;
GRÁFICOS EN MATLAB
Ejercicio:
Probar para las siguientes funciones:

Para un rango de x [-6,6] y un paso de 0.001


GRÁFICOS EN MATLAB

Tipo de gráficos en 2D
Histograma de datos gaussianos
• Gráfico de histograma 450

400
x=-2.9:0.2:2.9;
y=randn(5000,1); 350

hist(y,x) 300
title('Histograma de datos gaussianos')
250

200

150

100

50

0
-4 -3 -2 -1 0 1 2 3 4
GRÁFICOS EN MATLAB

Tipo de gráficos en 2D
Señal roja de stop

• Gráfico de llenado 1

0.8

t=(1/8:2/8:15/8)'*pi; % Vector columna. 0.6


x=sin(t); 0.4
y=cos(t);
0.2
fill(x,y,'r')
STOP
% Un círculo rojo rellenado usando 0

%sólo 8 puntos. -0.2

axis('square') -0.4
text(-.11,0,'STOP') -0.6
title('Señal roja de stop')
-0.8

-1
-1 -0.5 0 0.5 1
GRÁFICOS EN MATLAB

• Diagrama de sectores
3% 2%
2%
PP
4%
x=[183 125 15 8 7 12] PSOE
CiU
pie(x),legend('PP', IU
'PSOE','CiU','IU','PNV','Otros') PNV
Otros

52%

36%
GRÁFICOS EN MATLAB

• Diagrama de Pareto
350 100%

x=[183 125 42] 300 86%


pareto(x),ylabel('Número de Escaños')
250 71%

Número de Escaños 200 57%

150 43%

100 29%

50 14%

0 0%
1 2 3
GRÁFICOS EN MATLAB
Gráfica de funciones implícitas

f ='[tan(x),sin(x),cos(x)]'; 5

g ='sin(1 ./ x)';
subplot(2,1,1), 0

fplot(f,2*pi*[-1 1 -1 1])
subplot(2,1,2), -5

fplot(g, [0.01 0.1],1e-3) -6 -4 -2 0 2 4 6

0.5

-0.5

-1
0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1
GRÁFICOS EN MATLAB
Creando trazos desde Workspace
>> x=0:.1:4*pi;
>> z = (sin(x.^2) + cos(x).^2);
GRÁFICOS EN MATLAB
Funciones definidas por trozos
>> x=1:7
x=
1 2 3 4 5 6 7
>> x>4
ans =
0 0 0 0 1 1 1
GRÁFICOS EN MATLAB
Funciones definidas por trozos

>> y=(x>2)&(x<=6)

y=

0 0 1 1 1 1 0
GRÁFICOS EN MATLAB
GRÁFICOS EN MATLAB

x=linspace(-2,3,3000);
y=(x.^2).*(x<0)+1.*((0<=x)&(x<1))+(-x+2).*(1<=x);
plot(x,y,':','Linewidth',2),grid on,title('Función definida a trozos')
Función definida a trozos
4

3.5

3 Ejercicio
2.5

1.5

0.5

-0.5

-1
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 3
GRÁFICOS EN MATLAB
GRÁFICOS TRIDIMENSIONALES
GRÁFICOS EN MATLAB
GRÁFICOS TRIDIMENSIONALES
Gráficos
Gráficos Gráficos de de área y Gráficos de Gráficas de Gráficas
de línea Barras y objetos superficie dirección volumétrico
mallado constructivos
GRÁFICOS EN MATLAB
Trazado de líneas en 3-D

La función plot3 se encarga de la creación de los trazos tridimensionales, de un


conjunto de puntos, su sintaxis es:

plot3(X1,Y1,Z1,...) 40

plot3(X1,Y1,Z1,LineSpec,...)
30
plot3(...,'PropertyName',PropertyValue,...)
h = plot3(...) 20

t
Ejemplo 10
t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t) 0
1
xlabel('sin(t)') 0.5 1
0.5
ylabel('cos(t)') 0
0
-0.5
zlabel('t') -1 -1
-0.5
cos(t)
grid on sin(t)

axis square
GRÁFICOS EN MATLAB
quiver3 (x,y,z,u,v,w): grafica la velocidad con (x,y,z) es la posición y (u,v,w) es la
velocidad

t=linspace(0,8*pi,300);
plot3(sin(t),cos(t),t),grid on
quiver3(sin(t),cos(t),t,cos(t),-sin(t),ones(1,300))

30

25
30

20 25

20
15
15
10
10
1.5
5 5
1

0 0.5
0 -1.5
1 -1 0

0.5 1 -0.5
-0.5
0
0 0.5 0.5 -1
0 1
-0.5 -0.5 1.5 -1.5

-1 -1
GRÁFICOS EN MATLAB
Trazado de superficie y mallado
>> [X,Y] = meshgrid(1:3,10:14)
X=
>> [X,Y] = meshgrid(-2:.2:2, -2:.2:2);
1 2 3 meshgrid : genera una
>> Z = X .* exp(-X.^2 - Y.^2);
1 2 3 matriz X cuyas filas son
>> surf(X,Y,Z)
1 2 3 del vetor x, y una matriz
1 2 3 Y cuyas columnas son el
1 2 3 0.5 vector y
Y=
10 10 10
11 11 11 0
12 12 12
13 13 13
14 14 14
-0.5
2
1 2
0 1
0
-1
-2
-1 surf: genera la gráfica de
-2
superficie
GRÁFICOS EN MATLAB
Trazado de superficie y mallado
[X,Y]= meshgrid(-8:.5:8);
R = sqrt(X.^2 + Y.^2) + eps;
Z = sin(R)./R;
figure meshgrid (x)=meshgrid(x,x)
mesh(X,Y,Z)
xlabel('X'), ylabel('Y'), zlabel('Z')
figure
mesh(X,Y,Z,'EdgeColor','black')
xlabel('X'), ylabel('Y'), zlabel('Z')

1
1

0.5
0.5
Z

0
0

-0.5
10 -0.5
5 10 10
5 5 10
0
0 5
-5 -5
0
0
-10 -10 -5
Y X -5
Y -10 -10
X
GRÁFICOS EN MATLAB
X/exp(X2 + Y2)

ezsurf :

syms X Y Z 0.5

Z = X*exp(-X^2-Y^2);
ezsurf(Z)
0

-0.5

2
2
0
0
-2 -2
Y X
GRÁFICOS EN MATLAB

view(az,el) : Fija el ángulo de visión especificando el azimut az y la elevación el.


view([x,y,z]) : Coloca la vista en la coordenada (x,y,z)

(X,Y,Z)
GRÁFICOS EN MATLAB

>> [X,Y] = meshgrid(-2:.2:2, -2:.2:2);


>> Z = X .* exp(-X.^2 - Y.^2);
2
>> surf(X,Y,Z)
>> view(10,70)
1

0.5
0
0

-0.5 -1
azimut y elevación -2
-1.5
están en grados -1 -0.5 0 0.5 -2
1 1.5
sexagesimales 2
GRÁFICOS EN MATLAB

colorbar : Añade una barra de color a la figura actual


surf(peaks(30))
colorbar('YTickLabel',...
{'Freezing','Cold','Cool','Neutral',... Nuclear

'Warm','Hot','Burning','Nuclear'})
Burning
10

Hot
5
Warm
0
Neutral
-5
Cool
-10
30
30 Cold
20
10 20
10 Freezing
0 0
GRÁFICOS EN MATLAB
Ejemplo
xa = -2:.2:2;
ya = xa;
[X Y] = meshgrid(xa,ya);
Z = X.*exp(- X.^2 - Y.^2 ); 2

figure(1) 1.5
surf(X,Y,Z)
figure(2) 1

contour(X,Y,Z) 0.5

0.5 0

-0.5

0
-1

-1.5
-0.5
2
1 2 -2
1 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2
0
0
-1 -1
-2 -2
GRÁFICOS EN MATLAB
Waterfall : Trazado en cascada

clear;lc;
[x,y]=meshgrid(-3:0.1:3,-2:0.5:2);
figure(1)
z=exp(-x.^2-y.^2);
h=waterfall(x,y,z);
set(h,'facecolor','blue',...
'edgecolor','blue',...
'facealpha',0.1);
grid on
xlabel('eje X')
ylabel('eje Y')
zlabel('eje Z')
axis tight
GRÁFICOS EN MATLAB
surfnorm : Calcula y muestra las superficies normales en 3-D

clear all;clc;clf;
[x,y]=meshgrid(-3:.2:3,-4:.2:4);
z=y.^2.*exp(-x.^2-0.3*y.^2);

% generamos los vectores normales


% en cada punto
[u,v,w]=surfnorm(x,y,z);

%Grafiquemos la superficie
surf(x,y,z,'edgecolor','none',...
'facecolor','yellow');
camlight left;
lighting phong;
hold on

% graficamos los vectores normales


% (u,v,w) en cada (x,y,z) con un
% factor de escala de 0.5
quiver3(x,y,z,u,v,w,0.5)
hold off
axis equal
GRÁFICOS EN MATLAB
Gradient: Devuelve el gradiente numérico de una función.
[FX,FY] = gradient(F) : Devuelve los
4
4
numérico de 2 dimensiones
3

clc;clf; 2
[x,y]=meshgrid(-2:.2:2,-4:.2:4);
1
f=y.^2.*exp(-x.^2-0.3*y.^2);
[dx,dy]=gradient(f,.2,.2); 0
figure(1)
contour(x,y,f,10); -1

hold on -2
quiver(x,y,dx,dy);
hold off -3

grid on -4
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
GRÁFICOS EN MATLAB
Gráficas de contornos o curvas de nivel
GRÁFICOS EN MATLAB

syms X Y Z; Xexp(-X2-Y2)
Z = X*exp(- X^2 - Y^2 ); 3

ezcontour(Z)
2
X/exp(X2 + Y2)

0.5

Y
0

-1
0

-2

-0.5
-3
2 -3 -2 -1 0 1 2 3
2 X
0
0
-2 -2
Y X
GRÁFICOS EN MATLAB

fill3(x,y,z,’color’) : Dibuja un polígono como fill, pero es de cuatro argumentos

x=[-2 0 2 0 -2];
y=[4 8 4 0 4];
z=[3 5 10 5 3];
figure
fill3(x,y,z,'m') 10
grid on
8

2
8
6 2
4 1
0
2
-1
0 -2
GRÁFICOS EN MATLAB
[x,y]=meshgrid(-10:0.2:10)
Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2+0.1);
figure(1)
mesh(X,Y,Z) clabel: Añade etiquetas de altura a los gráficos de contorno
figure(2)
surf(X,Y,Z)
view([10,-12,2])
10
figure(3) 0
0.1
0
0
8 0
[C,h]=contour(X,Y,Z); 0.1 0.1
0
clabel(C,h) 6
-0.1
0.1
1 -0.2 0
4 0 0.
.1 -0.2 -0.1
0
0.1 0
1 0 0 -0
2 -0.2
0.1 0.2 0.6 0.0.4
5 0.1
0.8 -0 .2 0.1 0.3 -0 .1
0 0.1 0 0. 200 .8
.76 0
00.5
-0 .2 . 3.400.50.7.60.8 0.2 0.1
0.6 0 -0 .2
-0 1 .1
-2 .1 00-0.
0.4 0
-0
-4 .1 -0.2 0
0.2 -0.2
0 0.1 -0.1
-6 0.1 0 0.1
0 0.1

-0.2 -8 0 0
0.1 0
0
-0.4 10 -10
-10 -5 5 -10 -8 -6 -4 -2 0 2 4 6 8 10
0 0
5 -5
10 -10
GRÁFICOS EN MATLAB
contour3(X,Y,Z,n) : Dibuja el contorno de la superficie con n niveles de contorno

[X,Y]=meshgrid(-10:0.5:10);
Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2+0.1);
figure(1)
mesh(X,Y,Z)
figure(2)
contour3(X,Y,Z,30)
1

1
0.5

0.5

-0.5
10
-0.5
10 5 10
5 10 0 5
0 5 0
-5 -5
0
-5 -10
-5 -10
-10 -10
GRÁFICOS EN MATLAB
colormap(M) :
El mapa de colores (colormap) es la representación de los colores en una matriz de
m-por-3 de npumeros reales entre 0.0 y 1.0; cada fila es un vector RGB que define un
color
[X,Y]=meshgrid(-10:0.5:10);
Dond M puede ser: Z=sin(sqrt(X.^2+Y.^2))./sqrt(X.^2+Y.^2+0.1);
surf(X,Y,Z)
colormap(Summer)

0.5

-0.5
10
5 10
0 5
0
-5 -5
-10 -10
GRÁFICOS EN MATLAB
Trazados stem tridimensionales
stem3 (x,y,z): Traza la secuencia de datos Z en valores especificados por X e Y. X,Y y Z
deben ser todos vetores o matrices del mismo tamaño
x=linspace(0,1,10); x=linspace(0,1,10);
y=x./2; y=x./2;
z=sin(x)+cos(y); z=sin(x)+cos(y);
figure figure
stem3(x,y,z, 'fill') stem3(x,y,z)

2
2

1.5
1.5

1
1

0.5
0.5

0 0
0.8 0.8
0.6 1 0.6 1
0.8 0.8
0.4 0.6 0.4 0.6
0.2 0.4 0.2 0.4
0.2 0.2
0 0 0 0
GRÁFICOS EN MATLAB
ESFERA
Algunas superficies
esphere
1
>>sphere,axis square,title('ESFERA')
0.5

cylinder (R):
0
Genera un cilindro de revolución de radio
R, dicho radio puede ser variable R(t) -0.5

>> t=linspace(0,2,20);r=sqrt(t);cylinder(r) -1
1
0.5 1
0 0.5
1 0
-0.5
-0.5
0.8
-1 -1

0.6

0.4

0.2 Representar:
0
2
1 2
0 1
0
-1
-1
-2 -2

También podría gustarte