On Thursday, May 5, 2011, Alexander Dietz
<alexanderdie...@googlemail.com> wrote:
> Hi,
>
> I have the following situation. I have been following the example to create a 
> 3d surface, as explained here:
>
> http://matplotlib.sourceforge.net/examples/mplot3d/surface3d_demo2.html
>
> and I have altered the code slightly to plot a straight red line from the 
> center outside of the sphere (see code at the end of this email). As one can 
> see, the whole line is visible always, no matter how the sphere is turned. Is 
> there a way to 'hide' those parts of the red line, which are 'behind' the 
> blue surface? Like you stick a pencil into an apple and turn the apple, so 
> you can see parts of the pencil, depending on how the apple is rotated 
> (except the part of the pencil inside the apple)?
>
> If someone can help me with that problem that would be great.
>
>
> Thanks
>   Alex
>
>
>
>
>
>
> from mpl_toolkits.mplot3d import Axes3D
> import matplotlib.pyplot as plt
> import numpy as np
>
> fig = plt.figure()
> #ax = fig.add_subplot(111, projection='3d')
> ax = Axes3D(fig)
>
> u = np.linspace(0, 2 * np.pi, 100)
> v = np.linspace(0, np.pi, 100)
>
> x = 10 * np.outer(np.cos(u), np.sin(v))
> y = 10 * np.outer(np.sin(u), np.sin(v))
> z = 10 * np.outer(np.ones(np.size(u)), np.cos(v))
>
> ax.plot([0,15],[0.0,0.0],'r', lw=4)
>
> ax.plot_surface(x, y, z,  rstride=4, cstride=4, color='b')
>
> plt.show()
>

Mplot3d is not a true 3d plotting system.  I would recommend mayavi
for that.  Because mplot3d is a hack to render 3d objects with a 2d
rendering system, matplotlib can't get the the layering right.  Maybe
in the far future this will be changed, but for now, it is a design
limitation.

Ben

------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to