multiple plots in one 3D, bug

1 view (last 30 days)
Hi Community,
I build a GUI with GUIDE and want 2 3D-plots in one axes. My essential Code.
function l1_listbox_Callback
hold on
myplot = plot3(handles.plot3D_axes,X,Y,Z);
I got this in a listbox which choose between different data. There shall be a posibility to get multiple plots at the same time in one axes-object. But described Code only has effect after I used a pan/rotate-uipushtool with default callback on the axes. Without this it just deletes the old plot and shows the new one.
I tried to cheat with rotate(h,direction, alpha), rotate(h,direction,-alpha), to get this miracle effect after a rotation but with no success.
Any idea?

Accepted Answer

Walter Roberson
Walter Roberson on 24 Nov 2016
Use the function form of hold() and pass the axes handle.
hold(handles.plot3D_axes,'on')

More Answers (1)

Pollok Tim
Pollok Tim on 24 Nov 2016
Ok, I found the solution myself. This will make it.
function l1_listbox_Callback
% solution
set(gcf,'currentaxes',handles.plot3D_axes);
hold on
myplot = plot3(handles.plot3D_axes,X,Y,Z);

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!