Create 3D scatter plot from an 120x160 matrix
이전 댓글 표시
I have an excel file with a 120 x 160 array and I need to make a 3D scatter plot of the data. I could easily do it on Mathcad but can't get 'scatter3' to work.
Any suggestions will be appreciated!
Thanks
답변 (2개)
Chad Greene
2017년 7월 7일
Perhaps you need to columnate all your variables using (:). Like this:
[x,y,z] = peaks(150);
scatter3(x(:),y(:),z(:),10,z(:))
But if your data are gridded, why not use surf?
surf(x,y,z)
shading flat
댓글 수: 2
Mir Sharmin
2017년 7월 7일
Chad Greene
2017년 7월 10일
Yes, by columnating all the inputs with (:), it turns them into vectors. Did you try the example I provided with the peaks data?
Walter Roberson
2017년 7월 7일
편집: Walter Roberson
2017년 7월 7일
[Y, X] = ndgrid(1:size(YourArray,1), 1:size(YourArray,2));
scatter3(X(:), Y(:), YourArray(:));
Notice that Y corresponds to rows not columns
카테고리
도움말 센터 및 File Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!