グラフ上の座標取得

19 visualizaciones (últimos 30 días)
Mamoru Mabuchi
Mamoru Mabuchi el 16 de Jun. de 2020
Respondida: michio el 23 de Jun. de 2020
グラフ上の座標を取得する関数ginputは、マウスの左ボタンを押した時の座標を取得できますが、
左ボタンを押した時と、左ボタンを放した時両方の座標を取得する方法はありますか?

Respuestas (2)

Kenta
Kenta el 16 de Jun. de 2020
close all;
figure;
x = linspace(0,3*pi,200);
y = cos(x) + rand(1,200);
scatter(x,y)
[x1,y1] = ginput;
figure;plot(x1,y1);
放した時ではないですが、複数回左クリックして、最後にenterキーを押せば回数分の座標が得られますがいかがでしょうか。

michio
michio el 23 de Jun. de 2020
こちらの Qiita 投稿が参考になると思います。
マウスクリック時(WindowButtonDownFcn)と離した時(WindowButtonUpFcn)の挙動をコールバック関数で定義する、という多少込み入った方法ですが参考になりましたら。
以下一部抜粋
figH = figure(); % figH: Figureオブジェクト
figH.MenuBar = 'none'; % メニューをオフ
figH.WindowButtonDownFcn = @WindowButtonDownFcn_figH; % マウスボタン押下時のコールバック関数を指定
figH.WindowButtonMotionFcn = @WindowButtonMotionFcn_figH; % マウスボタン移動時のコールバック関数を指定
figH.WindowButtonUpFcn = @WindowButtonUpFcn_figH; % マウスボタンリリース時のコールバック関数を指

Categorías

Más información sobre GUIDE アプリの移行 en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!