MATLAB: How to plot a 3d graph with projection of 3d axis values on to the 2d surface with vertical lines

3d plotsMATLABplot

Hi guys,
Can any one help me out in plotting a 3d graph with projection of 3d axis values on to the 2d surface with vertical lines.
Example image is attached.
Let me know If there is any simple solution for this

Best Answer

N = 100 ;
x = rand(N,1) ; y = rand(N,1) ; z = rand(N,1) ;
% pick some points from above to draw vertical lines
idx = randperm(N,10) ;
x1 = x(idx) ; y1 = y(idx) ; z1 = z(idx) ;
x2 = x(idx) ; y2 = y(idx) ; z2 = 0*z(idx) ;
% draw vertical lines
plot3(x,y,z,'ob')
hold on
plot3([x1 x2]',[y1 y2]',[z1 z2]','r')
Related Question