Surface Plot with 3 Matrix (100x100)
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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.![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/646590/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/646590/image.png)
1 Kommentar
Antworten (1)
Chunru
am 9 Jun. 2021
Bearbeitet: Chunru
am 9 Jun. 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 Kommentar
Walter Roberson
am 9 Jun. 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')
Siehe auch
Kategorien
Mehr zu Surface and Mesh Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!