figureの座標データ取得について

16 ビュー (過去 30 日間)
ryu
ryu 2022 年 3 月 10 日
コメント済み: ryu 2022 年 3 月 15 日
プロット図上の複数のデータを選択し,座標データを取得したいと思います。
5個のデータを選択して上のようなstructを取得することはできました。
ここから以下のように1列目のデータの小さい順にPositionのデータのcellを作りたいです。
このようにstructののものをcellに変換する方法がよくわかっておりません。初歩的な質問で申し訳ないですが、いい方法を教えてくださいませんでしょうか。

採用された回答

Naoya
Naoya 2022 年 3 月 14 日
あくまでも一例となると思いますが、以下のように 構造体配列の各要素に特定の処理を適用することができる arrayfun関数を使うと比較的スマートに処理することができると思われます。
% DataIndex に対して昇順にソートする (ここでは配列要素順を取得)
[~,idx] = sort( arrayfun(@(x) x.DataIndex,cursor_info) );
% DataIndex と Position の 2要素目を取得
celldata = arrayfun(@(x) [x.DataIndex, x.Position(2)], cursor_info(idx)', 'UniformOutput', false);
% セル配列から通常の行列に変換
matdata = cell2mat(celldata);
  1 件のコメント
ryu
ryu 2022 年 3 月 15 日
丁寧な説明ありがとうございました!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange行列および配列 についてさらに検索

Community Treasure Hunt

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

Start Hunting!