I have a 3d plot that contains a hemisphere drawn using surf and I am trying to plot more data using scatter3. This works fine as long as the data set I pass to scatter3 contains no more than 2000 points. If there are more than 2000 points, then scatter3 does not plot anything. If I remove the call to surf, then scatter3 works and draws the data.
I have verified that hold is on. I reversed the order of the calls to surf and scatter3 but it did not have any affect. Do I need to switch from scatter3 to plot3 (similar was suggested here) or is there some limit I can change for scatter3?
I am using Matlab 2012b.
EDIT: I did some more digging and looked into the renderers being used. When I do not have the semi-transparent hemisphere displayed, the renderer is "painters" but adding the hemisphere changes the renderer to OpenGL. If I force the renderer to be "painters" (using set(gcf, 'Renderer', 'painters') then scatter3 works properly but I lose the transparency on the hemisphere. This makes sense, but I really need the transparency because part of the data plotted using scatter3 is within the hemisphere. Adding a second axes will not help because the renderer is for the entire figure, not each axes (right?)