Matlab graficas

NOMBRES:
Edwin Machado 205
Janeth Yumbillo 541
MATERIA: Herramientas EDA
Por las características propias del programa, los gráficos, en
concreto los 2D,
están orientados a la representación gráfica de vectores. Se
utiliza una ventana
especial para la creación de los gráficos: la ventana gráfica o
de dibujo y, dichos
gráficos se guardan en ficheros de extensión .fig.
El comando básico para la representación de gráficos 2D es el
comando plot.
Su sintaxis puede ser:
plot(x,y): dibuja el conjunto de puntos (x,y) donde las abscisas
de los puntos se encuentran en el vector x y las ordenadas en el
y.
Para representar una función f(x) es necesario conocer los
valores de puntos de la forma (x,f(x)). Para ello puede seguirse
alguno de estos caminos:
- Definir un vector x con el rango de variación donde se desea
pintar la función. Para ello puede ser muy útil el comando
linspace(xmin,xmax,n).
>> x=linspace(0,10,100);
>> y=sin(x);
>> plot(x,y)
También es posible dibujar una función con el comando fplot cuya
sintaxis
es la siguiente: fplot(‘f(x)’,[xmin,xmax])
Si se desea representar varias funciones a la vez las opciones son:
- plot(x,y,x,z) donde x el vector de las abscisas, común para las dos
representaciones, y es el de las ordenadas de la primera representación
y z
las de la segunda.
- fplot(‘[f1(x),f2(x),...]’,[xmin,xmax]) donde f1, f2, … son las funciones a
representar en el intervalo de variación marcado por xmin y xmax.
- Mediante el comando: hold on, hold off. Todos los gráficos que se
ordene dibujar entre los comandos hold on y hold off se representan
en la misma figura. Si hay una figura abierta se dibujan en ésta.
Ejemplo:
>> hold on
>> x=[-3*pi:1:3*pi];
>> plot(x,sin(x))
>> plot(x,tan(x),'r')
>> hold off
- El comando subplot. Una ventana gráfica se puede dividir en m particiones
horizontales y n verticales para representar mxn figuras. Cada una de las
particiones tendrá sus ejes aunque las propiedades serán comunes a todas
ellas. La sintaxis es: subplot(m,n,i), donde m y n son el número de
subdivisiones e i la subdivisión activa. Por ejemplo:
>> x=0:0.1:2*pi;
>> y=sin(x);z=cos(x);t=exp(-x);v=x^2;
>> subplot(2,2,1), plot(x,y) 51
>> subplot(2,2,2), plot(x,z)
>> subplot(2,2,3), plot(x,t)
>> subplot(2,2,4), plot(x,v)
Otras funciones con matlab
 Opciones de dibujo . Hemos visto
que el comando plot(x,y) dibuja los
gráficos con unas características
predefinidas en el programa, es
posible alterarlas a partir de
plot(x,y,s) donde s se compone de
dos dígitos entre comillas.
 >> plot(x,y,'-*g')
 Los colores vienen dados por: y:
amarillo, g: verde, m: magenta, b:
azul, c:
 cían, w: blanco, r: rojo, k: negro.
 Se puede modificar el grosor de
línea incluyendo la cadena:
‘Linewidth’,
 número_indicativo_del_grosor. Por
ejemplo: plot(x,y,'linewidth',2)
 También aquí Matlab tiene sus opciones
por defecto. En muchas ocasiones es
interesante alterarlas.
 Para definir otros se utiliza el comando
axis cuya sintaxis es: axis
([xmin,xmax,ymin,ymax]). axis(‘auto’)
devuelve la escala al valor por defecto.
 Destacar que: axis off elimina los ejes
del dibujo y axis on los incorpora.
 - Entrada de puntos con el ratón
 Matlab permite introducir las
coordenadas de los puntos sobre los que
se encuentra el cursor, al pinchar o al
pulsar alguna tecla. El comando que lo
realiza es ginput. Algunas formas de
utilizarlo son: [x,y]=ginput: lee los
puntos cada vez que se pincha o se pulsa
alguna tecla.
 Finaliza al pulsar intro. [x,y]=ginput(n):
lee las coordenadas de n puntos
La ventana gráfica de Matlab.
 La mayoría de las opciones de
cambio en una gráfica
presentadas con anterioridad,
pueden realizarse desde la
pantalla de dibujo
 En el menú edit aparecen entre
otros los comandos Figure
Properties, axes Properties y
Current Object Properties, con
ellos se abre paso a los editores
correspondientes donde se nos
da la posibilidad de cambiar las
opciones de dibujo
Superposición de gráficos
 Usando line
(x, y, 'parametros', 'valor‘)
Parametros, color
linestyle, Marker.
 %Ejemplo de hold
x=linspace(0, 2*pi, 100)
y1=sin(x)
plot(x, y1)
y2= x- (x.^3)/6 + (x.^5)/120
line(x, y2, 'marker', 'o')
line(x, x, 'linestyle', '--')
axis ([ 0 5 -1 5])
legend('sin(t)', 'Aproximacion
3er
orden', 'lineal')
Objetos gráficos
 Podemos añadir objetos al
grafico actual:
 xlabel('etiqueta del eje x')
 ylabel('etiqueta eje y')
 title('titulo del grafico')
 text (x, y, 'texto')
 Si x e y son vectores, el texto
se repite. Si texto es una
matrix de cadenas, de la
misma dimensión que x e y, se
sitúa cada texto en una
posición
 gtext('texto'): la posición se
indica con el ratón.
 (solo en Matlab)
Comandos para los Gráficos
 En primer lugar, comandos genéricos y
comandos orientados a gráficos
bidimensionales: – figure(n): Las
representaciones de gráficos en matlab
se realizan en ventanas graficas. En un
momento dado puede haber varias
ventanas graficas abiertas. La función
figure se utiliza para abrir una nueva
ventana grafica que será numerada de
acuerdo con el parámetro, o bien, si ya
existe una ventana con ese numero, se
convertirá en la ventana grafica
activa, donde se realizará la próxima
representación grafica.
 – clf: Limpia la ventana gráfica activa.
 – close(n): Para cerrar una ventana
gráfica.
 close all cierra todas las ventanas
gráficas.
 – title: permite añadir un
título a la grafica
 – xlabel: añadir una etiqueta
al eje horizontal de la grafica
 – ylabel: añadir etiqueta al eje
vertical
 – grid: añadir una rejilla
 – axis: permite modificar los
límites de los ejes horizontal
y vertical
 – text: añadir un texto en una
posición cualquiera de la
grafica
 – gtext: igual que text pero
permite seleccionar la
ubicación del texto mediante
el ratón.
La versión 3D de plot es
plot3(u1, v1, w1, c1, u2, v2, w2, c2,…)
Donde uj, vj, y wj son las coordenadas x, y, y z, respectivamente, de un
punto.
Son escalares, vectores de la misma longitud, matrices del mismo
orden, o expresiones que, cuando se evalúan, resultan en una de esas
cantidades. Para dibujar un conjunto de n líneas sin conectar cuyos
puntos finales son
(x1j,y1j,z1j) y (x2j,y2j,z2j), j = 1, 2, …, n
• Así, plot3 es
y = y y … y j = ,
x1 = […]; x2 = […];
y1 = […]; y2 = […];
z1 = […]; z2 = […];
plot3([x1; x2], [y1; y2], [z1; z2])
donde [x1; x2], [y1; y2], y [z1; z2] son matrices de
(2×n)
Todos los procedimientos de anotación descritas para los
gráficos 2D son aplicables a las funciones de generación de
curvas y superficies 3D, excepto que los argumentos de text se
usa
text(x, y, z, s)
donde s es un string y
zlabel
se usa para etiquetar el eje z
function BoxPlot3(x0, y0, z0, Lx, Ly, Lz)
x = [x0, x0, x0, x0, x0+Lx, x0+Lx, x0+Lx, x0+Lx]; %(1×8)
y = [y0, y0, y0+Ly, y0+Ly, y0, y0, y0+Ly, y0+Ly]; %(1×8)
z = [z0, z0+Lz, z0+Lz, z0, z0, z0+Lz, z0+Lz, z0]; %(1×8)
index = zeros(6,5);
index(1,:) = [1 2 3 4 1];
index(2,:) = [5 6 7 8 5];
index(3,:) = [1 2 6 5 1];
index(4,:) = [4 3 7 8 4];
index(5,:) = [2 6 7 3 2];
index(6,:) = [1 5 8 4 1];
for k = 1:6
plot3(x(index(k,:)), y(index(k,:)), z(index(k,:)))
Ejemplo: Onda senoidal sobre una
superficie de un cilindro
 Las coordenadas de una onda
senoidal sobre la superficie de un
cilindro se obtiene con
 x = b cos(t) si a=10.0
 y = b sin(t) b=1.0
 z = ccos(at) c=0.3
 0<=t<=2pi, el scrip es
 t = linspace(0, 2*pi, 200);
 a = 10; b = 1.0; c = 0.3;
 x = b*cos(t);
 y = b*sin(t);
 z = c*cos(a*t);
 plot3(x, y, z, 'k')
 axis equal
Matlab contiene un conjunto de funciones gráficas 3D para crear
superficies, contornos, y variaciones, así como especializaciones de
esas formas básicas • Una superficie se define por la expresión
z = f (x, y)
donde x e y son las coordenadas en el plano-xy y z
es la altura resultante.
Las funciones básicas de graficación de superficies son
surf(x, y, z) y mesh(x, y, z) donde x, y, z son las coordenadas de los
puntos en la superficie.
surf – dibuja una superficie compuesta de parches de colores que
dependen de la magnitud z
mesh – dibuja parches de superficies blancas que se
definen por su contorno.
Ejemplos de superficies
 Se requiere dibujar una
superficie definida por definida
en el rango −3 < x < 3 y −3 < y <
13 Se genera la función
SurfExample para calcular las
 z(x, y) = x4 + 3x2 + y2 - 2x - 2 y -
2x2 y + 6
 coordenadas x, y ,z
 function [x, y, z] = SurfExample
 x1 = linspace(-3, 3, 15); % (1×15)
 y1 = linspace(-3, 13, 17); % (1×17)
 [x, y] = meshgrid(x1, y1); %
(17×15)
z = x.^4+3*x.^2−2*x+6-
2*y.*x.^2+y.^2-2*y; % (17×15)
Gráficos de contornos
 Las superficies también se
pueden transformar en
gráficos de contornos, que
son gráficos de curvas
formadas por la intersección
de la superficie y un plano
paralelo al plano xy en
valores específicos de z
 Las funciones surfc(x, y, z) y
meshc(x, y, z) crean
superficies con contornos
proyectados debajo de la
superficie. x, y, z son los
valores de las coordenadas de
puntos que definen la
superficie
 Se pueden crear contornos
sin visualizar la
superficie, con etiquetas o
sin etiquetas
 La función
contour(x, y, z, v) crea un
gráfico de contorno donde
x, y, z son las coordenadas
de los puntos que definen
la superficie v, si es un
escalar, es el número de
niveles de contornos a
visualizar y, si es un vector
de valores, los contornos
de la superficie en los
valores de z. El uso de v es
opcional.
Si se quiere etiquetar el contorno se usan las funciones
[C, h] = contour(x, y, z, v)
clabel(C, h, v)
Gráficos de contornos 3D
 Para obtener los contornos
de superficies en 3D, se usa
contour3(x, y, z, v) donde
x, y, z son las coordenadas
de los puntos de la
superficie v, si es un
escalar, es el número de
niveles de contornos a
visualizar y, si es un vector
de valores, los contornos
de la superficie en los
valores de z. El uso de v es
opcional
 Para etiquetar los
contornos se usa [C, h] =
contour3(x, y, z, v)
clabel(C, h, v)
Para una esfera de radio a y un elipsoide con su eje
mayor en la dirección x igual a 2a, eje menor en la
dirección y igual a 2b, y un eje menor en la dirección
z igual a 2c, la proporción del volumen de un elipsoide
con relación al volumen de una esfera es
Se crea el siguiente programa para mejorar la
comprensión de un gráfico de V como función de b/a
para varios valores de c/a
mejora de gráficos 2D con
objetos 3D (código) b = [0.5, 1]; c = b;
for k = 1:2
plot(b, b*c(k), 'k-')
text(0.75, (b(1)*c(k)+b(2)*c(k))/2-0.02, ['c/a =
'num2str(c(k))])
hold on
end
xlabel('b/a') ylabel('V')
for k = 1:4
K
switch case 1
axes('position', [0.12, 0.2, 0.2, 0.2])
[xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(1), c(1), 20);
mesh(xs, ys, zs)
text(0, 0, 1, ['b/a = ' num2str(b(1)) ' c/a = '
num2str(c(1))])
case 2
axes ('position', [0.1, 0.5, 0.2, 0.2])
[xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(1), c(2), 20);
mesh (xs, ys, zs)
text (0, 0, 1.5, ['b/a = ' num2str(b(1)) ' c/a = '
num2str(c(2))])
 case 3
axes ('position', [0.7, 0.65, 0.2, 0.2])
[xs, ys, zs] =
ellipsoid(0, 0, 0, 1, b(2), c(2), 20);
mesh (xs, ys, zs)
text (-1.5, 0, 2, ['b/a = ' num2str(b(2)) '
c/a = ' num2str(c(2))])
case 4
axes ('position', [0.7, 0.38, 0.2, 0.2])
[xs, ys, zs] =
ellipsoid(0, 0, 0, 1, b(2), c(1), 20);
mesh (xs, ys, zs)
text (-1.5, 0, 1.5, ['b/a = ' num2str(b(2)) '
c/a = ' num2str(c(1))])
end
colormap([0 0 0])
axis equal off
end
Matlab graficas
GRACIAS POR VER
ESTE TRABAJO
1 sur 23

Recommandé

Graficos en matlab par
Graficos en matlabGraficos en matlab
Graficos en matlabMarc Llanos
33.2K vues71 diapositives
Matlab sesion3 par
Matlab sesion3Matlab sesion3
Matlab sesion3José Caraguay
7.3K vues12 diapositives
Graficas en matlab 2 d y 3d par
Graficas en matlab 2 d y 3dGraficas en matlab 2 d y 3d
Graficas en matlab 2 d y 3dSebastian Cuenca
2.4K vues20 diapositives
Gráficas en Matlab par
Gráficas en MatlabGráficas en Matlab
Gráficas en MatlabGaby Solano
1.8K vues16 diapositives
Graficas 2D y 3D par
Graficas 2D y 3DGraficas 2D y 3D
Graficas 2D y 3DEdu Morán
2.4K vues16 diapositives
Graficas en matlab par
Graficas  en matlabGraficas  en matlab
Graficas en matlabAlexandrius Venegas
1.7K vues22 diapositives

Contenu connexe

Tendances

Graficas en matlab par
Graficas en matlabGraficas en matlab
Graficas en matlabPaul Martin Lopez
4.9K vues17 diapositives
Deber graficas en matlab par
Deber graficas en matlabDeber graficas en matlab
Deber graficas en matlabSam Chimborazo
11.8K vues29 diapositives
Matlab caudraticas2 par
Matlab caudraticas2Matlab caudraticas2
Matlab caudraticas2Carlos Santis
10.7K vues3 diapositives
Graficas en 2 d y 3d matlab par
Graficas en 2 d y 3d matlabGraficas en 2 d y 3d matlab
Graficas en 2 d y 3d matlabJuan Ete
83.5K vues31 diapositives
Matlab 2 Capitulo 6 par
Matlab 2 Capitulo 6Matlab 2 Capitulo 6
Matlab 2 Capitulo 6guest4f4d78d
41.7K vues28 diapositives
Graficas en matlab juan villacis 2 do b par
Graficas en matlab juan villacis 2 do bGraficas en matlab juan villacis 2 do b
Graficas en matlab juan villacis 2 do bN0VA6
524 vues28 diapositives

En vedette

Guia rapida de matlab (comandos basicos, graficacion y programacion) par
Guia rapida de matlab (comandos basicos, graficacion y programacion)Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)morones.om
199.6K vues47 diapositives
Tutorial matlab par
Tutorial matlabTutorial matlab
Tutorial matlabMocha Danny
3.1K vues30 diapositives
Lab 01 - Análisis de señales - UNTECS par
Lab 01 - Análisis de señales - UNTECSLab 01 - Análisis de señales - UNTECS
Lab 01 - Análisis de señales - UNTECSIng. Electrónica xD
28.7K vues19 diapositives
UCD overview par
UCD overviewUCD overview
UCD overviewRavi Shyam
2K vues26 diapositives
Letter for internship (1) par
Letter for internship (1)Letter for internship (1)
Letter for internship (1)badiuzaman
1.1K vues1 diapositive
Image180314132400 par
Image180314132400Image180314132400
Image180314132400Merche Cobo Barquín
192 vues1 diapositive

En vedette(18)

Guia rapida de matlab (comandos basicos, graficacion y programacion) par morones.om
Guia rapida de matlab (comandos basicos, graficacion y programacion)Guia rapida de matlab (comandos basicos, graficacion y programacion)
Guia rapida de matlab (comandos basicos, graficacion y programacion)
morones.om199.6K vues
Letter for internship (1) par badiuzaman
Letter for internship (1)Letter for internship (1)
Letter for internship (1)
badiuzaman1.1K vues
Designing Online Engagement to Collaborate with Your Community par NTEN
Designing Online Engagement to Collaborate with Your CommunityDesigning Online Engagement to Collaborate with Your Community
Designing Online Engagement to Collaborate with Your Community
NTEN615 vues
Motor skills powerpoint par crock1ne
Motor skills powerpointMotor skills powerpoint
Motor skills powerpoint
crock1ne2K vues
How sales operations can double your sales team's productivity par Heinz Marketing Inc
How sales operations can double your sales team's productivityHow sales operations can double your sales team's productivity
How sales operations can double your sales team's productivity
Tugas ekonomi islam par Ana Tamara
Tugas ekonomi islamTugas ekonomi islam
Tugas ekonomi islam
Ana Tamara265 vues
インタビュー記事 par Nakayasu
インタビュー記事インタビュー記事
インタビュー記事
Nakayasu860 vues
amoxicilin determination by Hplc .prepared by :Razhan Salah othman par shaqlawa institude
amoxicilin determination by Hplc .prepared by :Razhan Salah othman amoxicilin determination by Hplc .prepared by :Razhan Salah othman
amoxicilin determination by Hplc .prepared by :Razhan Salah othman
shaqlawa institude1.1K vues
Control de Asistencia (Presencia), Planificacion de Horarios para la contrucción par antonio-902
Control de Asistencia (Presencia), Planificacion de Horarios para la contrucciónControl de Asistencia (Presencia), Planificacion de Horarios para la contrucción
Control de Asistencia (Presencia), Planificacion de Horarios para la contrucción
antonio-902766 vues
Impacto de las TICs en la cultura de la mediación a distancia para la educaci... par pamela
Impacto de las TICs en la cultura de la mediación a distancia para la educaci...Impacto de las TICs en la cultura de la mediación a distancia para la educaci...
Impacto de las TICs en la cultura de la mediación a distancia para la educaci...
pamela723 vues

Similaire à Matlab graficas

Graficas en matlab juan villacis 2 do b par
Graficas en matlab juan villacis 2 do bGraficas en matlab juan villacis 2 do b
Graficas en matlab juan villacis 2 do bN0VA6
624 vues28 diapositives
Graficas en matlab juan villacis 2 do b par
Graficas en matlab juan villacis 2 do bGraficas en matlab juan villacis 2 do b
Graficas en matlab juan villacis 2 do bN0VA6
130 vues28 diapositives
Deber graficas en matlab par
Deber graficas en matlabDeber graficas en matlab
Deber graficas en matlabSam Chimborazo
736 vues29 diapositives
Graficos matlab par
Graficos matlabGraficos matlab
Graficos matlabDenise Cris
22.4K vues30 diapositives
clase 7 GRAFICOS 2D.pdf par
clase 7 GRAFICOS 2D.pdfclase 7 GRAFICOS 2D.pdf
clase 7 GRAFICOS 2D.pdfNandoMartiHufer
15 vues95 diapositives
Matlab graficos3 d par
Matlab graficos3 dMatlab graficos3 d
Matlab graficos3 dRobert Axl Malaver Uriarte
660 vues75 diapositives

Similaire à Matlab graficas(20)

Graficas en matlab juan villacis 2 do b par N0VA6
Graficas en matlab juan villacis 2 do bGraficas en matlab juan villacis 2 do b
Graficas en matlab juan villacis 2 do b
N0VA6624 vues
Graficas en matlab juan villacis 2 do b par N0VA6
Graficas en matlab juan villacis 2 do bGraficas en matlab juan villacis 2 do b
Graficas en matlab juan villacis 2 do b
N0VA6130 vues
Graficos matlab par Denise Cris
Graficos matlabGraficos matlab
Graficos matlab
Denise Cris22.4K vues
gráficas 2D y 3D (José Ponce) par José Ponce
gráficas 2D y 3D (José  Ponce)gráficas 2D y 3D (José  Ponce)
gráficas 2D y 3D (José Ponce)
José Ponce1.2K vues
Funciones par Yazmin
FuncionesFunciones
Funciones
Yazmin380 vues

Matlab graficas

  • 1. NOMBRES: Edwin Machado 205 Janeth Yumbillo 541 MATERIA: Herramientas EDA
  • 2. Por las características propias del programa, los gráficos, en concreto los 2D, están orientados a la representación gráfica de vectores. Se utiliza una ventana especial para la creación de los gráficos: la ventana gráfica o de dibujo y, dichos gráficos se guardan en ficheros de extensión .fig.
  • 3. El comando básico para la representación de gráficos 2D es el comando plot. Su sintaxis puede ser: plot(x,y): dibuja el conjunto de puntos (x,y) donde las abscisas de los puntos se encuentran en el vector x y las ordenadas en el y. Para representar una función f(x) es necesario conocer los valores de puntos de la forma (x,f(x)). Para ello puede seguirse alguno de estos caminos: - Definir un vector x con el rango de variación donde se desea pintar la función. Para ello puede ser muy útil el comando linspace(xmin,xmax,n).
  • 4. >> x=linspace(0,10,100); >> y=sin(x); >> plot(x,y) También es posible dibujar una función con el comando fplot cuya sintaxis es la siguiente: fplot(‘f(x)’,[xmin,xmax]) Si se desea representar varias funciones a la vez las opciones son: - plot(x,y,x,z) donde x el vector de las abscisas, común para las dos representaciones, y es el de las ordenadas de la primera representación y z las de la segunda. - fplot(‘[f1(x),f2(x),...]’,[xmin,xmax]) donde f1, f2, … son las funciones a representar en el intervalo de variación marcado por xmin y xmax. - Mediante el comando: hold on, hold off. Todos los gráficos que se ordene dibujar entre los comandos hold on y hold off se representan en la misma figura. Si hay una figura abierta se dibujan en ésta.
  • 5. Ejemplo: >> hold on >> x=[-3*pi:1:3*pi]; >> plot(x,sin(x)) >> plot(x,tan(x),'r') >> hold off - El comando subplot. Una ventana gráfica se puede dividir en m particiones horizontales y n verticales para representar mxn figuras. Cada una de las particiones tendrá sus ejes aunque las propiedades serán comunes a todas ellas. La sintaxis es: subplot(m,n,i), donde m y n son el número de subdivisiones e i la subdivisión activa. Por ejemplo: >> x=0:0.1:2*pi; >> y=sin(x);z=cos(x);t=exp(-x);v=x^2; >> subplot(2,2,1), plot(x,y) 51 >> subplot(2,2,2), plot(x,z) >> subplot(2,2,3), plot(x,t) >> subplot(2,2,4), plot(x,v)
  • 6. Otras funciones con matlab  Opciones de dibujo . Hemos visto que el comando plot(x,y) dibuja los gráficos con unas características predefinidas en el programa, es posible alterarlas a partir de plot(x,y,s) donde s se compone de dos dígitos entre comillas.  >> plot(x,y,'-*g')  Los colores vienen dados por: y: amarillo, g: verde, m: magenta, b: azul, c:  cían, w: blanco, r: rojo, k: negro.  Se puede modificar el grosor de línea incluyendo la cadena: ‘Linewidth’,  número_indicativo_del_grosor. Por ejemplo: plot(x,y,'linewidth',2)  También aquí Matlab tiene sus opciones por defecto. En muchas ocasiones es interesante alterarlas.  Para definir otros se utiliza el comando axis cuya sintaxis es: axis ([xmin,xmax,ymin,ymax]). axis(‘auto’) devuelve la escala al valor por defecto.  Destacar que: axis off elimina los ejes del dibujo y axis on los incorpora.  - Entrada de puntos con el ratón  Matlab permite introducir las coordenadas de los puntos sobre los que se encuentra el cursor, al pinchar o al pulsar alguna tecla. El comando que lo realiza es ginput. Algunas formas de utilizarlo son: [x,y]=ginput: lee los puntos cada vez que se pincha o se pulsa alguna tecla.  Finaliza al pulsar intro. [x,y]=ginput(n): lee las coordenadas de n puntos
  • 7. La ventana gráfica de Matlab.  La mayoría de las opciones de cambio en una gráfica presentadas con anterioridad, pueden realizarse desde la pantalla de dibujo  En el menú edit aparecen entre otros los comandos Figure Properties, axes Properties y Current Object Properties, con ellos se abre paso a los editores correspondientes donde se nos da la posibilidad de cambiar las opciones de dibujo
  • 8. Superposición de gráficos  Usando line (x, y, 'parametros', 'valor‘) Parametros, color linestyle, Marker.  %Ejemplo de hold x=linspace(0, 2*pi, 100) y1=sin(x) plot(x, y1) y2= x- (x.^3)/6 + (x.^5)/120 line(x, y2, 'marker', 'o') line(x, x, 'linestyle', '--') axis ([ 0 5 -1 5]) legend('sin(t)', 'Aproximacion 3er orden', 'lineal')
  • 9. Objetos gráficos  Podemos añadir objetos al grafico actual:  xlabel('etiqueta del eje x')  ylabel('etiqueta eje y')  title('titulo del grafico')  text (x, y, 'texto')  Si x e y son vectores, el texto se repite. Si texto es una matrix de cadenas, de la misma dimensión que x e y, se sitúa cada texto en una posición  gtext('texto'): la posición se indica con el ratón.  (solo en Matlab)
  • 10. Comandos para los Gráficos  En primer lugar, comandos genéricos y comandos orientados a gráficos bidimensionales: – figure(n): Las representaciones de gráficos en matlab se realizan en ventanas graficas. En un momento dado puede haber varias ventanas graficas abiertas. La función figure se utiliza para abrir una nueva ventana grafica que será numerada de acuerdo con el parámetro, o bien, si ya existe una ventana con ese numero, se convertirá en la ventana grafica activa, donde se realizará la próxima representación grafica.  – clf: Limpia la ventana gráfica activa.  – close(n): Para cerrar una ventana gráfica.  close all cierra todas las ventanas gráficas.  – title: permite añadir un título a la grafica  – xlabel: añadir una etiqueta al eje horizontal de la grafica  – ylabel: añadir etiqueta al eje vertical  – grid: añadir una rejilla  – axis: permite modificar los límites de los ejes horizontal y vertical  – text: añadir un texto en una posición cualquiera de la grafica  – gtext: igual que text pero permite seleccionar la ubicación del texto mediante el ratón.
  • 11. La versión 3D de plot es plot3(u1, v1, w1, c1, u2, v2, w2, c2,…) Donde uj, vj, y wj son las coordenadas x, y, y z, respectivamente, de un punto. Son escalares, vectores de la misma longitud, matrices del mismo orden, o expresiones que, cuando se evalúan, resultan en una de esas cantidades. Para dibujar un conjunto de n líneas sin conectar cuyos puntos finales son (x1j,y1j,z1j) y (x2j,y2j,z2j), j = 1, 2, …, n • Así, plot3 es y = y y … y j = , x1 = […]; x2 = […]; y1 = […]; y2 = […]; z1 = […]; z2 = […]; plot3([x1; x2], [y1; y2], [z1; z2]) donde [x1; x2], [y1; y2], y [z1; z2] son matrices de (2×n)
  • 12. Todos los procedimientos de anotación descritas para los gráficos 2D son aplicables a las funciones de generación de curvas y superficies 3D, excepto que los argumentos de text se usa text(x, y, z, s) donde s es un string y zlabel se usa para etiquetar el eje z
  • 13. function BoxPlot3(x0, y0, z0, Lx, Ly, Lz) x = [x0, x0, x0, x0, x0+Lx, x0+Lx, x0+Lx, x0+Lx]; %(1×8) y = [y0, y0, y0+Ly, y0+Ly, y0, y0, y0+Ly, y0+Ly]; %(1×8) z = [z0, z0+Lz, z0+Lz, z0, z0, z0+Lz, z0+Lz, z0]; %(1×8) index = zeros(6,5); index(1,:) = [1 2 3 4 1]; index(2,:) = [5 6 7 8 5]; index(3,:) = [1 2 6 5 1]; index(4,:) = [4 3 7 8 4]; index(5,:) = [2 6 7 3 2]; index(6,:) = [1 5 8 4 1]; for k = 1:6 plot3(x(index(k,:)), y(index(k,:)), z(index(k,:)))
  • 14. Ejemplo: Onda senoidal sobre una superficie de un cilindro  Las coordenadas de una onda senoidal sobre la superficie de un cilindro se obtiene con  x = b cos(t) si a=10.0  y = b sin(t) b=1.0  z = ccos(at) c=0.3  0<=t<=2pi, el scrip es  t = linspace(0, 2*pi, 200);  a = 10; b = 1.0; c = 0.3;  x = b*cos(t);  y = b*sin(t);  z = c*cos(a*t);  plot3(x, y, z, 'k')  axis equal
  • 15. Matlab contiene un conjunto de funciones gráficas 3D para crear superficies, contornos, y variaciones, así como especializaciones de esas formas básicas • Una superficie se define por la expresión z = f (x, y) donde x e y son las coordenadas en el plano-xy y z es la altura resultante. Las funciones básicas de graficación de superficies son surf(x, y, z) y mesh(x, y, z) donde x, y, z son las coordenadas de los puntos en la superficie. surf – dibuja una superficie compuesta de parches de colores que dependen de la magnitud z mesh – dibuja parches de superficies blancas que se definen por su contorno.
  • 16. Ejemplos de superficies  Se requiere dibujar una superficie definida por definida en el rango −3 < x < 3 y −3 < y < 13 Se genera la función SurfExample para calcular las  z(x, y) = x4 + 3x2 + y2 - 2x - 2 y - 2x2 y + 6  coordenadas x, y ,z  function [x, y, z] = SurfExample  x1 = linspace(-3, 3, 15); % (1×15)  y1 = linspace(-3, 13, 17); % (1×17)  [x, y] = meshgrid(x1, y1); % (17×15) z = x.^4+3*x.^2−2*x+6- 2*y.*x.^2+y.^2-2*y; % (17×15)
  • 17. Gráficos de contornos  Las superficies también se pueden transformar en gráficos de contornos, que son gráficos de curvas formadas por la intersección de la superficie y un plano paralelo al plano xy en valores específicos de z  Las funciones surfc(x, y, z) y meshc(x, y, z) crean superficies con contornos proyectados debajo de la superficie. x, y, z son los valores de las coordenadas de puntos que definen la superficie  Se pueden crear contornos sin visualizar la superficie, con etiquetas o sin etiquetas  La función contour(x, y, z, v) crea un gráfico de contorno donde x, y, z son las coordenadas de los puntos que definen la superficie v, si es un escalar, es el número de niveles de contornos a visualizar y, si es un vector de valores, los contornos de la superficie en los valores de z. El uso de v es opcional.
  • 18. Si se quiere etiquetar el contorno se usan las funciones [C, h] = contour(x, y, z, v) clabel(C, h, v)
  • 19. Gráficos de contornos 3D  Para obtener los contornos de superficies en 3D, se usa contour3(x, y, z, v) donde x, y, z son las coordenadas de los puntos de la superficie v, si es un escalar, es el número de niveles de contornos a visualizar y, si es un vector de valores, los contornos de la superficie en los valores de z. El uso de v es opcional  Para etiquetar los contornos se usa [C, h] = contour3(x, y, z, v) clabel(C, h, v)
  • 20. Para una esfera de radio a y un elipsoide con su eje mayor en la dirección x igual a 2a, eje menor en la dirección y igual a 2b, y un eje menor en la dirección z igual a 2c, la proporción del volumen de un elipsoide con relación al volumen de una esfera es Se crea el siguiente programa para mejorar la comprensión de un gráfico de V como función de b/a para varios valores de c/a
  • 21. mejora de gráficos 2D con objetos 3D (código) b = [0.5, 1]; c = b; for k = 1:2 plot(b, b*c(k), 'k-') text(0.75, (b(1)*c(k)+b(2)*c(k))/2-0.02, ['c/a = 'num2str(c(k))]) hold on end xlabel('b/a') ylabel('V') for k = 1:4 K switch case 1 axes('position', [0.12, 0.2, 0.2, 0.2]) [xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(1), c(1), 20); mesh(xs, ys, zs) text(0, 0, 1, ['b/a = ' num2str(b(1)) ' c/a = ' num2str(c(1))]) case 2 axes ('position', [0.1, 0.5, 0.2, 0.2]) [xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(1), c(2), 20); mesh (xs, ys, zs) text (0, 0, 1.5, ['b/a = ' num2str(b(1)) ' c/a = ' num2str(c(2))])  case 3 axes ('position', [0.7, 0.65, 0.2, 0.2]) [xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(2), c(2), 20); mesh (xs, ys, zs) text (-1.5, 0, 2, ['b/a = ' num2str(b(2)) ' c/a = ' num2str(c(2))]) case 4 axes ('position', [0.7, 0.38, 0.2, 0.2]) [xs, ys, zs] = ellipsoid(0, 0, 0, 1, b(2), c(1), 20); mesh (xs, ys, zs) text (-1.5, 0, 1.5, ['b/a = ' num2str(b(2)) ' c/a = ' num2str(c(1))]) end colormap([0 0 0]) axis equal off end