MATLAB Answers

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

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

  0 Comments

Sign in to comment.

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

  0 Comments

Sign in to comment.

Products


Release

R2018b