Getting Started | ![]() ![]() |
オブジェクトプロパティの設定
すべてのオブジェクトプロパティは、デフォルト値をもっています。しかし、グラフをカスタマイズするためにプロパティの設定を変更することが便利である場合があります。オブジェクトプロパティの設定方法には2種類あります。
プロットコマンドからプロパティを設定
オブジェクトプロパティ値は、オブジェクト作成関数や、plot
, mesh
,
surf
のようなプロット関数の引数として指定することができます。
lineまたはsurfaceを作成するプロットコマンドを使ってプロパティ名と値の組を引数として指定することができます。たとえば、コマンド
plot(x,y,'LineWidth',1.5)
は、LineWidth
プロパティが1.5 ポイント(1ポイント= 1/72 インチ)に設定されたlineを使って、変数
x
と y
のデータをプロットします。この方法で任意のlineオブジェクトプロパティを設定することができます。
既存のオブジェクトのプロパティを設定
既存のオブジェクトのプロパティ値を変更するには、set
コマンドを使うか、あるいは、
プロパティエディットモードが使えるときは、プロパティエディタを用いてください。プロパティエディタは、多くのオブジェクトプロパティにグラフィカルユーザインターフェースを提供します。
この節では、setコマンドの使い方について述べます。詳細は、プロパティエディタの使い方 を参照してください。
多くのプロットコマンドは、作成したオブジェクトのハンドル番号も出力するので、set
コマンドを使ってオブジェクトを変更することができます。たとえば、つぎのステートメントは、5行5列行列をプロットし(列ごとに1つづつ5個のlineを作成)、Marker
を四角形に MarkerFaceColor
を緑色に設定します。
h = plot(magic(5)); set(h,'Marker','s',MarkerFaceColor','g')
この場合、h
は5つのハンドルを含むベクトルで、各ハンドルは、プロット内の5つのlineの各々です。set
ステートメントは、すべてのlineの Marker
および MarkerFaceColor
プロパティを同じ値に設定します。
複数のプロパティ値の設定
各lineのプロパティを違う値に設定したい場合は、セル配列を使ってすべてのデータを保存し、set
コマンドに渡すことができます。たとえば、プロットを作成し、lineのハンドル番号を保存します。
h = plot(magic(5));
各ラインに別々のマーカを付加し、マーカの面の色をラインと同じ色にしたいとします。2つのセル配列を定義する必要があります。1つはプロパティ名を含み、もう1つはプロパティの希望する値を含みます。
セル配列 prop_name
には、2要素が含まれます。
prop_name(1) = {'Marker
'}; prop_name(2) = {'MarkerFaceColor
'};
セル配列 prop_values
は、10個の値を含みます。Marker
プロパティに対する値が5個で、MarkerFaceColor
プロパティに対する値が5個です。prop_values
は 、2次元セル配列であることに注意してください。1次元目は、値が適用される
h
のハンドル番号を示し、2次元目は、値が割り当てられるプロパティを示します。
prop_values(1,1) = {'s
'}; prop_values(1,2) = {get(h(1),'Color
')}; prop_values(2,1) = {'d
'}; prop_values(2,2) = {get(h(2),'Color
')}; prop_values(3,1) = {'o
'}; prop_values(3,2) = {get(h(3),'Color
')}; prop_values(4,1) = {'p
'}; prop_values(4,2) = {get(h(4),'Color
')}; prop_values(5,1) = {'h
'}; prop_values(5,2) = {get(h(5),'Color
')};
MarkerFaceColor
は、常に対応するラインのカラー(get
コマンドによりラインの Color
プロパティを取得することにより得られます)の値に割り当てられます。
セル配列を定義した後で、set
を呼び出して新規のプロパティ値を指定します。
set(h,prop_name,prop_values)
![]() |
グラフィックスオブジェクト | 既存のオブジェクトのハンドル番号の検索 | ![]() |