uimenu for labelling according to elements in a vector

I have the following code:
node = [100 -50 -50 -86.6025 0 86.6025;0 86.6025 -86.6025 50 -100 50;0 0 0 200 200 200];
edge = [1 2;2 3;3 1;1 4;2 5;3 6];
type = [1; 1; 1; -1; -1; -1];
EdgeTable = table(edge,type, ...
'VariableNames',{'EndNodes','type'});
structure=graph(EdgeTable);
p=plot(structure,'XData', node(1,:), 'YData', node(2,:),'ZData',node(3,:));
p.NodeColor='black';
uicm=uicontextmenu;
set(p,'uicontextmenu',uicm);
for kk=1:size(edges,1)
uimenu(uicm,'label',int2str(type(kk)));
end
I would like to setup a uimenu such that it returns by right-clicking of the mouse on an element, its corresponding value in the vector "type". But my code doesn't meet my intent. How can I do this?

 채택된 답변

Sahithi Kanumarlapudi
Sahithi Kanumarlapudi 2020년 2월 7일

0 개 추천

Hi,
The code you have written is for adding elements to the uicontextmenu. You could use the ButtonDownFcn of the Line Properties to add label to the plot as you require.
For more information on how to use this function refer to the follwing link

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Interactive Control and Callbacks에 대해 자세히 알아보기

제품

릴리스

R2019b

태그

Community Treasure Hunt

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

Start Hunting!

Translated by