%dado iniciais

x_tab=[0.3 2.7 4.5 5.9 7.8];
y_tab = [1.8 1.9 3.1 3.9 3.3];

n = length(x_tab);
p = 2;

Sx = sum(x_tab);
Sy = sum(y_tab);
Sxy = sum(x_tab .* y_tab);
Sx2 = sum(x_tab .^ 2);
Sy2 = sum(y_tab .^ 2);

b1 = (Sx * Sy - n * Sxy) / ((Sx)^2 - n * Sx2);
b0 = (Sy - b1 * Sx) / n;

disp("b1 =");
disp(b1);
disp("b0 =");
disp(b0);

u_i = b0 + b1 * x_tab;
D = sum((y_tab - u_i).^2);

r2 = 1 - (D / (Sy2 - (1/n) * (Sy)^2));
sigma2 = D / (n - p);

disp("r2 =");
disp(r2);
disp("sigma2 =");
disp(sigma2);

x_grid = [min(x_tab) - 0.5 : 0.1 : max(x_tab) + 0.5];
u_grid = b0 + b1 * x_grid;

figure;
plot(x_grid, u_grid, '-', 'LineWidth', 1.5);
hold on;
plot(x_tab, y_tab, 'ko', 'MarkerFaceColor', 'w', 'MarkerSize', 6);
grid on;

% Estilização e legendas idênticas à referência
title("Ajuste de Curva por Mínimos Quadrados");
xlabel("X");
ylabel("Y");
legend("Reta Ajustada u(x)", "Dados Experimentais", "Location", "northwest");
hold off;

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: