Plots
-
Upload
enric-cecilla-real -
Category
Documents
-
view
5 -
download
1
Transcript of Plots
![Page 1: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/1.jpg)
Curso introductorio a Matlab
BrainlabNoviembre 2008
![Page 2: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/2.jpg)
Contenidos del curso• Entorno Matlab.• Tipos de datos básicos.• Funciones y operaciones con arrays.• Notación “:” y array slice.• Operaciones lógicas.• Operaciones matemáticas.• Gráficos.• Miscelánea.• Ciclo de vida del software.• Tipos de datos.• Estructuras de control.• Descomposición funcional y diseño descendente.• Funciones.• Recursividad.• Debug.• Proyecto Final.
Matlab CLI
Programación en Matlab
![Page 3: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/3.jpg)
plots(1)
• Un plot es una representación gráfica de los datos que nos permite echar un vistazo a los mismos de forma rápida.
• Hay varios tipos de plots: 2d, 3d, raster.• Para representar una función debemos
evaluar dicha función en varios puntos y trazar una línea que los una.
• Para crear una nueva ventana gráfica llamaremos a la función figure que nos devuelve el handle de la ventana.
![Page 4: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/4.jpg)
plots(2)
• Para saber el handle actual llamaremos a gcf.• El número de puntos en los que evaluar la
función es importante:
• Podemos mostrar diferentes funciones/datos en la misma figura.
>> N = 10;>> x=0:1/N:1;>> y = sin(3*pi*x);>> plot(x,y)>> N=100;…
![Page 5: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/5.jpg)
plots(3)
• Podemos poner títulos, anotaciones, cuadrícula y cambiar el estilo de línea.
• Podemos sobreescribir un plot encima de otro rellamando a la función plot, si queremos que las gráficas permanezcan juntas en la ventana gráfica habrá que llamar a hold on/hold off.
>> plot(x,y,’r-.’)>> title(‘grafico de y = sin(3pi x)')>> xlabel(‘eje x')>> ylabel(‘eje y')>> grid
![Page 6: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/6.jpg)
plots(4)
• Podemos guardar a disco el plot o bien desde menú o bien con el comando print. Se pueden especificar varios formatos en el momento de escribir a disco.
• También podemos poner varios plots en una misma figura con el comando subplot.
>> print -djpeg100 fig1>> print -deps fig1
![Page 7: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/7.jpg)
plots(5)
>> subplot(2,1,1)>> plot(t,y)>> subplot(2,1,2)>> plot(t,randn(1,101),'r')
0 1 2 3 4 5 6 7-1
-0.5
0
0.5
1
0 20 40 60 80 100 120-4
-2
0
2
4
![Page 8: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/8.jpg)
plots(6)
• Podemos hacer un zoom sobre la imagen seleccionando el trozo de imagen que queremos visualizar, también podemos activarlo desde la interfaz gráfica.
• Se puede especificar el estilo de línea cuando invocamos a plot, el trazo el color y el marcador.
>> zoom
>> plot(t,y,':or');>> plot(t,y,':^g');
![Page 9: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/9.jpg)
plots(7)
• Otra función que hace algo parecido es stem:
• Se pueden visualizar tanto los marcadores como las líneas:
>> t=0:.1:10;>> y = exp(-t);>> stem(t,y,'g:');
>> x = 0:pi/15:4*pi;>> y = exp(2*cos(x));>> plot(x,y,'-r',x,y,'ok')
![Page 10: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/10.jpg)
plots(8)
• Un aspecto muy importante de la visualización son los ejes, la cota de referencia para interpretar los datos, la podemos consultar y cambiar.
>> x = 0:pi/15:4*pi;>> y = exp(2*cos(x));>> plot(x,y,'-r',x,y,'ok');>> axis([0 14 0 16]);>> axis([4 10 2 inf]);
![Page 11: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/11.jpg)
plots(9)
• Otro aspecto a modificar son las etiquetas de las gráficas, podemos cambiar el valor por defecto que escribe el comando.>> t=-pi:2*pi/100:pi;>> y=sin(t);>> plot(t,y);>> xlabel('-\pi \leq \Theta \leq \pi');>> ylabel('sin(\Theta)');>> title('Plot of sin(\Theta)');>> set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'});>> set(gca,'XTick',-pi:pi/2:pi);>> set(gca,'XTickLabel',{'-pi','-pi/2','0','pi/2','pi'});
![Page 12: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/12.jpg)
plots(10)
• También podemos fijar la relación de aspecto, que es el ratio entre la altura y la anchura del gráfico, por defecto tiene la misma que la relación de aspecto de la ventana.
>> axis normal>> axis square>> axis equal
![Page 13: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/13.jpg)
plots(11)
• Hasta ahora hemos visualizado datos agrupados por tiempo, pero también podemos agrupar por otro concepto que no sea sensible de ser ordenado como el tiempo, ej: número de pymes por comunidad autónoma. Para ello usaremos los gráficos de barras.
>> x=[2 6 4 3 2 7 6];>> bar(x)>> x=[14 3 5;1 2 5];>> bar(x)
![Page 14: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/14.jpg)
plots(12)
• Otro comando para imprimir gráficos de barras es bar3.
• Otro elemento gráfico son las barras apiladas.
>> x=[2 6 4 3 2 7 6];>> bar3(x)>> x=[14 3 5;1 2 5];>> bar3(x,’group’);
>> x=[14 3 5;1 2 5];>> bar(x,’stack’)
![Page 15: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/15.jpg)
plots(13)
• Otro gráfica a tener en cuenta son las gráficas de área:
>> Y = [5 1 2 8 3 7 9 6 8 5 5 5 4 2 3];harea = area(Y)
![Page 16: Plots](https://reader036.fdocumentos.tips/reader036/viewer/2022071908/55cb8f18bb61eb57728b4781/html5/thumbnails/16.jpg)
plots(11)
• Gráficos en 3D, un ejemplo sencillo:
• La función surf tiene muchos parámetros para poder cambiar la visualización de la función.
>> Z = peaks(20);>> h = surf(Z);