Your SlideShare is downloading. ×
Gráficos en matlab eda
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Gráficos en matlab eda

64
views

Published on

Introducción a graficación en la interfaz MATLAB.

Introducción a graficación en la interfaz MATLAB.

Published in: Education

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
64
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. GRÁFICOS EN 2DY 3D
  • 2. Matlab ofrece gran número deposibilidades a la hora de realizarrepresentaciones gráficas. Dibujacurvas planas y superficies. Permiteagrupar y superponerrepresentaciones. Todo ello convariaciones de estilo y decoordenadas.Permite a su vez realizar gráficos detipo estadístico: de barra,histogramas, etc.Por las características propias del programa, los gráficos, en concreto los 2D, estánorientados a la representación gráfica de vectores. Se utiliza una ventana especialpara la creación de los gráficos: la ventana gráfica o de dibujo y, dichos gráficos seguardan en ficheros de extensión .fig. Ciertos comandos ejecutados sobre la línea decomandos son los que abren esta ventana, otros dibujan sobre la ventana activa,bien sustituyendo lo que había en ella, bien añadiendo nuevos elementos gráficos alos que había. Los iremos estudiando con más detalle.
  • 3. Funciones Básicas para las gráficas 2DEl comando básico para larepresentación de gráficos 2D es elcomando plot.Su sintaxis puede ser:plot(x,y): dibuja el conjunto de puntos(x,y) donde las abscisas de los puntosse encuentran en el vector x y lasordenadas en el y.Para representar una función f(x) esnecesario conocer los valores depuntos de la forma (x,f(x)). Para ellopuede seguirse alguno de estoscaminos:
  • 4. - Definir un vector x con el rango de variación donde se desea pintar lafunción.Para ello puede ser muy útil el comando linspace(xmin,xmax,n).Crear el vector y evaluando f en x. Por ejemplo: 50>> x=linspace(0,10,100);>> y=sin(x);>> plot(x,y)Por defecto, MATLAB dibuja uniendo los puntos conlínea continua de color azul y un grosor determinado,opciones todas que se podrán alterar .
  • 5. - También es posible dibujar una función con el comandofplot cuya sintaxis es la siguiente:fplot(‘f(x)’,[xmin,xmax]).Así, este comando admite como argumento un nombre defunción o de un fichero .m en el que está definida la funcióna representar.Por ejemplo:>> fplot(‘sin(x),[-3*pi,3*pi,-1,1])En general, si no se cierra la ventana de dibujogenerada al evaluar un comando como losanteriotes, si se vuelve a ejecutar uno de ellos, sedibuja sobre dicha ventana perdiéndose el primerdibujo.
  • 6. 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 dosrepresentaciones, y es el de las ordenadas de la primera representación yz las de la segunda.- fplot(‘[f1(x),f2(x),...]’,[xmin,xmax]) donde f1, f2, … son las funciones arepresentar en el intervalo de variación marcado por xmin y xmax.Mediante el comando: hold on, hold off.Todos los gráficos que se ordenedibujar entre los comandos hold on y hold off se representan en la mismafigura. 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
  • 7. El comando subplot. Una ventana gráfica se puededividir en m particiones horizontales y n verticales pararepresentar mxn figuras. Cada una de las particionestendrá sus ejes aunque las propiedades serán comunesa todas ellas. La sintaxis es: subplot(m,n,i), donde m y nson 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)La ventana gráfica sería la de la figura
  • 8. Representación gráfica en 3DLa representación de funciones 3D ( esdecir, funciones f: R2® R) se puede realizar enMATLAB de forma directa, utilizando alguna de lasutilidades predefinidas en dicho lenguaje. Paraello, en cualquier caso, es necesarioque, previamente, se definan todos los puntos(x, y) sobre los cuales va a tomar valores lafunción f. Esta tarea se realiza discretizando, enprimer lugar, los ejes x e y que definen el plano y, apartir de esta discretización inicial, se calculantodos los pares de puntos (x, y) utilizando lafunciónmeshgrid.Esta función devuelve dos pares de matrices en lascuales se almacenan, respectivamente, lascoordenadas x e y de los puntos de R2 en que se vaa representar la función f.
  • 9. EjemploSi deseamos representar una función f:[0,2]x[0,2]® R seránecesario, en primer lugar, definir los ejes x e y correspondientesa dichos intervalos, con la discretización deseada:>>x=0:0.5:2;>>y=0:0.5:2;de modo que cada eje se supone discretizado en 5 puntos.Seguidamente, se construyen todos los pares (x, y) directamenteutilizando>>[XY]=meshgrid(x, y);Las matrices X e Y así generadas almacenan las coordenadas delos 25 puntos en que se discretiza el plano [0,2]x[0,2], de modoque en X se guardan las coordenadas x de los puntos, y en Y lascoordenadas y.
  • 10. El siguiente paso consiste en calcular los valores de la función paracada uno de los puntos (x, y), lo cual se hace directamentemanejando las matrices X e Y como si fuesen variables.Así, si la función esescribiríamos>>Z=exp(X.^2+Y.^2);(ojo con los operadores ".", porque tanto X como Y son matricesnuméricas) de modo que, ahora, en las matrices X, Y y Z tenemos yaguardadas las coordenadas 3D de los puntos que queremosrepresentar.Estas matrices son las que se utilizan con las funciones predefinidaspara representación 3D en MATLAB. Por ejemplo, puede probarse lafunción>> mesh(X,Y,Z)En este ejemplo, la representación no es muy precisa, ya que ladiscretización escogida para los ejes (0.5) no es demasiado fina.
  • 11. Otras funciones de representaciónEn todos los casos de representación gráfica (y esto incluyea las representaciones 2D) es posible modificar el "punto devista" del observador de la gráfica. En la versión 5.3 deMATLAB esto puede hacerse de forma interactivautilizando el ratón. Para ello basta activar el botón 3D yestablecer con el ratón el nuevo punto de vista de la gráfica.Los parámetros que definen el "punto de vista" sonla elevación y el azimut, que indican, respectivamente, laaltura sobre el eje z y el ángulo respecto del plano XY en quese sitúa el observador.Además de las funciones ya descritas, es posible, en amboscasos, añadir a la representación gráfica las curvas de nivelcorrespondientes a la función que se representa. Para ellose utilizan las funciones meshc y surfc en lugarde mesh y surf. Estas curvas de nivel se proyectan sobre elplano XY automáticamente.

×