0

プロットされるすべてのアイテムのリスナーを持つプロットを作成したいと思います。私が実際にやりたいのは、3D矢筒プロットを作成することです。矢印の頭をクリックするたびに、クリックした矢印のIDに基づいて別のプロットを作成したいと思います。

これはMatlabで可能ですか?

私は他のプログラミング言語で他のオプション(実装が簡単)を探求することにオープンです。

4

1 に答える 1

0

グラフィックハンドルオブジェクトには、この種のことに使用できるコールバックがあります。

ButtonDownFcn —カーソルがオブジェクト上またはオブジェクトの周囲の5ピクセルの境界内にあるときに、マウスの左ボタンをクリックすると実行されます。

'UserData' 各グラフィックスハンドルオブジェクトのプロパティを設定して、IDを指定することもできます。

これらの2つの概念を組み合わせて、必要な機能を作成します。

h = quiver(...); %# generate the graphics handle item;
set(h,'UserData',1,'ButtonDownFcn',@myCallback);

function myCallback(src,eventdata)
    clicked_item_id = get(src,'UserData'); %# get the ID of the clicked item
    figure; plot(data(ID)); %# obviously won't work as is, just for illustration
end 
于 2012-08-24T15:40:02.857 に答える