Escolar Documentos
Profissional Documentos
Cultura Documentos
ndice general
4. Grficas
4.1. Las Grficas en MATLAB . . . . . . . . . . . . . . . .
4.1.1. Anatoma de las Grficas en MATLAB . . . . . .
4.1.2. Procesos para el trazado de una grfica . . . . .
4.1.3. Creacin de una grfica . . . . . . . . . . . . . .
4.1.4. Algunas Herramientas GUI . . . . . . . . . . . .
4.2. Las Grficas Bidimensionales . . . . . . . . . . . . . . .
4.2.1. Funciones trazadoras de Grficas Bidimensionales
4.2.2. La funcin de trazado lineal bidimensional: plot .
4.2.3. Formatos habituales del comando plot . . . . . .
4.2.4. Gestin de las Propiedades de los objetos grficos
4.2.5. Control de ejes y anotaciones . . . . . . . . . . .
4.2.6. Mltiples ejes en una Ventana figura . . . . . . .
4.2.7. Otras funciones de trazado Bidimensional . . . .
1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
4
4
6
7
9
11
11
12
15
41
52
57
59
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
89
89
90
91
93
mataurimaa@uni.pe
Captulo 4
Grficas
4.1.
4.1.1.
El entorno MATLAB ofrece una variedad de funciones para la grfica de datos adems de herramientas GUI para crear y modificar la visualizacin de las grficas.
Una figura (figure) es una ventana MATLAB que contiene la visualizacin de una grfica (usualmente trazado de datos) y componentes UI.
Un trazado (plot) es cualquier visualizacin grfica, a partir de un conjunto de datos, que se pueda
crear dentro de una ventana figura.
Una grfica (graph) es el conjunto de uno omas trazas en ejes bidimensionales otridimensionales.
Por ejemplo, el siguiente script crea una grfica conteniendo tres curvas.
grafdemo.m (script)
1
2
3
4
5
6
7
clc;
clear;
x = (0:0.2:20);
y = sin(x)./sqrt(x+1);
y(:,2) = sin(x/2)./sqrt(x+1);
y(:,3) = sin(x/3)./sqrt(x+1);
plot(x,y)
mataurimaa@uni.pe
y(3,:) = sin(x/3)./sqrt(x+1);
UNIVERSIDAD NACIONAL DE INGENIERA plot(x,y)
Facultad de Ingeniera Elctrica y Electrnica
Ventana figura
(figure)
Eje
(axes)
Trazas de curvas
(plots)
Arellano
mataurimaa@uni.pe
4.1.2.
Una grfica es la traza de datos, los cuales pueden ser generados por cdigo
Una
grfica es
la ejemplo
traza de datos,
los cuales
pueden
serde
generados
por cdigo MATLAB,
ejemplo
MATLAB,
por
a travs
de una
regla
correspondencia
aplicadaporsobre
un
a travs de una regla de correspondencia aplicada sobre un dominio; o pueden ser importados de alguna
dominio; o pueden ser importados de alguna base de datos, como un archivo de
base de datos, como un archivo de Excel.
Excel.
DATOS
Seabidimensional
bidimensional
o tridimensional,
el proceso
dedetrazado
de una
esta
Sea
o tridimensional,
el proceso
de trazado
una grfica
esta grfica
constituido
por las
constituido
por
las
siguientes
etapas
siguientes etapas:
Creacin
Creacin
degrfica
la grfica
de la
Exploracin de datos
Exploracin de datos
Edicin del grfico
delde
grfico
Edicin
Adicin
anotaciones al grfico
Adicin
Impresin
y Exportacin
de grficas
de anotaciones
al grfico
Adicin y eliminacin de contenido de una ventana figure
Impresin y Exportacin de grficas
Almacenamiento y reutilizacin de grficas (*.fig)
Adicin y eliminacin de contenido de una ventana figure
Cada una de estas etapas se pueden desarrollar a travs de cdigo (funciones y/o
Almacenamiento
y reutilizacin
de grficas que
(*.fig)provee MATLAB.
scripts)
o utilizando
las herramientas
Cada una de estas etapas se pueden desarrollar a travs de cdigo (funciones y/o scripts) o utilizando las
herramientas
que provee MATLAB.
mataurimaa@uni.pe
4.1.3.
Por lo general, la creacin de una grfica implica el desarrollo de los siguientes pasos:
1. Preparar los datos a graficar.
Los datos deben estar en el workspace.
2. Especificar la ventana figura en la que se desea hacer la grfica.
Usando el comando figure.Hace la subdivisin de la grfica en sub-grficas (ejes) si es necesario.
3. Especificar la sub-grfica (eje) en la que se desea hacer la grfica.
Usando el comando subplot.
4. Efectuar el trazado de la grfica.
Usando las funciones trazadoras de grfica bidimensional/tridimensional.
5. Agregar detalles a la grfica .
Legenda, enrejado, ttulo, etiquetas, etc.
6. Estableciendo valores a las propiedades de los objetos que componen la grfica.
Creando manipuladoresa los objetos de la grfica.
Obteniendo/estableciendopropiedades mediantelos comandos get y set.
mataurimaa@uni.pe
UNIVERSIDAD
DE INGENIERA
ub-grfica
(eje)NACIONAL
en la que
se desea hacer la grfica .
Facultad de Ingeniera Elctrica y Electrnica
mando subplot.
NOTA: Los objetos que componen una grfica en MATLAB son parte de la siguiente Jerarqua de
Objetos
Grficosde grfica bidimensional/tridimensional.
nciones
trazadoras
root
figure
objetos UI
axes
objetos ncleo
objetos de
trazado
Anotaciones
ocultas de ejes
Grupo de
objetos
Anotaciones de
objetos
5
mataurimaa@uni.pe
4.1.4.
Son aquellas que nos permitirn editar las grficas generadas tras la ejecucin de cdigo fuente en
Herramientas
GUI
ventanas figura. Entre ellas tenemos:
de herramientas
las Ventana
figure
Barra
deBarra
herramientas
deGUI
lasde
Ventana
figure
Herramientas
Modo edicin
Barra de colores
Zoom in/out
Legenda
Controles de movimiento
Otras
herramientas
(men View)
Cmara
Cmara
Controles de movimiento
de cmara
Pan
Selector de ejes
principales
Selector de ejes
principales
Tipo de
Proyeccin
iluminacin
Legenda
iluminacin
Pan
Barra de colores
Zoom in/out
Modo edicin
Reset y Stop
Tipo de
Proyeccin
Reset y Stop
Edicin de trazas
edicin de propiedades de
objetos grficos
Edicin de trazas
edicin de propiedades de
objetos grficos
EXPOSITOR: Miguel Ataurima Arellano
Alinea objetos
Alinea objetos
mataurimaa@uni.pe
il
UNIVERSIDAD NACIONAL DE INGENIERA
Facultad de Ingeniera Elctrica y Electrnica
Edicinde
detrazas
trazas
Edicin
edicin de propiedades de
objetos grficos
Alinea objetos
mataurimaa@uni.pe
10
mataurimaa@uni.pe
4.2.
4.2.1.
Barra
agrupada
apilada
agrupada
apilada
rea
Direccional
Radial
Dispersas
(Scatter)
mataurimaa@uni.pe
11
mataurimaa@uni.pe
4.2.2.
La funcin plot es una funcin que grafica sobre un eje (objeto axis) perteneciente a una ventana
figura (objeto figure), una traza, resultante de confrontar un conjunto de datos dado sobre otro.
Para poder utilizar la funcin grfica plot se debe seguir los siguientes pasos:
Preparar los conjuntos de datos por graficar (coordenadas de los puntos a trazar) y cargarlos al
workspace. Estos pueden ser:
Generados por regla de correspondencia. Por ejemplo, mediante:
>> x = (0:pi/4:2*pi);
>> y = sin(x);
Obtenidos desde alguna fuente de datos. Por ejemplo, mediante importacin de datos de una
Bases de Datos externa (como Excel).
12
mataurimaa@uni.pe
Una vez cargados los datos en el workspace (ws para abreviar), generar la grfica invocando a la
funcin plot.
>> plot(x,y);
ws
x
0
0.7854
1.5708
2.3562
3.1416
3.9270
4.7124
5.4978
6.2832
0
0.7071
1.0000
0.7071
0.0000
-0.7071
-1.0000
-0.7071
-0.0000
aurimaa@uni.pe
13
mataurimaa@uni.pe
0.7854
0.7071
1.5708
1.0000
2.3562
0.7071
3.1416
0.0000
3.9270
-0.7071
4.7124
-1.0000
5.4978
-0.7071
6.2832
-0.0000
3
2
8
7
10
mataurimaa@uni.pe
14
mataurimaa@uni.pe
4.2.3.
1
2
:
:
n2
x2, y2 , ... )
:
:
:
:
eje y
1
2
:
n1
eje y
1
2
:
n1
plot( x1, y1 ,
eje x
eje x
11
mataurimaa@uni.pe
15
mataurimaa@uni.pe
1
2
clc;
clear;
3
4
5
6
% parmetros
mu = 2;
sigma = 1;
7
8
9
% dominio
x = (-1:0.01:5);
10
11
12
% rango
y = exp(-0.5*((x-mu)/sigma).^2)/(sigma*sqrt(2*pi));
13
14
15
%grfica
plot(x,y);
16
mataurimaa@uni.pe
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
-1
17
mataurimaa@uni.pe
Observaciones:
Haciendo uso de la funcin pdf del toolbox Statistics, podemos reemplazar la lnea 8 por
18
mataurimaa@uni.pe
1
2
clc;
clear;
3
4
5
% dominio
t = (0:0.01:10);
6
7
8
% senda
x = 0.5*exp(-0.8*t).*sin(2*pi*t) + 1;
9
10
11
12
% envolventes
x1 = 0.5*exp(-0.8*t) + 1;
x2 = -0.5*exp(-0.8*t) + 1;
13
14
15
% grafica
plot(t,x,t,x1,t,x2);
19
mataurimaa@uni.pe
1.5
0.5
20
10
mataurimaa@uni.pe
Senda: x(t)
Envolvente: x 1(t)
Envolvente: x 2(t)
0.5
10
tiempo
21
mataurimaa@uni.pe
graf2d003.m (script)
1
2
clc;
clear;
3
4
5
% dominio
t = (0:0.01:10);
6
7
8
% senda
x = 0.5*exp(-0.8*t).*sin(2*pi*t) + 1;
9
10
11
12
% envolventes
x1 = 0.5*exp(-0.8*t) + 1;
x2 = -0.5*exp(-0.8*t) + 1;
13
14
15
% grafica
plot(t,x,t,x1,t,x2);
16
17
18
19
20
21
22
% ttulo
title(Senda x(t) y sus envolventes);
23
22
mataurimaa@uni.pe
24
25
% leyenda
legend(Senda: x(t), Envolvente: x_1(t), Envolvente: x_2(t));
Observacin:
Los temas concernientes a rtulos, ttulos, legenda, control de sistema de ejes, etc. sern visto mas
adelante en este captulo.
23
mataurimaa@uni.pe
TIPO MARCADOR
Especificador
Estilo de lnea
Especificador
Tipo de Marcador
Signo mas
--
Lnea guin
Crculo
Lnea punteada
Asterisco
-.
Lnea punto-guin
Punto
TIPO COLOR
Cruz
'square' o s
Cuadrado
Especificador
Color
'diamond' o d
Diamante
Rojo
Verde
Azul
>
Cyan
<
Magenta
'pentagram' o p
Amarillo
'hexagram' o h
Negro
Blanco
13
mataurimaa@uni.pe
24
mataurimaa@uni.pe
UNIVERSIDAD
linespec1,
es una cadena que contiene uno o mas caracteres
cada uno de los cuales
NACIONAL DE INGENIERA
MATLAB & Simulink para Ciencia e Ingeniera
representa
a unElctrica
especificador,
Facultad
de Ingeniera
y Electrnica los cuales pueden ser del tipo lnea, del tipo marcador y/oNIVEL I
del tipo color
TIPO LNEA
TIPO MARCADOR
Especificador
Estilo de lnea
Especificador
Tipo de Marcador
Signo mas
--
Lnea guin
Crculo
Lnea punteada
Asterisco
-.
Lnea punto-guin
Punto
TIPO COLOR
Cruz
'square' o s
Cuadrado
Especificador
Color
'diamond' o d
Diamante
Rojo
Verde
Azul
>
Cyan
<
Magenta
'pentagram' o p
Amarillo
'hexagram' o h
Negro
Blanco
13
ataurimaa@uni.pe
25
mataurimaa@uni.pe
x1 (t) =
2,
2et + 8,
t=0
; x2 (t) =
t>0
2,
t=0
4t
t
12e
+ 6e + 8, t > 0
1
2
clc;
clear;
3
4
5
% Dominio
t = (0:0.01:10);
6
7
8
% Instante de cambio
tau = 2;
9
10
11
12
13
14
15
16
17
26
mataurimaa@uni.pe
18
19
20
21
22
23
24
25
% Grfica
plot(t, x1, ...
% x1(t)
t, x2, --,... % x2(t)
[0 10], [8 8], :k); % ss
26
27
28
29
30
axis([0 10 0 12]);
xlabel(tiempo);
ylabel(x_1(t), x_2(t))
legend(x_1(t), x_2(t));
27
mataurimaa@uni.pe
12
x 1(t)
10
x 2(t)
x 1(t), x 2(t)
8
6
4
2
0
5
tiempo
10
Observacin:
Para establecer los extremos de visualizacin del eje hemos utilizado la funcin axis (lnea 27) cuya
sintxis para grficas en dos dimensiones es
axis([xmin xmax ymin ymax])
28
mataurimaa@uni.pe
EJEMPLO: Basndose en el ejemplo anterior realice los cambios necesario al script para obtener la
grfica de
(
(
10,
t=0
10,
t=0
x1 (t) =
; x2 (t) =
t
t
4t
2e + 4, t > 0
4e + 10e
+ 4, t > 0
con un desplazamiento en el tiempo hasta t = = 2 . Considere un intervalo de tiempo t [0; 10]. La
grfica resultante deber ser similar a la siguiente:
12
x 1(t)
10
x 2(t)
x 1(t), x 2(t)
8
6
4
2
0
5
tiempo
29
10
mataurimaa@uni.pe
plot( y1 sobre
)
plot(
Y1 )de establecer consulte la documenPara mayor informacin
las propiedades y valores
posibles
1
1
tacin.
2
:
n1
...
eje y
eje y
2
:
n1
1 2 k .. n1
1 2 k .. n1
eje x
eje x
23
mataurimaa@uni.pe
30
mataurimaa@uni.pe
1
2
clc;
clear;
3
4
5
% Dominio
x = (-pi:pi/10:pi);
6
7
8
% Rango
y = tan(sin(x)) - sin(tan(x));
9
10
11
12
13
14
% Grfica
plot(x,y,--s,LineWidth, 2,...
MarkerEdgeColor, r,...
MarkerFaceColor, w,...
MarkerSize, 8);
15
16
17
18
% Detalles
xlabel(eje X);
ylabel(eje Y);
31
mataurimaa@uni.pe
19
legend(f(x))
3
f(x)
2
eje Y
1
0
-1
-2
-3
-4
-3
-2
-1
0
eje X
32
mataurimaa@uni.pe
33
mataurimaa@uni.pe
graf2d008.m (script)
1
2
clc;
clear;
3
4
5
% Dominio
t = (0:20);
6
7
8
9
10
11
12
13
14
15
16
17
18
19
% Grfica
plot(t,x, bs--, LineWidth, 2,...
MarkerEdgeColor, none,...
MarkerFaceColor, k,...
MarkerSize, 6);
% Detalles
grid on;
axis([0 20 0 10]);
xlabel(tiempo);
ylabel(x(t));
34
mataurimaa@uni.pe
10
9
8
7
x(t)
6
5
4
3
2
1
0
10
tiempo
35
12
14
16
18
20
mataurimaa@uni.pe
I Sintxis:
..
..
Permite establecer valores
a determinadas propiedades
de la traza:
.
.
Color, LineStyle, LineWidth, Marker, MarkerSize, MarkerEdgeColor,
MarkerFaceColor, XData, YData, ZData, Type, etc.
plot( y )
1
2
:
n
...
eje y
eje y
1
2
:
n
plot( Y )
1 2 k .. n
1 2 k .. n
eje x
eje x
23
mataurimaa@uni.pe
36
mataurimaa@uni.pe
eje y
1
2
:
n1
...
NOTA:
Cada vez que la funcin plot sea
invocada:
eje x
37
mataurimaa@uni.pe
1
2
clc;
clear;
3
4
5
% Dominio
x = (-2:0.001:2);
6
7
8
9
% Matriz Rango
% Cada columna contiene una regla de correspondencia
Y = [x x.^2 x.^3];
10
11
12
13
14
15
16
% Grfica
plot(x, Y);
38
mataurimaa@uni.pe
17
18
19
20
21
22
23
24
% Detalles
grid on;
xlabel(eje X);
ylabel(eje Y);
legend(y=x, y=x^2, y=x^3);
axis equal;
axis([-2 2 -2 2]);
39
mataurimaa@uni.pe
2
1.5
1
eje Y
0.5
0
-0.5
-1
y=x
y=x 2
y=x 3
-1.5
-2
-2
-1.5
-1
-0.5
0
eje X
40
0.5
1.5
mataurimaa@uni.pe
4.2.4.
Cuando se crea una grfica a travs del comando plot, se crean un conjunto de objetos grficos:
Ventana Figure(figure), Ejes(axes) y Trazas(objetos trazados). Cada uno de ellos poseen propiedades que
pueden obtenerse o establecerse a travs de los comandos get y set respectivamente.
I Sintxis:
Para crear un manipulador de las trazas (h) de una grfica basta con asignar a una variable la salida
del comando plot
h = plot( ... )
41
mataurimaa@uni.pe
h = plot( ...)
gcf retorna el objeto figure actual
Cuando se crea una grfica a travs del comando plot, se crean un conjunto de objetos
Ventana
Figure(figure),
Ejes(axes)
y Trazas(objetos
trazados). Cada uno de ellos
gca retornagrficos:
el objeto
axis actual
(contenido
en el objeto
figure)
poseen propiedades que pueden obtenerse o establecerse a travs de los comandos get y set
h contiene respectivamente
el objeto de trazado retornado por el comando plot
12
12
h(1)
h(2)
h(3)
trazas
(h)
3
0
ejes
(gca)
figura
(gcf)
26
mataurimaa@uni.pe
42
mataurimaa@uni.pe
y adems:
Para obtener todas las propiedades de un objeto:
M = get(objeto)
M = get(objeto,Propiedad)
set(objeto,Propiedad,valor)
43
mataurimaa@uni.pe
Una forma de averiguar de manera interactiva las propiedades de un objeto es dndo clic en el
(Show Plot Tools and Dock Figure)
botn
44
mataurimaa@uni.pe
Para editar las propiedades de la segunda traza habr que elegir del panel Plot Browser el tercer
objeto y luego deberemos dar clic en el botn More Properties... del Panel Property Editor, que en
su ttulo compartir el tipo de objeto seleccionado Property Editor - Lineseries.
Realizada esta accin se aperturar la ventana Inspector indicando en su barra de ttulo el tipo de
grfica (graph2d) asi como el tipo de objeto seleccionado (Lineseries): graph2d.lineseres
45
mataurimaa@uni.pe
46
mataurimaa@uni.pe
EJEMPLO: Modifique el script graf2d007.m estableciendo las propiedades de las trazas mediante el uso
de un manipulador grfico.
graf2d013.m (script alternativo a graf2d007.m)
1
2
clc;
clear;
3
4
5
% Dominio
x = (-pi:pi/10:pi);
6
7
8
% Rango
y = tan(sin(x)) - sin(tan(x));
9
10
11
12
13
14
15
16
17
% Grfica
h = plot(x,y);
set(h, LineStyle, --, ...
Marker, s, ...
LineWidth, 2,...
MarkerEdgeColor, r,...
MarkerFaceColor, w,...
MarkerSize, 8);
18
19
20
% Detalles
xlabel(eje X);
47
mataurimaa@uni.pe
21
22
ylabel(eje Y);
legend(f(x))
48
mataurimaa@uni.pe
EJEMPLO: Modifique el script graf2d003.m estableciendo las propiedades de las envolventes como lneas
con guines y la senda como lnea contnua de color azul, mediante el uso de un manipulador grfico.
graf2d014.m (script alternativo a graf2d003.m)
1
2
clc;
clear;
3
4
5
% dominio
t = (0:0.01:10);
6
7
8
% senda
x = 0.5*exp(-0.8*t).*sin(2*pi*t) + 1;
9
10
11
12
% envolventes
x1 = 0.5*exp(-0.8*t) + 1;
x2 = -0.5*exp(-0.8*t) + 1;
13
14
15
% grafica
h = plot(t,x,t,x1,t,x2);
16
17
18
19
20
49
mataurimaa@uni.pe
21
22
23
24
25
26
27
28
29
% ttulo
title(Senda x(t) y sus envolventes);
30
31
32
% leyenda
legend(Senda: x(t), Envolvente: x_1(t), Envolvente: x_2(t));
50
mataurimaa@uni.pe
1.4
1.3
1.2
1.1
1
0.9
0.8
0.7
0.6
0.5
5
tiempo
51
10
mataurimaa@uni.pe
4.2.5.
Establece los lmites del actual eje basndose en los valores mnimos y mximos de los datos.
axis tight
Establece el origen del sistema de coordenadas en la esquina superior izquierda. El eje i es vertical,
con valores crecientes de arriba a abajo. El eje j es horizontal con valores crecientes de izquierda a
derecha
axis xy
52
mataurimaa@uni.pe
Dibuja el grfico en formato de ejes cartesianos por defecto con el origen del sistema de coordenadas
en la esquina inferior izquierda. El eje x es horizontal con valores crecientes de izquierda a derecha.
El eje y es vertical con calores crecientes de abajo hacia arriba.
axis equal
Establece la proporcin entre la anchura y la altura de la traza (aspect ratio) de manera que las
unidades de los datos son las mismas en toda direccin.
axis image
Funciona igual que axis equal excepto que la caja de la traza se ajusta de manera ceida alrededor
de los datos.
axis square
53
mataurimaa@uni.pe
axis(axes_handles,...)
Funciona igual que las anteriores aadiendo la posiblidad de especificar pares propiedad/valor.
xlabel(cadena) ylabel(cadena)
Muestra una leyenda en el actual eje usando las cadenas especificadas para etiquetar cada conjunto
de datos en el orden en que han sido trazados.
text(x,y,cadena)
Aada la cadena en la posicin especificada por el punto (x,y), x e y deben ser nmeros double.
EXPOSITOR: Miguel Ataurima Arellano
54
mataurimaa@uni.pe
text(x,y,cadena,Propiedad,valor,...)
Convierte la expresin MATLAB f en un equivalente TEX / LATEX para usarlo en cadenas de texto.
Generalmente se usa en como cadena con la funcin text.
datetick(tickaxis,dateform)
Formatea las etiquetas de las lneas tick de un eje usando fechas, reemplazando las etiquetas
numricas por defecto. tickaxis es la cadena x, y o z. Por defecto es x. datetick selecciona un
formato de etiqueta basado en los lmites mnimo y mximo de los ejes especificados. dateform es
un entero que especifica el formato de las etiqueta.
[x,y]=ginput(n)
Permite seleccionar n puntos del actual eje cuyas coordenadas x e y son retornadas en los vectores
columna x e y respectivamente. Se puede finalizar el ingreso de los puntos presionando la tecla
Enter.
[x,y]=ginput
Igual que el anterior pero permitiendo seleccionar los puntos hasta presionar la tecla Enter.
gtext(cadena)
Espera a que se presione un botn del ratn o del teclado mientras el puntero esta dentro de la
ventana figura. Ubica el texto especificado por cadena en la posicin en donde se presione un botn
del ratn o presione cualquier tecla.
EXPOSITOR: Miguel Ataurima Arellano
55
mataurimaa@uni.pe
clabel(C,h,Propiedad,valor,...)
alterna las etiquetas e las inserta en las lneas de contorno. La funcin inserta solo aquellas etiquetas
que se ajustan al interior del contorno, dependiendo del tamao del contorno. Se pueden especificar
pares propiedad/valor
datetick(tickaxis,dateFormat)
Muestra una leyenda en los ejes actuales usando las cadenas especificadas que etiquetarrn cada
conjunto de datos.
56
mataurimaa@uni.pe
4.2.6.
Para crear mltiples ejes en una venta figura, o dicho de otra manera, dividir la actual figura en
ejes dispuestos en una distribucin de m filas por n columnas se utiliza la funcin subplot
h = subplot(m,n,p)
Esta funcin permite elegir el objeto eje p-simo como eje actual retornando un manipulador de
Mltiples ejes
ejesh.en una Ventana figura
Para crear mltiples ejes en una venta
figura, o dicho de otra manera, dividir la
actual figura en ejes dispuestos en una
distribucin de m filas por n columnas se
utiliza la funcin subplot
h = subplot(m,n,p)
La cual permite elegir el objeto eje p-simo
como eje actual retornando un manipulador
de ejes h.
n+1
n+2
n-1
n+(n-1)
2n
(m-1)n+(n-1)
mn
m
filas
p
NOTAS:
(m-1)n+1
(m-1)n+2
n
columnas
subplot(m,n,p)
plot(x,y)
mataurimaa@uni.pe
57
31
mataurimaa@uni.pe
Observaciones:
Cada eje es numerado por filas de izquierda a derecha a partir de 1 hasta mn.
Cada vez que se especifica un eje actual, toda ejecucin de algn comando de graficacin, por
ejemplo plot, se ejecutar en dicho eje.
58
mataurimaa@uni.pe
4.2.7.
I) Histogramas
MATLAB cuenta con la funcin hist para la grfica de histogramas. A continuacin se explican las
sintxis de hist mas utilizadas
hist(data) crea un trazado de barras del tipo histograma a partir de data. Los elementos en
data son ordenados en 10 contenedores igualmente espaciados sobre el eje x entre el mnimo y el
mximo valor de data. Los contenedores son mostrados como rectngulos tales que la altura de
cada rectngulo indica el nmero de elementos en el contenedor.
hist(data, ncontenedore) ordena los datos dentro del numero de contenedores especificado por
ncontenedores.
hist(data, xcenters) ordena los datos en un numero de contenedores determinado por length(xcenters).
Los valores en xcenters especifican los centros para cada contenedor sobre el eje x.
cada contenedor.
[nelements, xcenters] = hist(___) retorna un vector fila adicional, xcenters, indicando la localizacin de cada centro contenedor sobre el eje x. Para trazar el histograma, se debe usar
bar(xcenters, nelements).
59
mataurimaa@uni.pe
clc; clear;
2
3
4
5
% Talla de la muestra
T = 1000;
t = (1:T);
6
7
8
% Semilla
rand(seed,12345);
9
10
11
% Valores centrales
xc = (-4:0.5:4);
12
13
14
15
16
17
18
60
mataurimaa@uni.pe
19
20
21
22
23
24
25
26
27
28
29
30
31
% Grafica de Histograma
subplot(2,1,2);
hist(x,xc);
title(Histograma de y_t);
xlabel(y_t);
grid on;
set(gca, FontSize, 8);
61
mataurimaa@uni.pe
yt
-2
-4
100
200
300
400
500
tiempo
600
700
800
900
1000
Histograma de y t
200
150
100
50
0
-5
-4
-3
-2
-1
0
yt
62
mataurimaa@uni.pe
EJEMPLO: Modicar el script anterior de manera que el color de las barras sea azul y el de los bordes
sea blanco.
graf2d018.m (script)
clc; clear;
2
3
4
5
% Talla de la muestra
T = 1000;
t = (1:T);
6
7
8
% Semilla
rand(seed,12345);
9
10
11
% Valores centrales
xc = (-4:0.5:4);
12
13
14
15
16
17
18
19
20
63
mataurimaa@uni.pe
21
22
ylabel(y_t);
grid on;
23
24
25
26
27
28
29
30
31
32
33
34
35
36
% Grafica de Histograma
subplot(2,1,2);
hist(x,xc);
h = findobj(gca,Type,patch);
set(h, FaceColor, b, ...
EdgeColor, w);
title(Histograma de y_t);
xlabel(y_t);
grid on;
% Superponemos la Grafica de los puntos centrales
hold on;
plot(xc,zeros(size(xc)), .r);
hold off;
64
mataurimaa@uni.pe
yt
-2
-4
100
200
300
400
500
tiempo
600
700
800
900
1000
Histograma de y t
250
200
150
100
50
0
-5
-4
-3
-2
-1
0
yt
65
mataurimaa@uni.pe
EJEMPLO: Modicar el script anterior de manera que se grafique el histograma considerando el intervalo
de variacin de x dividido en 20 subintervalos.
graf2d020.m (script)
clc; clear;
2
3
4
5
% Talla de la muestra
T = 1000;
t = (1:T);
6
7
8
% Semilla
rand(seed,12345);
9
10
11
12
13
14
15
16
17
18
19
20
66
mataurimaa@uni.pe
21
22
23
24
25
26
27
% Grafica de Histograma
subplot(2,1,2);
nsub = 20;
hist(x, nsub);
title(Histograma de y_t);
xlabel(y_t);
grid on;
67
mataurimaa@uni.pe
yt
-2
-4
100
200
300
400
500
tiempo
600
700
800
900
1000
Histograma de y t
150
100
50
0
-4
-3
-2
-1
0
yt
68
mataurimaa@uni.pe
II) bar
MATLAB cuenta con la funcin bar para la grfica de barras. A continuacin se explican las sintxis
de bar mas utilizadas:
bar(Y) muestra una barar para cada elemento en Y.
bar(x,Y) muestra barras para cada columna en Y en las ubicaciones especificadas en x.
bar(___,width) establece el ancho de barra relativo y controla la separacin de barras dentro de
un grupo y puede incluir cualquiera de los argumentos de entrada de las sintxis previas.
bar(___,style) especifica el estilo de las barras y puede incluir cualquiera de los argumentos de
entrada de las sintxis previas.
bar(___,bar_color) muestra todas las barras usando el color especificado por la abreviacin letra
simple de bar_color y puede incluir cualquiera de los argumentos de entrada de las sintxis previas.
bar(___,Name,Value) fija los nombres de las propiedades con los valores especificados y puede
incluir cualquiera de los argumentos de entrada de las sintxis previas.
Nota: No se peude especificar nombres y valores cuando usando las opciones hist o histc.
bar(axes_handle,___) traza dentro de los ejes con el manipulador axes_handle en vez del actual
eje (gca).
h = bar(___) retorna un vector de manipuladores a los objetos grficos barseries, uno por cada
creado.
69
mataurimaa@uni.pe
EJEMPLO: Modicar el script anterior de manera que la grfica del histograma se realice mediante barras.
graf2d019.m (script)
clc; clear;
2
3
4
5
% Talla de la muestra
T = 1000;
t = (1:T);
6
7
8
% Semilla
rand(seed,12345);
9
10
11
% Valores centrales
xc = (-4:0.5:4);
12
13
14
15
16
17
18
19
20
21
70
mataurimaa@uni.pe
22
grid on;
23
24
25
26
27
28
29
30
% Grafica de Histograma
subplot(2,1,2);
[n, xout] = hist(x,xc);
bar(xout,n);
title(Histograma de y_t);
xlabel(y_t);
grid on;
31
32
33
34
35
71
mataurimaa@uni.pe
yt
-2
-4
100
200
300
400
500
tiempo
600
700
800
900
1000
Histograma de y t
200
150
100
50
0
-5
-4
-3
-2
-1
0
yt
72
mataurimaa@uni.pe
III) Contorno
Una traza de contorno muestra isolineas de una matriz Z. La etiquetacin de las lneas de contorno
(curvas de nivel) se efecta usando clabel.
contour(Z) dibuja un trazo de contorno de la matriz Z, donde Z es interpretado como un conjunto
de alturas con respecto al plano x-y. Z debe ser por lo menos una matriz de 2 2 que contenga
por lo menos dos distintos valores. El nmero de lneas de contorno y los valores de las lneas de
contorno son elegidas automticamente basado en el mnimo y mximo valor de Z. Los rangos de
los ejes x e y son [1:n] y [1:m] respcetivamente, donde [m,n] = size(Z).
contour(Z,n) dibuja un trazo de contorno de la matriz Z con n lneas de contorno donde n es un
escalar.
contour(Z,v) dibuja un trazo de contorno de la matriz Z con lineas de contorno en los valores
do X e Y para determinar los lmites en los ejes X e Y. Cuando X e Y son matrices, ellas deben ser
del mismo tamao que Z y deben ser monotnicamente crecientes.
contour(...,LineSpec) dibuja los contorno usando el tipo de lnea y color especificados mediante
73
mataurimaa@uni.pe
Observaciones:
Se debe usar las propiedades del objeto contourgroup para controla la apariencia de las trazas de
contorno.
Si X o Y estn irregularmente espaciadas, contour calcula los contornos usando una malla de
contorno regularmente espaciada, y entonces transforma los datos de X o Y.
74
mataurimaa@uni.pe
2 y 2
sobre el rango 2 x 2, 2 y 3.
graf2d021.m (script)
1
2
clc;
clear;
3
4
5
6
7
8
% Evaluacin de la funcin
z = x.*exp(-x.^2-y.^2);
9
10
11
12
13
14
15
16
17
18
% Detalles
set(h, ShowText, on, ...
TextStep, get(h,LevelStep)*2, ...
EdgeColor, b);
set(gca, FontSize, 8);
axis([-2 2 -2 2]);
75
mataurimaa@uni.pe
2
1.5
-0 .1
0.2
-0
.2
0.1
0.4
0.
3
0.2
-0.4
.3
-0
0.1
-0 .2
0.5
-0
.1
-0 .2
-0 .1
-0
.1
-1
0.
3
0.1
.3
-0
-0.5
0.2
0.1
-1.5
-2
-2
-1.5
-1
-0.5
76
0.5
1.5
mataurimaa@uni.pe
1
2
clc;
clear;
3
4
5
% parmetros
A = 1; alfa = 0.5; beta = 0.5;
6
7
8
9
10
11
% Evaluacin de la funcin
z = A*x.^alfa.*y.^beta;
12
13
14
15
16
17
18
% Detalles
set(h, ShowText, on, ...
TextStep, get(h,LevelStep)*2, ...
77
mataurimaa@uni.pe
19
20
21
22
23
24
EdgeColor, b, ...
LineWidth, 2);
axis square;
xlabel(cantidad del bien x);
ylabel(cantidad del bien y);
title(Mapa de Curvas de Indiferencia)
78
mataurimaa@uni.pe
0.9
0.6
0.4
0.2
0.8
0.9
0.
7
0.7
0.6
0.7
0.5
4
0.
0.2
0.5
0.3
0.1
0.6
0.8
0.4
0.5
0.6
0.
3
0.3
0.5
0.1
0.4
0.2
0.1
0. 3
0.1
0
0
0.4
0.3
0.2
0.1
0.2
0.3
0.2
0.1
0.4
0.5
0.6
cantidad del bien x
79
0.7
0.8
0.2
0.1
0.9
1
mataurimaa@uni.pe
Eje con
Escala
Lineal
6000
Eje con
Escala
Logartmica
Una escala logartmica es tambin una escala grfica en uno (semilogartmica) o ambos lados de
una grfica (logartmica).
80
mataurimaa@uni.pe
1. Representacin semilogartmica
Una representacin semilogartmica es una representacin grfica de una funcin o de un conjunto
de valores numricos, en la que el eje de abscisas o el eje de ordenadas tienen escala logartmica
mientras el otro eje tiene una escala lineal o proporcional.
Los datos que siguen una variacin similar a una funcin exponencial
y = aebx a, b constantes
o aquellas serie de datos cuyo rango abarca varios rdenes de magnitud, son apropiados para una
representacin semilogartmica. Tomando logartmos a la expresin anterior se pone en evidencia
una relacin semilogartmica
log(y) = log(a) + b x
En MATLAB se utiliza los comandos:
semilogx(x,y): eje x en escala logartmica, eje y en escala lineal.
semilogy(x,y): eje x en escala lineal, eje y en escala logartmica.
81
mataurimaa@uni.pe
t
EJEMPLO: Graficar la sucesin {xt }10
t=0 con xt = 2 .
graf2d023.m (script)
clc; clear;
2
3
4
5
% Talla de la muestra
T = 10;
t = (1:T);
6
7
x = 2.^t;
8
9
10
11
12
13
14
15
16
17
subplot(1,2,1);
plot(t, x, o-, LineWidth, 2, ...
MarkerFaceColor, r, ...
MarkerEdgeColor, none, ...
MarkerSize, 5);
title(Representacin Lineal);
xlabel(tiempo);
grid on;
set(gca, FontSize, 8);
18
19
subplot(1,2,2);
82
mataurimaa@uni.pe
20
21
22
23
24
25
26
27
28
plot(t,x);
semilogy(t, x, o-, LineWidth, 2, ...
MarkerFaceColor, r, ...
MarkerEdgeColor, none, ...
MarkerSize, 5);
title(Representacin Semilogartmica);
xlabel(tiempo);
grid on;
set(gca, FontSize, 8);
83
mataurimaa@uni.pe
Representacin Lineal
Representacin Semilogartmica
1200
10
1000
3
10
800
600
10
400
1
10
200
10
10
tiempo
10
tiempo
84
mataurimaa@uni.pe
2. Representacin logartmica
Una representacin logartmica es una representacin grfica de una funcin o de un conjunto de
valores numricos, en la que el eje de abscisas y el eje de ordenadas tienen escala logartmica.
Los datos que siguen una variacin similar a una funcin exponencial
y = axb a, b constantes
o aquellas serie de datos cuyo rango abarca varios rdenes de magnitud, son apropiados para una
representacin semilogartmica. Tomando logartmos a la expresin anterior se pone en evidencia
una relacin semilogartmica
log(y) = log(a) + b log(x)
En MATLAB se utiliza el comando:
loglog(x,y): eje x en escala logartmica, eje y en escala logaritmica
85
mataurimaa@uni.pe
3
EJEMPLO: Graficar la sucesin {xt }10
t=0 con xt = 5t .
graf2d024.m (script)
clc; clear;
2
3
4
5
% Talla de la muestra
T = 10;
t = (1:T);
6
7
x = 5 *t.^3;
8
9
10
11
12
13
14
15
16
17
subplot(1,2,1);
plot(t, x, o-, LineWidth, 2, ...
MarkerFaceColor, r, ...
MarkerEdgeColor, none, ...
MarkerSize, 5);
title(Representacin Lineal);
xlabel(tiempo);
grid on;
set(gca, FontSize, 8);
18
19
subplot(1,2,2);
86
mataurimaa@uni.pe
20
21
22
23
24
25
26
27
28
plot(t,x);
loglog(t, x, o-, LineWidth, 2, ...
MarkerFaceColor, r, ...
MarkerEdgeColor, none, ...
MarkerSize, 5);
title(Representacin logartmica);
xlabel(tiempo);
grid on;
set(gca, FontSize, 8);
87
mataurimaa@uni.pe
Representacin Lineal
5000
Representacin logartmica
10
4500
4000
10
3500
3000
2500
10
2000
1500
10
1000
500
0
10
tiempo
10
0
10
10
tiempo
88
mataurimaa@uni.pe
Malla
y Barra
rea
y objetos
constructivos
Superficie
Direccin
Volumtrico
37
mataurimaa@uni.pe
89
mataurimaa@uni.pe
4.3.2.
Se debe especificar el dominio de graficacin a travs de vectores. Por ejemplo, especificamos tres
vectores,
x, y y z
Se deben seguir los siguientes pasos:
debe
el dominio de graficacin a travs de vectores.
>> x Se
= [1
3 especificar
5 8 6 4 2];
>> y = [2 4 5 7 6 4 1];
x = [1 3 5 8 6 4 2];
>> z = [2 6 7 8 9 10 12];
y = [2 4 5 7 6 4 1];
y = [2 6 7 8 9 10 12];
Con estos vectores se efecta la grfica de las muestras haciendo usando las funciones MATLAB para
el trazado
tridimensional.
ejemplo,
observaciones
Con
estos vectoresPor
se efecta
la podemos
grfica de representar
las muestrastridimensionalmente
haciendo usando las las
funciones
va los comandos
stem3
y scatter3
MATLAB para
el trazado
tridimensional
stem3(x,y,z)
scatter(x,y,z)
15
15
10
10
0
12
0
12
8
10
8
6
2
38
mataurimaa@uni.pe
10
90
mataurimaa@uni.pe
4.3.3.
>> t = 0:pi/10:10*pi
t =
0 0.3142 ... 31.1018 31.4159
Generar los vectores dominio a travs de alguna regla de correspondencia con la variable independiente.
>> x = t.*sin(t)
x =
0 0.0971 ... -9.6110 -0.0000
>> y = t.*cos(t)
y =
0 0.2988 ... 29.5795 31.4159
>> z = t.^2
z =
0 0.0987 ... 967.3199 986.9604
91
mataurimaa@uni.pe
UNIVERSIDAD
NACIONAL
pondencia
con
y DE
= INGENIERA
Facultad de Ingeniera Elctrica y Electrnica
0.2988
...
29.5795
31.4159
Graficar la curva descrita por los vectores obtenidos en el paso anterior usando las funciones
MATLAB parazel =
trazado de curvas tridimensionales plot3(x,y,z);
0.0987
>> plot3(x,y,z);
... 967.3199
986.9604
por los
aso anterior
TLAB para el
nsionales
400
Grfica de la curva
300
200
100
0
20
10
20
10
-10
-10
-20
-20
39
92
mataurimaa@uni.pe
4.3.4.
I) Forma Cartesiana
Son aquellas superficies definidas por ternas (x, y, z) donde a cada par (x, y) se le asigna un valor z
por medio de una regla de correspondencia f .
f : D R2 R
(x, y)
7 z = f (x, y)
Para graficar superficies en forma cartesiana en MATLAB se deben seguir los siguientes pasos:
93
mataurimaa@uni.pe
Transformar los vectores dominios a arreglos bidimensionales mediante la funcin meshgrid. Por
ejemplo:
>> Dx = -3:3;
>> Dy = -2:2;
>> [x,y] = meshgrid(Dx,Dy)
x =
-3
-2
-1
0
-3
-2
-1
0
-3
-2
-1
0
-3
-2
-1
0
-3
-2
-1
0
1
1
1
1
1
2
2
2
2
2
3
3
3
3
3
-2
-1
0
1
2
-2
-1
0
1
2
-2
-1
0
1
2
y =
-2
-1
0
1
2
-2
-1
0
1
2
-2
-1
0
1
2
-2
-1
0
1
2
94
mataurimaa@uni.pe
uientes
pasos:
Facultad
de Ingeniera Elctrica y Electrnica
Estas
sern usadas para evaluarlas funciones. Por ejemplo evaluemos la funcin z =
es dominios
a matrices
2 + y2
f
(x,
y)
=
x
es a travsde la
4
1
0
1
4
5
2
1
2
5
8
5
4
5
8
13
10
9
10
13
usadas para
evaluarla superficie utilizando las funciones MATLAB de trazado desuperficies/mallas tridiGraficamos
graficarlas mensionales.
usando Por ejemplo, usando surf obtendremos
B de trazado >>
desurf(x,y,z);
mensionales.
^2;
15
10
Grfica de la funcin
5
0
2
4
1
2
-1
-2 -4
-2
40
95
mataurimaa@uni.pe
clc; clear;
2
3
4
% Establecimiento de parmetros
A = 1; alfa = 0.5; beta = 0.5;
5
6
7
8
9
10
11
12
13
14
15
16
17
% Grficas
subplot(1,3,1); mesh(x,y,z);
title(Grfica de superficie usando mesh);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
set(gca, FontSize, 8)
axis equal;
96
mataurimaa@uni.pe
18
19
20
21
22
23
subplot(1,3,2); surf(x,y,z);
title(Grfica de superficie usando surf);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
set(gca, FontSize, 8)
axis equal;
24
25
26
27
28
29
subplot(1,3,3); surfl(x,y,z);
title(Grfica de superficie usando surfl);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
set(gca, FontSize, 8)
axis equal;
97
mataurimaa@uni.pe
0.8
0.8
0.6
0.6
0.6
0.4
0.2
eje Z
0.8
eje Z
eje Z
0.4
0.2
0
1
0.2
0
1
0
1
0.8
1
0.6
0.8
0.8
1
0.6
0.6
0.4
eje X
eje Y
0.8
1
0.6
98
eje X
0.4
0.2
0.2
0
0.8
0.6
0.4
0.4
0.2
0.2
0
0.8
0.6
0.4
0.4
0.2
eje Y
0.4
eje Y
0.2
0
eje X
mataurimaa@uni.pe
clc; clear;
2
3
4
% Establecimiento de parmetros
A = 1; alfa = 0.5; beta = 0.5;
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
% Iluminacin
camlight left;
21
99
mataurimaa@uni.pe
22
23
% Algoritmo de renderizacin
lighting phong;
24
25
26
27
28
% Detalles
title(Grfica de superficie Cobb-Douglas);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
axis equal;
100
mataurimaa@uni.pe
101
mataurimaa@uni.pe
EJEMPLO: Modifique el cdigo anterior mostrando 10 lneas de contorno (curvas de nivel) equiespaciadas
y con nfasis los niveles z = {0,2; 0,65; 0,7}.
graf3d003.m (script)
1
2
3
4
% Establecimiento de parmetros
A = 1; alfa = 0.5; beta = 0.5;
5
6
7
8
9
10
11
12
13
14
15
16
% Congelamos la grfica
hold on;
17
18
19
20
102
mataurimaa@uni.pe
21
22
23
24
25
26
% Descongelamos la grfica
hold off;
27
28
29
30
31
32
33
34
% Iluminacin
camlight left;
35
36
37
% Algoritmo de renderizacin
lighting phong;
38
39
40
41
42
% Detalles
title(Grfica de superficie Cobb-Douglas);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
axis equal;
103
mataurimaa@uni.pe
104
mataurimaa@uni.pe
EJEMPLO: Modifique el cdigo anterior mostrando 10 lneas de contorno (curvas de nivel) equiespaciadas
y con nfasis los niveles z = {0,2; 0,65; 0,7} para los siguientes casos:
+
Decreciente ( + < 1)
Constante ( + 1)
Crecientes ( + > 1)
Caso I
0.2 0.6
0.2 0.8
1.6 0.8
Caso II
0.6 0.2
0.8 0.2
0.8 1.6
Caso III
0.4 0.4
0.5 0.5
1.2 1.2
graf3d003.m (script)
1
2
function grafica3d03rpta
clc; clear; clf;
3
4
5
6
subplot(3,3,1); grafica(1,0.2,0.6);
subplot(3,3,2); grafica(1,0.6,0.2);
subplot(3,3,3); grafica(1,0.4,0.4);
7
8
9
10
subplot(3,3,4); grafica(1,0.2,0.8);
subplot(3,3,5); grafica(1,0.8,0.2);
subplot(3,3,6); grafica(1,0.5,0.5);
11
12
13
14
subplot(3,3,7); grafica(1,1.6,0.8);
subplot(3,3,8); grafica(1,0.8,1.6);
subplot(3,3,9); grafica(1,1.2,1.2);
105
mataurimaa@uni.pe
15
16
17
18
19
20
21
22
23
24
25
26
27
% Congelamos la grfica
hold on;
28
29
30
31
32
33
34
35
36
37
% Descongelamos la grfica
hold off;
38
106
mataurimaa@uni.pe
39
40
41
42
43
44
45
% Iluminacin
camlight left;
46
47
48
% Algoritmo de renderizacin
lighting phong;
49
50
51
52
53
54
55
56
% Detalles
strtitulo = [A= num2str(A) , \alpha= num2str(alfa) ...
, \beta= num2str(beta)];
title(strtitulo);
xlabel(eje X); ylabel(eje Y); zlabel(eje Z);
axis equal;
set(gca, FontSize, 10)
107
mataurimaa@uni.pe
108
mataurimaa@uni.pe
(u, v) =
= x (u, v)
= y (u, v) , (u, v) D
= z (u, v)
109
mataurimaa@uni.pe
EJEMPLO: Crear un script que permita realizar la grfica de un toroide circular, cuyas ecuaciones
paramtricas vienen dadas por
x = x (u, v) = (a + r cos v) cos u
y = y (u, v) = (a + r cos v) cos u
z = z (u, v) = r sin v
con a = 10, r = 4,5 y adems 0 u 2, 0 v 2.
graf3d004.m (script)
clc; clear;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
% Grafica de la superficie
110
mataurimaa@uni.pe
16
h = surfl(x,y,z);
17
18
19
20
21
22
23
% Iluminacin
camlight left;
24
25
26
% Algoritmo de renderizacin
lighting phong;
27
28
29
30
31
32
33
% Detalles
title(sprintf(Toroide circular (a = %5.2f, r = %5.2f), a, r));
xlabel(eje x);
ylabel(eje y);
zlabel(eje z);
axis equal;
111
mataurimaa@uni.pe
112
mataurimaa@uni.pe