surface disappears when zdata is set to 0
3 次查看(过去 30 天)
显示 更早的评论
for some reason i want to set the zdata of a surface plot object to zero, keeping its color, and setting view point to [0 0 1] (looking at it from the top).
code used:
surfobjhandle=surf(X,Y,Z);
colordata=get(surfobjhandle,'cdata');
view([0 0 1]);
set(surfobjhandle,'zdata',zeros(size(get(surfobjhandle,'zdata'))));
set(surfobjhandle,'cdata',colordata);
however, this way the surface is not visible anymore with the viewpoint set to [0 0 1]. it only appears setting a different viewpoint which is not what i want. why is this?
4 个评论
Jan
2012-8-29
@Peter: If you had posted the test data I've asked for, the problem would have been solved faster, perhaps.
回答(1 个)
Kevin Moerman
2012-8-29
This example is probably equivalent to what you want:
[X,Y,Z]=peaks(25); figure; surf(X,Y,zeros(size(Z)),Z) ; view(3); axis vis3d;
Perhaps you loose your plot because of axis tight? That sometimes crops too tightly. Also have a look at using the pcolor and imagesc commands instead.
Kevin
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!