2012-02-20 13 views

答えて

3

通常、ハンドルのグラフィックスプロパティを使用してこれを行うことができます。例えば:

プロットを作成

h = plot(1:10, rand(10,1)); 

そして点の実際の値を取得 X =(H、 'XDATA') Y =得る(H、 'YDATA')

を得ます

異なる種類のオブジェクトは異なるプロパティを持ち、時には探索する必要があります。その場合、この構文は便利です。

get(h) %This displays all available properties on `h` to the command window 

最終的に有用ちらほらあなたがプロットされた、または手動でクリックされた最後の項目のハンドルを提供gco(「現在のオブジェクトを取得する」)機能、です。これは、プロットされたアイテムがどこから来たのかわからない場合に役立ちます。


編集:

findobj、またはfindallのいずれかを使用して、オブジェクトの子孫である特性のすべてを検索します。たとえば:

findobj(gcf); %Returns all non-hidden, typical objects. This should be your first attempt. 
findall(gcf); %Returns all children, even hidden object, such as titles, manually added annotations, and UI menus 

この呼び出しは、おそらく最後の例は、適切に設計された正規表現を改善することができ、いくつかの一般的なUIの注釈

get(findall(gcf,'-not','type','uimenu','-not','type','uitoggletool','-not','type','uipushtool','-not','type','uitogglesplittool'),'type') 

を(削除しますが、私は今働いていることを得るように見えることはできません。)

+0

ありがとう!あなたの答えはかなり役に立ちました。 コマンド "gco"、 "get"、 "set"を使用して、私がプロットした最後のオブジェクトのプロパティを制御できます。 私が必要とするものがもう1つあります:どのようにプロット上のすべてのオブジェクトをリストすることができますか? – Ian

+0

'findobj(gcf)'は、現在のFigureのすべての子孫のハンドルを提供します。 'findobj'はこの種の作業に非常に有用であり、プロパティ値(またはその論理的組み合わせ)に基づいてリストをフィルタリングすることもできます。 'help findobj'をもっと参考にしてください。 – Pursuit

+0

は、残念ながら動作しません:( をここに私の例で私はシンプルなプロット トン= 0作成:0.25:3 *パイ; Y = 0.9 *罪(t)を*(T); プロットを( これらのうちの1つを選択すると、「gco」というコマンドで対応するハンドルが取得され、そのすべてのプロパティにアクセスできます。 オン一方、findobj(gcf)を使用すると3つのハンドルが得られますが、前のものとの対応はありません – Ian

関連する問題