Computacin y Programacin
Yussef Farran
yfarran@udec.cl
Graficar la funcin: f(x) = 2x2 + 3x 5
Primero definimos los Luego generamos el
valores del vector x, con vector y a partir de la
alguno de los siguientes funcin
comandos:
x = 0 : 10 y = 2 * x .^ 2 + 3*x 5
x = [ 0 : 10]
x = linspace (0, 10, 11) Finalmente graficamos
x = [0 1 2 3 4 5 6 7 8 9 10] plot(x,y) o
plot(x,y,'ro--')
La figura que veremos es:
Graficar una matriz ??
40
>> M=magic(6)
35
M=
30
35 1 6 26 19 24
25
3 32 7 21 23 25
20
31 9 2 22 27 20 15
8 28 33 17 10 15 10
30 5 34 12 14 16 5
4 36 29 13 18 11 0
1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6
>> plot(M)
>> whitebg('y')
Nota:
1. las matrices se grafican por columnas.
2. El grafico queda pintado de ese color,
debo volver a blanco o whitebg(w)
Otros comandos de grficos
grid: permite activar o desactivar la grilla del
grfico
Tambin puede usar grid on o grid off
hold: permite dejar en pantalla el grafico
anterior, ya que usualmente el plot limpia
la ventana anterior.
area(x,y) muestra el rea bajo la curva
stairs(x,y) muestra un grfico en escalera con
lneas solo horizontales y verticales
area (x,y)
stairs (x,y)
250 250
200 200
150 150
100 100
50 50
0 0
-50 -50
0 2 4 6 8 10 0 2 4 6 8 10
subplot (m, n, p)
El comando subplot le permite subdividir la ventana de
graficacin en una retcula de m filas y n columnas.
La funcin subplot(m,n,p) separa la figura en una
matriz m x n.
La variable p identifica la porcin de la ventana donde
se dibujar la siguiente grfica. 1 2
3 4
t = (0 : .1 : 2*pi);
subplot(2,2,1)
plot(t,sin(t))
subplot(2,2,2)
plot(t,cos(t))
subplot(2,2,3)
plot(t,exp(t))
subplot(2,2,4)
plot(t,1./(1+t.^2))
Ploteo por tramos
1. Dada la siguiente funcin: 4. La figura resultante es:
f(x) = x2 si x < 0
1 si 0 <= x < 1 4
-x + 2 si 1 <= x 3.5
3
2. Generar el vector con los valores
2.5
de X:
2
x=linspace(-2,3,500); 1.5
1
3. La funcin por tramos sera:
0.5
y= (x .^ 2) .* (x<0) + 0
-0.5
1 .* ((0<=x) & (x<1)) +
-1
-2 -1 0 1 2 3
(-x+2) .* (1<=x);
plot(x,y,+)
(recordar que la evaluacin de una condicin entrega
como resultado: verdad = 1 y falso = 0)
Otro ejemplo, con dos curvas en el mismo
grfico, y ttulos
x=linspace(-3,3,500);
Campana de Gauss
y=exp(-x.^2); 2
exp(-x2)
1.8
z=2*exp(-x.^2); 2*exp(-x2)
1.6
plot(x,y,'-',x,z,'--') % dibujamos dos funciones 1.4
Eje de Ordenadas
title('Campana de Gauss') 1.2
1
xlabel('Eje de Abscisas')
0.8
% Etiqueta el eje horizontal 0.6
0.2
% Etiqueta el eje vertical
0
-3 -2 -1 0 1 2 3
legend('exp(-x^2)', '2*exp(-x^2)') Eje de Abscisas
plot (z)