You are on page 1of 18

Introduccin Objetivos

El objetivo de este documento es brindar una referencia de lo que vamos a utilizar del programa Scilab durante el curso. Se efectan clculos desde la consola y se introducen variables numricas. Adems se muestra cmo generar archivos de comandos y funciones y se documentan algunas herramientas indispensables de programacin.
Estas notas slo pretenden exponer algunos de los comandos ms bsicos de que dispone Scilab paragenerar grficos. En principio se exponen, exclusivamente, los comandos de dibujo y posteriormente seexplicar cmo modificar los distintos (y numerosos) parmetros que determinan sus caractersticas. Teora (funciones de grficos)

2.4 La funcin plot


2.4.1. Grficos de funciones

Los vectores constituyen los elementos claves para hacer grficos de una variable en funcin de otra. Por lo general tenemos un conjunto de datos "x" y otro conjunto de datos "y" relacionados entre s. Por ejemplo definamos "x=-10:0.1:10" e "y=x.^3;". Si queremos graficar y como funcin de x escribimos en la consola: plot(x,y); .

Scilab abre entonces una nueva ventana donde hace el grfico correspondiente y que se muestra en la Figura.

Figura 2.14. Grico de y=x^3.

Por ejemplo. Si escribimos en la consola,

Figura 2.15. Comandos para graficar una funcin.

da lugar al grfico de la Figura .

Figura 2.16.. Grfico de la funcin x sen(16x).

Se puede superponer un nuevo grfico sobre esta ltima figura, por ejemplo, si escribimos plot(x,x) ; se dibuja la recta de pendiente 1 que pasa por el origen de coordenadas y si escribimos plot(x,-x) ; la de pendiente -1. Los comandos y el grfico se observan en las figuras que siguen.

Figura 2.17. Superposicin de grficos.

Figura 2.18. Grfico de las tres funciones juntas.

Si se quiere hacer un grfico en una nueva ventana (es decir, sin superponer al grfico anterior) escribimos figure; en la consola y eso abre una nueva ventana. Cada nueva ventana de grficos que se abre est identificada con un nmero (ver que en el borde de la ventana dice Graphic window number y el nmero que corresponda). El comando plot hace el grfico en la

ltima ventana abierta a menos que uno le indique algn otro nmero. Por ejemplo, si uno escribe: figure; se abre una ventana (que se llamar Graphic window number 0 o ventana de grfico nmero 0 si no haba ninguna otra previamente abierta). Si despus escribimos plot(x,y); el grfico de y como funcin de x aparecer en la ventana identificada con el nmero 0.

Figura 2.19. Numeracin de los grficos. Ventana nmero 0.

Si luego hacemos nuevamente

figure; se abre una nueva ventana (Graphic window number 1 o ventana de grfico nmero 1) y al hacer plot(x,x^2) ; el grfico de x^2 como funcin de x aparecer en la ventana identificada con el nmero 1. Si inmediatamente despus escribimos plot(x,10-x^2) ; el grfico de 10-x^2 como funcin de x aparecer superpuesto al de x^2 como funcin de x en la ventana identificada con el nmero 1.

Figura 2.20.Numeracin de los grficos. Ventana nmero 1.

Y si escribimos figure(0) ; plot(x,10-x^2) ; ahora el grfico de 10-x^2 como funcin de x aparecer superpuesto al de y como funcin de x en la ventana identificada con el nmero 0.

Figura 2.21. Al poner figure(0) vuelve la numeracin a cerco.

Las ventanas de figuras se pueden cerrar como cualquier ventana de windows. Los contenidos de una ventana se pueden borrar (limpiar) sin borrar la ventana con el comando clf. En particular, clf(); (clear figure) limpia los contenidos de la ltima ventana abierta y clf(1); los de la nmero 1. 2.4.2. Colores y formas del grfico

Observen que en todos los casos en los grficos aparecen lneas suaves. Esto es as porque, a menos que uno indique alguna opcin distinta, el Scilab interpola entre los puntos del plano con abscisa igual a los valores de las componentes del vector x y ordenada igual a las del vector y. La interpolacin se vuelve evidente para x con pocas componentes. Por ejemplo, tomen x=[1 2 4 6] y grafiquen x^2 como funcin de x.

Figura 2.22. Grfico de y=x^2 usando pocos puntos.

A veces uno puede querer graficar slo los puntos, sin interpolar por ninguna curva, puede querer cambiar de color, superponer curvas con colores elegidos previamente por uno. Todas esas son opciones al comando plot. No vamos a detallarlas todas (pueden consultar los ejemplos de la ayuda de Scilab).

Algunos de los colores bsicos, formas y como hacer la lnea. Lo ponemos en ingls para que se entienda la lgica de los smbolos.

Colores

Puntos

Linea

b g r c

blue green red cyan

. o x + * s d

punto circulo x mas star square diamond

solida punteada

-. punteada y discontinua -- linea discontinua

m magenta y k w yellow black white

Pongamos un ejemplo si queremos grficar la funcin sen(x). Primero definimos el vector cuyos puntos corresponden al eje de abscisas:

t=0:%pi/20:2*%pi; Esta ltima sentencia genera el vector t que toma valores entre 0 y 2 incrementndose cada /20. Despus graficamos con distintas opciones (usando el color cyan).

Ejemplo 1: clf(); plot(t,sin(t),'c+')

Figura 2.23.. Aca estamos poniendo el smbolo + en cada punto.

Prueben con los siguientes ejemplos,

Ejemplo 2: clf(); plot(t,sin(t),'co')

Ejemplo 3: clf(); plot(t,sin(t),'co -. ') 2.4.3. Ttulo, leyendas en el grfico y nombres en los ejes

Muchas veces es til cuando hacemos muchos grficos en una figura ponerle el ttulo y hacer leyendas dentro del grfico de manera tal que me permita saber que representa cada grfico. Eso se hace con los comandos title y legend.

Aca ponemos un ejemplo donde graficamos la funcin

Figura 2.24.. Como hacer leyendas y ttulos en grficos.

Las primeras dos cosas que aparecen en el comando legend son el nombre que quiero que aparezca sobre la leyenda. El nmero 3 indica que la leyenda aparecer en el extremo inferior izquierdo del grfico (ver Figura 2.25). Para ponerle nombre a los ejes utilizamos los comandos xlabel e ylabel. Estos se aplican al grfico activo. Supongamos que en este caso en el eje de las abscisas representamos el tiempo en segundos y que en el eje de ordenadas representamos la amplitud entonces para ponerle nombre a los ejes escribimos: xlabel(t [s]); ylabel(Amp [V]);

En la figura 2.25 se muestra como queda el grfico.

Figura 2.25. Grfico de las dos funciones con sus leyendas. 2.4.4. Como dibujar los ejes En muchos casos vamos a querer representar los ejes cartesianos o que grafique la funcin en un intervalo dado. Para eso debemos usar el comando get("current_axes"). Lo que hace este comando es fijar ciertos parmetros del grfico. En el siguiente ejemplo lo que hacemos es graficar la funcin 2x^2+1 pero para x en el intervalo [-2 2] y para y en el intervalo [-1 8], adems graficamos un punto

que est sobre la curva y agregamos los ejes en el origen.

Figura 2.26. Como dibujar los ejes en un grfico. Los comandos que usamos son: a.data_bounds=[-2,-1;2,8]; Son los lmites donde va a estar dibujada la funcin. Aca el x minimo es -2, el y mnimo es -1, el x mximo es 2 y el y mximo es 8. a.x_location = "origin"; a.y_location = "origin"; De esta manera estamos ubicando los ejes en el origen. Hay otras opciones para poner los ejes en otros lugares. Para el eje x las opciones son: bottom, top, middle y origin. Para el eje y:left,right, middle y origin. Pruebe las distintas opciones para ver donde quedan ubicados los ejes.

Tambin en algunos casos interesa hacer una grilla en el grfico. 2.4.5. Como Exportar grficos

Muchas veces vamos a querer guardar las figuras con un formato que nos permita pegarlas luego en un archivo de texto. Para eso, una vez que tengamos la ventana de grfico abierta, vamos a file, dentro de file, vamos a exportar (ver figura 2.26)

Figura 2.27. Como exportar un grfico.

y all elegimos con que extensin guardamos la imagen.

Figura 2.28. Distintos formatos para guardar un grfico.


3 ejemplos

You might also like