App designerでグ​ラフクリックをトリガ​ーにしたい

12 views (last 30 days)
qrqr
qrqr on 22 Jan 2020
Answered: Etsuo Maeda on 31 Jan 2020
MATLAB2018bのApp designerを使い以下のようなGUIを作成しました。
この時、グラフの各データをクリックすると座標が自動で表示されますが、このクリックを起点に関数を実行することはできるのでしょうか?
また、クリックしたときの表示されてる座標を変数に格納することもできますか?
宜しくお願いします。

Accepted Answer

Musashi Ito
Musashi Ito on 28 Jan 2020
Edited: Musashi Ito on 28 Jan 2020
ご参考までに、はっきりした回答ではないのですが、グラフの各データをクリックすると座標が自動で表示される機能は「データ ヒント」と呼ぶらしいです。表示をカスタマイズもできそうです。
このデータ ヒントから座標値も datacursormode 関数で取得できるみたいです。
が、App Designer 上のグラフをクリックして座標値を取得して変数に格納、となると難しいかもしれません・・・
  1 Comment
qrqr
qrqr on 28 Jan 2020
ありがとうございます。
クリック時の関数を定義すると(WindowButtonUp、Down)、
データヒントの表示がなくなります。
datacursormode on の設定をしてるのですが表示されません。
何が原因なのでしょうか??

Sign in to comment.

More Answers (1)

Etsuo Maeda
Etsuo Maeda on 31 Jan 2020
x = rand(10, 2);
scatter(x(:, 1), x(:, 2))
do = datacursormode(gcf);
do.UpdateFcn = @myFun;
function output_txt = myFun(~, event)
pos = get(event, 'Position');
output_txt = {['X: ', num2str(pos(1))], ['Y: ', num2str(pos(2))]};
disp(pos)
end
HTH

Categories

Find more on 2 次元および 3 次元プロット in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!