グラフ上の座標取得
20 ビュー (過去 30 日間)
古いコメントを表示
グラフ上の座標を取得する関数ginputは、マウスの左ボタンを押した時の座標を取得できますが、
左ボタンを押した時と、左ボタンを放した時両方の座標を取得する方法はありますか?
0 件のコメント
回答 (2 件)
Kenta
2020 年 6 月 16 日
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キーを押せば回数分の座標が得られますがいかがでしょうか。
0 件のコメント
michio
2020 年 6 月 23 日
こちらの Qiita 投稿が参考になると思います。
マウスクリック時(WindowButtonDownFcn)と離した時(WindowButtonUpFcn)の挙動をコールバック関数で定義する、という多少込み入った方法ですが参考になりましたら。
以下一部抜粋
figH = figure(); % figH: Figureオブジェクト
figH.MenuBar = 'none'; % メニューをオフ
figH.WindowButtonDownFcn = @WindowButtonDownFcn_figH; % マウスボタン押下時のコールバック関数を指定
figH.WindowButtonMotionFcn = @WindowButtonMotionFcn_figH; % マウスボタン移動時のコールバック関数を指定
figH.WindowButtonUpFcn = @WindowButtonUpFcn_figH; % マウスボタンリリース時のコールバック関数を指
0 件のコメント
参考
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!