No, it doesn't work. I'm using this method for the 3D plot: https://scicomp.stackexchange.com/questions/26739/plot-2d-piecewise-constant-in-matlab-in-a-finite-elements-mesh
Same aspect ratio for the z-axis in a surface plot
16 ビュー (過去 30 日間)
古いコメントを表示
I have a surface plot
and the x-axis and y-axis have the same ratio. I wish for the z-axis to have the same ratio. I have used
daspect ([1 1 1])
but it turns into a 2D plot.
I have used this code for the same aspect ratio for the x-axis and y-axis.
h=get(gca,'DataAspectRatio');
if h(3)==1
set(gca,'DataAspectRatio',[1 1 1/max(h(1:2))])
else
set(gca,'DataAspectRatio',[1 1 h(3)])
end
3 件のコメント
Mathieu NOE
2023 年 6 月 9 日
maybe you get a 2D plot because the range of your z axis is 1000 times smaller than the range of x, y axes
採用された回答
Simon Chan
2023 年 6 月 10 日
As mentioned by Mathieu NOE in the comment section, your z-axis data is 1000 times smaller than the range of x and y-axes data. Hence the ratio between them should be rescale accordingly.
Check whether this is what you want or not.
[X,Y] = meshgrid(1:0.5:10,1:20);
Z = sin(X) + cos(Y);
surface(X/5+1,Y/3.5,Z*1e-3) % Just make sure the range of the demo data is close to your data
view(3)
daspect ([1 1 1e-3]);
10 件のコメント
Simon Chan
2023 年 6 月 10 日
Glad to see you come up with a new idea. Just curious your data along z-axis is also in time unit?
その他の回答 (0 件)
参考
カテゴリ
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!