Buenas a continuación tengo un código que realiza el método de mínimos cuadrados pero necesito graficar dicha función y no tengo ni idea a ver si alguien me puede ayudar o me da una idea de como hacerlo de antemano gracias.
Código c++:
Ver original#include<stdio.h>
#include <stdlib.h>
#include<conio.h>
#include<math.h>
int main()
{
int n,m,i,j;
float b=0,a=0,r=0;
float Sumt=0,Sump=0,Sumtp=0,Sumt2=0,Sumc2p=0;
float t[25][25],p[25][25],tp[25][25],t2[25][25],c2p[25][25];
printf("==========================U.F.P.S. Ocana========================\n\n"); printf("\t\t METODOS NUMERICOS\n\n"); printf("\t\t METODO DE MINIMOS CUADRADOS\n\n"); printf("\n\n Introduzca el numero de datos que contiene la muestra \n\n N = "); /* Ingreso de Datos */
{
/*x(i,j) */
printf(" Introduzca los valores para X\n"); for(j=1;j<=n;j++)
{
printf(" Ingrese x(%d,%d) = ",1,j
); /*Sumatoria de x*/ Sumt= Sumt+t[1][j];
}
/*y(i,j) */
printf(" Introduzca los valores para Y\n"); for(j=1;j<=n;j++)
{
printf(" Ingrese y(%d,%d) = ",2,j
); /*Sumatoria de y*/ Sump= Sump+p[2][j];
}
// Acaba ingreso de datos//
// Inician operaciones//
/*x(i,j)*y(i,j) */
for(j=1;j<=n;j++)
{
tp[3][j]= t[1][j]*p[2][j];
/*Sumatoria de xy*/ Sumtp= Sumtp+ tp[3][j];
}
/*x(i,j)^2 */ for(j=1;j<=n;j++)
{
t2[4][j]= t[1][j]*t[1][j];
/*Sumatoria de x2*/ Sumt2= Sumt2+ t2[4][j];
}
/*x(i,j)^2 */ for(j=1;j<=n;j++)
{
c2p[5][j]= p[2][j]*p[2][j];
/*Sumatoria de x2*/ Sumc2p= Sumc2p+ c2p[5][j];
}
/*Sumatorias */
}
/*------------------------------------------------------------------*/
//Calculo de x,y,r:
b= ((n*Sumtp)-(Sumt*Sump))/(n*Sumt2-(Sumt*Sumt));
a=(Sump-(b*Sumt))/n;
r
=((n
*Sumtp
)-(Sumt
*Sump
))/sqrt( ((n
*Sumt2
) -(Sumt
*Sumt
))*((n
*Sumc2p
)-(Sump
*Sump
)) );
/*------------------------------------------------------------------*/
/*Solo Impresiones */
{
for(j=1;j<=n;j++)
printf("\n%1.4f %1.4f %1.4f %1.4f\n",t
[1][j
],p
[2][j
],tp
[3][j
],t2
[4][j
]);
}
printf("\nResultado de las Sumatorias\n"); printf("\n%1.5f %1.5f %1.5f %1.5f\n",Sumt
,Sump
,Sumtp
,Sumt2
);
printf("\nLos coeficientes de regresion son:\n"); printf("\n%1.5f %1.5f\n",a
,b
);
printf("\nEl valor de r es igual a:\n");
}