データカーソルを使用​して複数の点を選択し​、その点の座標をワー​クスペースに出力する​にはどうすればよいで​すか?

10 Ansichten (letzte 30 Tage)
MathWorks Support Team
MathWorks Support Team am 18 Mai 2017
Figure 上で、データカーソルを使用して複数の点を選択しました。これらの点の座標を MATLAB のベースワークスペースに出力して MATLAB 上で変数として扱う方法を教えてください。

Akzeptierte Antwort

MathWorks Support Team
MathWorks Support Team am 9 Mär. 2021
Bearbeitet: MathWorks Support Team am 9 Mär. 2021
ここでは、2次元のプロット上で、手動で選択したデータ点の座標を含む構造体配列を手動で作成する方法と、コマンドを使ってワークスペースに出力する方法の2つを紹介します。
[手動で座標情報を取得する方法]
1. コマンドウィンドウで次のコマンドを実行し、図を描画します。
>> plot(1:100)
2. 生成された Figure のツールバーのデータカーソルボタンをクリックします。
3. Figure 上の任意の点をクリックします。
4. Alt キーを押しながら Step 3 を繰り返し、複数の点を選択します。
5. Figure 上で右クリック(Mac の場合は Crtl キーを押しながらクリック)し、「カーソルデータをワークスペースにエクスポート」オプションを選択します。
6. デフォルトの変数名 “cursor_info” が設定されますので “OK” をクリックします。
7. MATLAB のコマンドウィンドウで
>> cursor_info.Position
と入力し、”Enter” を押します。
構造体配列 “cursor_info” は選択した順番、点のx座標、y座標すべての情報を含んでいます。3次元の図の場合、z座標の情報が追加されますが選択した順番は保持されません。また、上記のStep7を完了するまでは、変数 “cursor_info” はワークスペースには表示されません。
[コマンドで座標情報を取得する方法]
この例では、datacursormode 関数を使用して、データカーソル情報をプログラムによって取得します。
・daracursormode 関数
>> fig = figure;
>> z = peaks;
>> plot( z(:, 30:35) )
>> dcm_obj = datacursormode(fig);
>> set(dcm_obj,'DisplayStyle','datatip',...
'SnapToDataVertex','off','Enable','on')
データチップ(取得したい座標点)をクリックし、次のコードを実行します。
>> c_info = getCursorInfo(dcm_obj)

Weitere Antworten (0)

Kategorien

Mehr zu 視覚的探索 finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Produkte

Community Treasure Hunt

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

Start Hunting!