Effacer les filtres
Effacer les filtres

Surface Plot with 3 Matrix (100x100)

3 vues (au cours des 30 derniers jours)
Eren Tatar
Eren Tatar le 8 Juin 2021
Commenté : Walter Roberson le 9 Juin 2021
Hello, I have three 100x100 matrices. Now I have always shown the visualization with scatter3 (x, y, z). However, I would like to display the plot with the mesh or surface command. Every time I use these commands, however, I get error messages. Could someone help me with this? The plot should look something like the scatter3 command.
  1 commentaire
SALAH ALRABEEI
SALAH ALRABEEI le 8 Juin 2021
what is the error!

Connectez-vous pour commenter.

Réponses (1)

Chunru
Chunru le 9 Juin 2021
Modifié(e) : Chunru le 9 Juin 2021
It seems that the data is not on regular grid for mesh and surface command.
For irregular grid, you can consider to interpolate the irregular-grided data for plotting:
F = scatteredInterpolant(x,y,z);
[xq, yq] = meshgrid(xrange, yrange); % define the grid yourselfe
zq = F(xq,yq);
mesh(xq, yq, zq)
  1 commentaire
Walter Roberson
Walter Roberson le 9 Juin 2021
pcolor() is really just surf() with view() set from above and with the ZData property forced to all 0.
That is, any x and y arrays that work for pcolor() would also work for surf() and so you cannot do more with pcolor() than with surf()
It is valid to use nonlinear points for the X and Y for surf()
[X, Y] = ndgrid(exp(-linspace(0,2*pi)), cos(linspace(0,2*pi)));
Z = sqrt(X.^2 + Y.^2);
surf(X, Y, Z, 'edgecolor', 'none')

Connectez-vous pour commenter.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by