How to make 3D surface plot opaque to 3D vectors?

Hi everyone,

I’m essentially plotting vectors on the surface of a sphere, represented by a plot_surface plot. On the top of this surface, I’m plotting vectors using the quiver function.

However the rendered image is displaying all of the quiver errors, ignoring the fact that some of them are behind the surface plot.

Here is an image to show you what it looks like:

As you can see, it looks quite messy. Is there a way to make the surface plot opaque to the quiver vectors?

Cheers,
Luca

Hey Luca, this is due to a limitation of the 3D renderer, where different objects are rendered all at once rather than being properly occluded by things in front/behind them. As a workaround, you could call quiver on each point individually, which would give them unique z depths.