Llenado de funciones

Estoy utilizando spline para la aproximación de curvas y quisiera saber que función de matlab me permite llenar el área debajo de esa curva o el área entre dos o más curvas,
ademas de poder hacer una animación con esas curvas
El código es el siguiente:
function spline()
%curva 1
a=0:0.0001:0.01;
plot(a,a)
hold on
x1=[2 4 6];
y1=[2 2 2];
xx1=2:0.001:6;
yy1=spline(x1,y1,xx1);
plot(xx1,yy1),grid;
%curva 2
x2=[6 7 8 9 10];
y2=[2 3 4 4.2 3.8];
xx2=6:0.0001:10;
yy2=spline(x2,y2,xx2);
plot(xx2,yy2);
%curva 3
x3=[10 10.3 10.6 10.8];
y3=[3.8 3.7 3.6 3.5];
xx3=10:0.0001:10.8;
yy3=spline(x3,y3,xx3);
plot(xx3,yy3);
%curva 4
x4=[2 5 8 9 10];
y4=[2 0.7 2 3 3.3];
xx4=2:0.001:10;
yy4=spline(x4,y4,xx4);
plot(xx4,yy4);

1 respuesta

Respuesta
1
Respondo tus preguntas a continuación:
1)Para dibujar el área bajo la curva, solo basta usar el comando área() de matlab. Se usa de manera análoga a plot(). Tomando como ejemplo la curva 4, ésta quedaría:
%Curva 4
x4=[2 5 8 9 10];
y4=[2 0.7 2 3 3.3];
xx4=2:0.001:10;
yy4=spline(x4,y4,xx4);
area(xx4,yy4);
Para más detalles de este comando solo escribe "help área" en la línea de comandos de matlab.
2)Para rellenar el área entre dos curvas, sería cosa de hacer la resta de los polinomios correspondientes a las ordenadas generadas por el comando spline, manteniendo un mismo vector de abscisas para ambas curvas a graficar.
3)Para preparar pequeñas películas o movies, se pueden utilizar los comandos movie, moviein y getframe. Una película se compone de varias imágenes o frames. La función getframe devuelve un vector columna con la información necesaria para producir la imagen que se acaba de representar en la figura. La función movein(n) reserva memoria para almacenar n frames. Una vez creada la película, se puede reproducir el número de veces que se desee con el comando movie. Considera el ejemplo siguiente:
%Ejemplo de animación
M=moviein(17);
x=[-2*pi:0.1:2*pi];
for j=1:17
y=sin(x+j*pi/8);
plot(x,y);
M(:,j)=getframe;
end
movie(M,10,15);
Nota que también puedes usar área() en vez de plot().
Espero esto haya aclarado tu duda. Chao!.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas