
Plane Fitting a 3D Scatter Plot
31 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a 3D scatter plot that I want to have a planar fit. How do you do this?
x = [14.9 1.7 0.0 10.9 0.0];
y = [11.3 9.1 23.7 12.8 2.9];
z = [5.32787E-17 2.93234E-16 2.09997E-16 5.45E-17 4.55E-16];
scatter3(x,y,z)

0 commentaires
Réponse acceptée
Star Strider
le 7 Mar 2019
A simple linear regression is straightforward:
x = [14.9 1.7 0.0 10.9 0.0];
y = [11.3 9.1 23.7 12.8 2.9];
z = [5.32787E-17 2.93234E-16 2.09997E-16 5.45E-17 4.55E-16];
B = [x(:) y(:) ones(size(x(:)))] \ z(:);
xv = linspace(min(x), max(x), 10)';
yv = linspace(min(y), max(y), 10)';
[X,Y] = meshgrid(xv, yv);
Z = reshape([X(:), Y(:), ones(size(X(:)))] * B, numel(xv), []);
scatter3(x,y,z, 'filled')
hold on
mesh(X, Y, Z, 'FaceAlpha', 0.5)
hold off
view(-120, 35)
title(sprintf('Z = %+.3E\\cdotX %+.3E\\cdotY %+.3E', B))
producing:

6 commentaires
Damla Yüksel
le 1 Déc 2019
Hello, in the following line, matlab returns an error:
"Error using plot3
Vectors must be the same length.
Error in (line 33)
plot3([x; x], [y; y], [z(:) Ze]', '-r','LineWidth',1) % Plot Errors (Red Lines From Surface To Data)"
What should I do for this error?
Star Strider
le 1 Déc 2019
You should make the vectors the same length!
It is best for you to post this as a new Question, supplying ‘x’, ‘y’, ‘z’ and ‘Ze’.
Your Comment does not relate to the substance of this thread, so I will delete it (and my Comment here) in a few yours.
Plus de réponses (1)
KSSV
le 7 Mar 2019
x = [14.9 1.7 0.0 10.9 0.0];
y = [11.3 9.1 23.7 12.8 2.9];
z = [5.32787E-17 2.93234E-16 2.09997E-16 5.45E-17 4.55E-16];
nx = 10 ; ny = 10 ;
xi = linspace(min(x),max(x),nx) ;
yi = linspace(min(y),max(y),ny) ;
[X,Y] = meshgrid(xi,yi) ;
F = scatteredInterpolant(x',y',z') ;
Z = F(X,Y) ;
scatter3(x,y,z)
hold on
surf(X,Y,Z)
0 commentaires
Voir également
Catégories
En savoir plus sur Line Plots dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!%20-%202019%2003%2006.png)
