getting plot projection in 3d
3 次查看(过去 30 天)
显示 更早的评论
hi, i was searching for getting projection of plots in 3d view, i found a nice shadowplot function for this purpose i am trying to use it for 3d vectors after plot3(..) but not successful. it only works with mesh/surf plots. help
1 个评论
回答(2 个)
José-Luis
2013-1-30
编辑:José-Luis
2013-1-30
aH = axes;
your_data = randn(1000,3);
oneMat = ones(size(your_data,1),1);
plot3(your_data(:,1),your_data(:,2),your_data(:,3),'b.');
hold on
xL = get(aH,'XLim');
yL = get(aH,'XLim');
zL = get(aH,'XLim');
plot3(oneMat .* xL(2), your_data(:,2), your_data(:,3), 'k.');
plot3(your_data(:,1), oneMat .* yL(2), your_data(:,3), 'k.');
plot3(your_data(:,1), your_data(:,2), oneMat .* zL(1), 'k.');
grid on
Please accept an answer if it helps you.
5 个评论
José-Luis
2013-2-6
That's because you are talking about points. The "shadow" of a point is a point, the "shadow" of a surface is a surface.
Jan
2013-1-30
What about using surf instead of plot3 when the function you have found works for surf, but not for plot3? There are a lot of examples for surface plots in the FileExchange, search for e.g. "arrow".
另请参阅
类别
在 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!