gráficos en matlab

19
Gráficos en Matlab Realizado por: Henry Minta (331) Alex Carrasco (52) Sebastian Navarrete (192)

Upload: alex-carrasco

Post on 12-Aug-2015

377 views

Category:

Education


0 download

TRANSCRIPT

Gráficos en MatlabRealizado por:

Henry Minta (331)Alex Carrasco (52)

Sebastian Navarrete (192)

Gráficos en MatlabUna de las funciones más importantes en

Matlab es la función plot . Plot también parece ser una de las más sencillas funciones para aprender a usar. La sintaxis básica de la función es escribir el siguiente comando en la ventana de comandos del Matlab o en un archivo-m.

plot(x,y)

Este comando ploteará los elementos del vector x en el eje horizontal de una figura, y los elementos del vector y en el eje vertical de la figura. Por defecto, cada vez que se use el comando plot , se borrará la figura que estaba, quedando solo la nueva; discutiremos cómo forzar esto más abajo. Si quisiéramos graficar la sencilla fórmula lineal: y=3x Deberíamos crear un archivo-m con las siguientes líneas de código: x = 0:0.1:100; y = 3*x; plot(x,y)

lo que generará la figura siguiente,

El color y el marcador de un gráfico se pueden cambiar agregando un tercer parámetro (entre apóstrofo 'esto') al comando plot . por ejemplo, para graficar la función de arriba con una línea punteada roja , debería cambiarse el archivo-m a:

x = 0:0.1:100; y = 3*x; plot(x,y,'r:')

La Estética de los Gráficos

Ahora el gráfico se ve:

La tercera entrada consiste de uno a tres caracteres que especifican un color y/o o un tipo de marcador. La lista de colores y marcadores es como sigue:

y amarillo . punto m violeta o circulo c celeste x cruz x r rojo + suma g verde - solido b azul * estrella w blanco : punteado k negro -. punto y raya -- a trazos Se puede graficar más de una función en la misma figura. Digamos que quisiera graficarlas ondas seno y coseno en el mismo conjunto de ejes, usando diferentes colores y marcadores para cada una. Puede usarse el siguiente archivo-m para lograrlo: x = linspace(0,2*pi,50); y = sin(x); z = cos(x); plot(x,y,'r', x,z,'gx')

Obtendrá la figura siguiente de las ondas seno y coseno, con el seno en rojo sólido y el coseno en verde con cruces:

Más de un Gráfico en una ventana (Subplot)En una misma figura puede ponerse más de

una línea empleando el comando subplot. El comando subplot le permite separar la figura en tantas figuras como se quiera , y ponerlas todas en una figura. Para usar este comando, Copie la siguiente línea de código e insértela en la ventana de comandos del Matlab o en un archivo-m:

subplot(m,n,p) Este comando divide la figura en una matriz de m renglones y n columnas, por lo tanto crea mxn gráficos en una figura. TEl p-ésimo gráfico es seleccionado como el gráfico activo (solo hay uno a la vez por figura). Por ejemplo, suponga quisiera ver una senoide, un coseno , y una onda tangente graficadas en la misma figura, pero no en los mismos ejes. El siguiente archivo-m lo hará: x = linspace(0,2*pi,50); y = sin(x); z = cos(x); w = tan(x); subplot(2,2,1) plot(x,y) subplot(2,2,2) plot(x,z) subplot(2,2,3) plot(x,w)

Cambiando los ejesAhora que ha encontrado diversos modos de graficar

funciones, puede personalizar sus ploteos para lograr lo que desea. El modo más frecuente de hacerlo es mediante el comando axis. El comando axis cambia los ejes del diagrama actual, de modo que se muestra sólo la parte del eje que se desea. El comando axis se usa ingresando el siguiente comando justo después del comando plot (o cualquier comando que tiene un plot como una de sus salidas):

axis([xmin, xmax, ymin, ymax]) Por ejemplo, suponga querer ver un gráfico de la función y=exp(5t)-1. Si entra lo siguiente al Matlab t=0:0.01:5; y=exp(5*t)-1; plot(t,y)

debería tener la figura siguiente:

Como puede ver, el gráfico tiende a infinito. Atendiendo al eje y (escala: 8e10), es claro que no puede verse mucho en este gráfico. Para tener una mejor idea de lo que está pasando en el ploteo, miremos el primer segundo de esta función. Escriba el siguiente comando en la ventana de comandos del Matlab.

axis([0, 1, 0, 50]) y debería obtener la figura siguiente:

Agregar TextoOtra cosa que puede ser importante en sus gráficos es

el etiquetado. Puede darle un título al gráfico (con el comando title), etiqueta al eje x (con el comando xlabel), o al eje y (con el comando ylabel), así como incluir texto en la figura presente. Todos los comandos mencionados se emiten luego de ejecutarse el comando plot actual.

Se ubicará un título, centrado, por encima del gráfico con el comando: title('cadena de título'). La etiqueta al eje x se agrega con el comando siguiente: xlabel('cadena para el eje x'). La etiqueta del eje y se emite con el siguiente comando: ylabel('cadena para el eje y').

Más aún, puede incorporarse texto en el mismo gráfico de dos maneras: el comando text y el comando gtext. El primer comando requiere conocer las coordenadas donde quiere ubicar la cadena de texto. El comando es text(xcor,ycor,'textstring'). Para usar el otro comando, no necesita saber las coordenadas exactas. El comando es gtext('textstring'), y entonces sólo mueva la mira en cruz al lugar deseado con el mouse, y haga clic en la posición que quiere que se inserte el texto.

Para mostrarle mejor cómo usar el etiquetado, tome el gráfico de la respuesta al escalón de arriba. Asumiendo que ya ha cambiado los ejes, copiando las líneas siguientes luego del comando axis, se tendrá todas las etiquetas puestas en el gráfico:

title('respuesta al escalón de algo') xlabel('tiempo (seg.)') ylabel('posición, velocidad, o algo así') gtext('etiqueta innecesaria')

El texto "etiqueta innecesaria" se ubicó a la derecha por encima de la posición donde se hace clic. La figura debería verse así:

GRACIAS