Matlab - Introducir puntos en la gráfica de una función

 
Vista:

Introducir puntos en la gráfica de una función

Publicado por holyo (58 intervenciones) el 18/03/2010 18:05:12
Hola a todos, tengo una función F(x)=100+3x-2.4x^2. Y tengo una matriz de dos columnas y 20 filas. Una columna serían las coordenadas x, y la segunda las y. ¿Cómo hago para pintar la función y después por encima los puntos?

Muchas gracias a todos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

RE:Introducir puntos en la gráfica de una función

Publicado por Dave (1094 intervenciones) el 18/03/2010 23:45:14
Hola Holyo,

Aqui un ejemplo,

x=-10:0.5:10;

F=100+3*x-2.4*x.^2.

plot(x,F,'-',x,F,'.r')

Espero que sea de ayuda.

Saludos
Dave.

[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Introducir puntos en la gráfica de una función

Publicado por holyo (58 intervenciones) el 23/03/2010 09:47:55
Hola Dave, el final de mi M-FILE es este:

X=MATRIZ(:,1);
Y=FUERZAS(:,2);
p=polyfit(X,Y,2)
plot(X,Y,'ro','LineWidth',2) % Plot data
hold on
xfit = 0:0.01:4;
yfit = polyval(p,xfit);
plot(xfit,yfit,'-','LineWidth',2) % Plot fit
ylim([0,200])
grid on

Matriz y Fuerzas son matrices. Uso el comando polyfit para interpolar, es decir, sacar una función a partir de los datos de las columnas de matriz y fuerzas.

Yo tengo dos columnas, una es la X que va desde 0.1 hasta 3.8, la otra es la Y que toma diferentes valores.

El problema es que yo calculo la función tomando los datos a partir del punto X=0.8, (obtendré una curva que se ajusta muy bien a los puntos desde 0.8 hasta 3.8). Los puntos que están antes del 0.8 no me aparecen en la gráfica y me gustaría que sí lo hiciesen. Eso es lo que quiero hacer.

Espero que me haya explicado bien.

Un saludo y muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Dave
Val: 497
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

RE:Introducir puntos en la gráfica de una función

Publicado por Dave (1094 intervenciones) el 23/03/2010 17:10:27
Hola Holyo;

A lo que entiendo tu utilizas parte de los vectores originales para calcular los coeficientes del polinomio, en ese caso solo debes agregar o superponer el vector de datos originales y ahi visualizaras todos los puntos.

aqui te dejo un ejemplo:

Espero que sea de alguna ayuda.
Saludos
Dave.

Ps: Si necesitas una ayuda mas personalizada puedes escribir a [email protected].
..........................................................................................................................................

close all,clear all,clc

MATRIZ=(0.1:0.1:3.8)';
FUERZAS=(100*rand(length(MATRIZ),2)).^(1/3);

X1=MATRIZ(:,1);
Y1=FUERZAS(:,2);
ind=find(and(MATRIZ >= 0.8,MATRIZ<=3.8));

X=MATRIZ(ind,1);
Y=FUERZAS(ind,2);
p=polyfit(X,Y,2)
plot(X,Y,'ro','LineWidth',2) % Plot data
hold on
plot(X1,Y1,'b.','LineWidth',2) % Plot data
hold on

xfit = 0:0.01:4;
yfit = polyval(p,xfit);
plot(xfit,yfit,'-','LineWidth',2) % Plot fit

grid on
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar