MATLAB Function Reference    
Line Properties

Line プロパティ

この節では、プロパティ名とプロパティ値を示します。中括弧({})はデフォルト値です。

BusyAction                   cancel | {queue}

コールバックルーチンの割込みBusyAction プロパティを使って、実行中のコールバックルーチンに割込みを行うイベントの取り扱い方法を制御することができます。実行中のコールバックルーチンがあれば、続いて呼び込まれるコールバックルーチンは、常にそれを中断しようとします。実行中のオブジェクトのコールバックのInterruptibleプロパティがon (デフォルト)に設定されていれば、イベントキューが処理されるつぎの点で割込みが起こります。Interruptibleプロパティがoffならば、(実行中のコールバックをもつオブジェクトの)BusyActionプロパティは、MATLABがイベントを処理する方法を指定します。つぎのような選択があります。

ButtonDownFcn                文字列

ボタンを押したときのコールバックルーチン。マウスポインタがLineオブジェクト上にあるときにマウスボタンを押すと、必ず実行されるコールバックルーチン。このルーチンには、正しいMATLAB表現、または、M-ファイル名を文字列として定義してください。式は、MATLABワークスペース内で実行します。

Children                     ハンドル番号からなるベクトル

空行列。Line オブジェクトは、子オブジェクトをもちません。

Clipping                     {on} | off

クリッピングモード。MATLAB は、デフォルトでLine オブジェクトを Axes のプロットボックスにクリップします。Clippingプロパティをoffに設定すると、Line オブジェクトは Axesのプロットボックスの外に表示します。Line オブジェクトを作成し、holdonにし、軸のスケーリングを固定 (axis manual)、その後でより長い Line オブジェクトを作成したときに、このようなことが起こります。

Color                        ColorSpec

Line のカラー。 Lineのカラーを指定する3要素のRGBベクトル、または、MATLAB の既定のカラー名。カラーの設定については、ColorSpecのリファレンスページを参照してください。

CreateFcn                    文字列

オブジェクト作成時に実行されるコールバックルーチン。このプロパティは、MATLAB が Line オブジェクトを作成するときに実行するコールバックルーチンを定義します。Lineオブジェクトに対するデフォルト値として、このプロパティを定義しなくてはいけません。たとえば、

は、Line オブジェクト作成時に、Axes のLineStyleOrderを設定するルートレベルのデフォルト値を定義します。MATLABは、すべての Line のプロパティを設定した後に、このルーチンを実行します。既存のLine オブジェクトにこのプロパティを設定しても、効果はありません。

実行しているオブジェクトのCreateFcnのハンドルは、gcboを使って引用できるルートのCallbackObjectプロパティを通してのみアクセスできます。

DeleteFcn                    文字列

Line 削除時のコールバックルーチンの削除。Lineオブジェクトを削除する(たとえば、 delete の実行や、Axesや Figure を消去する)とき、実行するコールバックルーチン。MATLABは、オブジェクトのプロパティを削除する前にルーチンを実行するので、これらの値はコールバックルーチンに対して利用可能です。

実行しているオブジェクトのDeleteFcnのハンドルは、gcboを使って引用できるルートのCallbackObjectプロパティを通してのみアクセスできます。

EraseMode                    {normal} | none | xor | background

消去モード。このプロパティは、Lineオブジェクトを描いたり、消去するMATLABの機能を制御するものです。消去モードは、連続的に動きを表現するアニメーションの作成に有効なものです。すなわち、アニメーションでは、パフォーマンスを改良したり、希望する効果を得るために、個々のオブジェクトを再描画する方法を制御する必要があります。

Non-normal Erase モードでの印刷

MATLABは、すべてのオブジェクトのEraseModeが、normalであるかのようにフィギュアを印刷します。これは、EraseModeに、none, xor, backgroundのいずれかを設定して作成されたグラフィックオブジェクトは、スクリーンでの表示と印刷用紙での表示が異なって見えることを意味しています。スクリーン上で、MATLABは、カラー層を数学的に合わせて(たとえば、ピクセルカラーとその後ろにあるピクセルのカラーとの排他的な和を計算する)、最大のレンダリングスピードを得るための3次元のソートを無視しています。しかし、これらの技法は、印刷出力には適用されません。

MATLABのコマンドgetframeや、他のスクリーンキャプチャアプリケーションを使って、非ノーマルなモードでのオブジェクトを含むフィギュアのイメージを作成することができます。

HitTest                      {on} | off

マウスクリックによる選択HitTest は、Line上でのマウスクリックの結果、Lineがカレントのオブジェクト(gcoコマンドとFigureのCurrentObjectプロパティにより出力される)になり得るかどうかを指定します。HiTestoffならば、Line上をクリックすると、その下のオブジェクト(このオブジェクトを含むAxesかもしれません)を選択します。

HandleVisibility             {on} | callback | off

コマンドラインユーザとGUIによるオブジェクトのハンドルへのアクセスの制御。このプロパティは、オブジェクトのハンドルが、その子オブジェクトの親のリスト内で、どのようなときに、視覚可能であるときを決定します。HandleVisibilityプロパティは、(ダイアログボックスのような)ユーザインタフェースデバイスのみを含んでいるFigure内に、コマンドラインから誤って書き込むことや削除することを防ぐために有効です。

HandleVisibilityonのときは、ハンドルは常に見える状態です。

HandleVisibilitycallbackに設定すると、ハンドルは、コールバックルーチンの中から、または、コールバックにより起動される関数からは可視化されますが、コマンドラインから起動される関数の中からは可視化されません。これは、コマンドラインユーザがGUIを保護しながら、コールバックルーチンがオブジェクトのハンドルに完全にアクセスできるようにするために提供されています。

HandleVisibilityoffに設定すると、常にハンドルは視覚不可能になります。これは、コールバックルーチンが、GUIを傷つける可能性(ユーザがタイプした文字列の評価のような)がある関数を呼び込み、その関数の実行中にハンドルを一時的に隠すときに必要です。

ハンドルが子オブジェクトの親のリスト内で視覚不可能のとき、オブジェクトの階層を検索したり、ハンドルのプロパティを確認してハンドルを取得する関数は、ハンドル番号を出力できません。これらの関数には、get, findobj, gca, gcf, gco, newplot, cla, clf, closeが含まれます。

ハンドルの視覚状態がcallbackoffを使って制限されているとき、オブジェクトのハンドルは、その親のChildrenプロパティには現れません。Figureは、ルートのCurrentFigureプロパティに現れず、オブジェクトは、ルートの CallbackObjectプロパティ、または、FigureのCurrentObjectプロパティに現れません。そして、Axesは、親オブジェクトのCurrentAxes プロパティに現れません。

RootのShowHiddenHandlesプロパティをonに設定すると、それらのHandleVisibilityの設定(これは、HandleVisibilityプロパティの値に影響を与えません)に拘わらず、すべてのハンドルを視覚可能にできます。

隠されているハンドル番号も、まだ有効です。オブジェクトのハンドルが分かっていると、そのプロパティを関数setget で設定し、ハンドルを取り扱う関数に渡すことができます。

Interruptible                {on} | off

コールバックルーチンの中断モードInterruptibleプロパティは、Lineのコールバックルーチンが、連続的に呼び込まれるコールバックルーチンによって、中断されるかどうかを制御します。ButtonDownFcnに対して定義されたコールバックルーチンのみが、Interruptibleプロパティにより影響を受けます。MATLABは、ルーチン内でdrawnow, figure, getframe, pauseコマンドが実行されるときのみ、コールバックルーチンを中断できるイベントを確認します。

LineStyle                    {-} | -- | : | -. | none

ラインスタイル。 このプロパティは、ラインスタイルを指定します。使用可能なラインスタイルを以下に示します。

シンボル
ラインスタイル
-
実線 (デフォルト)
--
破線
:
点線
-.
鎖線
none
線なし

各点にマーカを設定し、点と点を線で結びたくないときは、 LineStyle none を使います(Marker プロパティを参照してください)。

LineWidth                    スカラ

ラインの幅。ポイント数で指定します(1ポ イント= 1/72 インチ)。デフォルトのLineWidthは、0.5ポイントです。

Marker                       キャラクタ(表を参照)

マーカシンボル。Marker プロパティは、データ点を表示するマークを指定します。Markerプロパティに対して、 LineStyleプロパティとは独立に値を指定できます。サポートされているマーカは、以下の通りです。

マーカ
詳細
+
プラス記号
o

*
アスタリスク
.

x
x印
s
四角形
d
ダイアモンド
^
上向き三角形
v
下向き三角形
>
右向き三角形
<
左向き三角形
p
五角形
h
六角形
none
マーカなし(デフォルト)

MarkerEdgeColor              ColorSpec | none | {auto}

マーカのエッジのカラー。マーカのカラー、または、塗りつぶされたマーカ(円、四角形、ダイアモンド、五角形、六角形、4種類の三角形)のエッジのカラー。ColorSpec は、使うカラーを定義します。noneはカラーを指定しないので、マーカに着色せず、 見えません。 autoは、MarkerEdgeColorLineColorプロパティと同じカラーに設定します。

MarkerFaceColor              ColorSpec | {none} | auto

マーカの面のカラー。閉じた形のマーカ(円、四角形、ダイアモンド、五角形、六角形、4種類の三角形)を塗りつぶすカラー。ColorSpec は、使うカラーを定義します。noneは、マーカの内側を透明にし、バックグランドが見えるようにします。autoは、塗りつぶすカラーをAxesのカラーに設定するか、AxesのColorプロパティがnoneに設定されていたら、Figureのカラーに設定します。

MarkerSize                   ポイント単位のサイズ

マーカサイズ。マーカのサイズをポイント数で指定します。MarkerSize に対するデフォルト値は、6ポイントです(1ポイント= 1/72 インチ)。MATLABは、店マーカ('.'にて指定)を指定したサイズの1/3で描きます。

Parent                       ハンドル番号

Line の親オブジェクト。 Line の親オブジェクトであるAxes のハンドル番号。このプロパティを新しい Axes のハンドル番号に変更することにより、Lineオブジェクトを他の Axes に移動できます。

Selected                     on | off

選択されたオブジェクト。このプロパティが onのとき、MATLAB は、SelectionHighlightプロパティもonならば、ハンドル番号の選択状態を示すハンドルを表示します。たとえば、このプロパティを設定するためにButtonDownFcnを定義すると、マウスでオブジェクトを選択することができます。

SelectionHighlight           {on} | off

選択時のオブジェクトの強調Selectedプロパティが on のとき、MATLAB は各々の頂点にハンドルを描くことにより、選択された状態を表わします。SelectionHighlightoffならば、MATLAB はハンドルを描きません。

Tag                          文字列

ユーザ指定のオブジェクトのラベルTagプロパティは、ユーザ指定のラベルを使ってグラフィックスオブジェクトを識別する方法を提供します。これは、オブジェクトのハンドル番号をグローバル変数として定義したり、コールバックルーチン間で引数として渡すことを必要とする、対話的なグラフィックスプログラムを構築するときに、特に有効です。任意の文字列でTagを定義できます。

Type                         文字列 (参照のみ)

グラフィックスオブジェクトのクラス。Line オブジェクトでは、Typeは、常に文字列 'line'です。

UIContextMenu                uicontextmenuオブジェクトのハンドル

Lineに関連したコンテキストメニュー。 Lineと同じFigure内に作成するUicontextmenuオブジェクトのハンドルに、このプロパティをアサインします。コンテキストメニューを作成するには、関数uicontextmenuを使います。Line上を右クリックすると、コンテキストメニューを表示します。

UserData                     行列

ユーザ指定のデータ。任意のデータをLine オブジェクトに関連付けることができます。MATLAB は、このデータを使いませんが、setgetを使って、アクセスすることができます。

Visible                      {on} | off

ラインの可視化。デフォルトでは、すべてのLine が視覚可能です。offに設定すると、Line は見えなくなりますが、それでも存在していて、そのプロパティに対してsetgetを使うことができます。

XData                        座標ベクトル

X座標。 Line を定義する x 座標のベクトル。YDataZDataは、行数が同じでなくてはいけません。("例題"を参照)。

YData                        座標ベクトル

Y座標。Line を定義する y 座標のベクトル。XDataZDataは、行数が同じでなくてはいけません("例題"を参照)。

ZData                        座標ベクトル

Z座標。Line を定義するz座標のベクトル。XDataYData は、行数が同じでなくてはいけません。("例題"を参照)。

参考:

axes,newplot, plot, plot3


 line LineSpec