Return index from Plot3 using getCursorInfo(dcm_obj);

6 次查看(过去 30 天)
I am trying to figure this out. I have a 3d plot (x,y,z) in a GUIDE created GUI and I need to retrieve the DataIndex using the datacursor. I've used this in 2d plots and it works well but for some reason it will only ever return a value of 1.
% --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) h = gcf; dcm_obj = datacursormode(h); info_struct = getCursorInfo(dcm_obj); set (handles.test_index,'str',info_struct.DataIndex);
Appreciate any help.
Thank you
Willem

回答(1 个)

ChristianW
ChristianW 2013-3-12
Works for me:
function test
t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t)
uicontrol('Style', 'pushbutton','Callback',@pbcb)
datacursormode on
function pbcb(hObj,event)
dcm_obj = datacursormode(gcf);
info_struct = getCursorInfo(dcm_obj);
title(info_struct.DataIndex);

类别

Help CenterFile Exchange 中查找有关 Visual Exploration 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by