プロットされるすべてのアイテムのリスナーを持つプロットを作成したいと思います。私が実際にやりたいのは、3D矢筒プロットを作成することです。矢印の頭をクリックするたびに、クリックした矢印のIDに基づいて別のプロットを作成したいと思います。
これはMatlabで可能ですか?
私は他のプログラミング言語で他のオプション(実装が簡単)を探求することにオープンです。
プロットされるすべてのアイテムのリスナーを持つプロットを作成したいと思います。私が実際にやりたいのは、3D矢筒プロットを作成することです。矢印の頭をクリックするたびに、クリックした矢印のIDに基づいて別のプロットを作成したいと思います。
これはMatlabで可能ですか?
私は他のプログラミング言語で他のオプション(実装が簡単)を探求することにオープンです。
グラフィックハンドルオブジェクトには、この種のことに使用できるコールバックがあります。
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