How to compare between two surface plots in matlab?
Afficher commentaires plus anciens
A and B are two 2D matrices with dimensions (length(X), length(Y)) which are function of X and Y vectors. I plot A and B in a 3D graph using surf as follows:
figure(1)
surf(X,Y,A)
hold on
surf(X,Y,B)
hold on
But, the generated figure doesn't show the difference in values between A and B clearly.
Is there any other way where I can compare between A and B in a 3D plot and show the differences between them clearly?
Réponse acceptée
Plus de réponses (1)
Ameer Hamza
le 12 Nov 2020
Sometime plotting the difference can be helpful for visualization
figure(1)
surf(X,Y,A-B)
7 commentaires
Adi Nor
le 12 Nov 2020
Ameer Hamza
le 12 Nov 2020
Ok. In that case, I think plotting the estimated values as surface, and the original data points as scattered points will be helpful. For example
figure(1)
surf(X,Y,A)
hold on
scatter3(X(:),Y(:),B(:), 'r+')
hold on
Adi Nor
le 12 Nov 2020
Ameer Hamza
le 12 Nov 2020
Ok, If X and Y are vectors then modify the code to this
figure(1)
surf(X,Y,A)
hold on
[Xg, Yg] = meshgrid(X, Y);
scatter3(Xg(:),Yg(:),B(:), 'r+')
hold on
Adi Nor
le 12 Nov 2020
Ameer Hamza
le 12 Nov 2020
Try the code in my last comment.
Adi Nor
le 12 Nov 2020
Catégories
En savoir plus sur Contour Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
