Surface Plot with 3 Matrix (100x100)
조회 수: 4 (최근 30일)
이전 댓글 표시
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개)
Chunru
2021년 6월 9일
편집: Chunru
2021년 6월 9일
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
Walter Roberson
2021년 6월 9일
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')
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!