MATLAB Function Reference | ![]() ![]() |
ユーザは、つぎの2つの方法を使って、グラフィックオブジェクトのプロパティを設定したり、引用できます。
set
とget
は、プロパティの値を設定したり、引用したりします。プロパティのデフォルト値を変更するには、 デフォルトプロパテ ィ値の設定を参照してください。
Text Property 詳細s
この節では、プロパティ名とそれに設定できる値について説明します。中括弧{}は、デフォルト値です。
BusyAction
cancel | {queue}
コールバックルーチンの割り込み。コールバックルーチンの割込み。BusyAction
プロパティを使って、実行中のコールバックルーチンに割込みを行うイベントの取り扱い方法をコントロールすることができます。実行中のコールバックルーチンがあれば、続いて呼び込まれるコールバックルーチンは、常にそれを中断しようとします。コールバックを実行中のオブジェクトのInterruptible
プロパティがon
(デフォルト)に設定されていれば、イベントキューが処理されるつぎの点で割込みが起こります。Interruptible
プロパティがoff
ならば、(実行中のコールバックをもつオブジェクトの)BusyAction
プロパティは、MATLABがイベントを処理する方法を指定します。つぎのような選択があります。
cancel
- 2番目のコールバックルーチンを実行しようとするイベントをキャンセル
queue
- カレントのコールバックルーチンが終了するまで、2番目のコールバックルーチンの実行をさせるイベントを待機させる。
ButtonDownFcn
文字列ボタンを押したときのコールバックルーチン。ポインタが Text オブジェクト上にあるときに、マウスボタンを押すと実行されるコールバックルーチン。このルーチンは、有効なMATLAB 表現、または、 M-ファイル名を文字列として定義してください。式はMATLAB ワークスペースで実行します。
Children
行列(参照のみ)空行列です。Text オブジェクトは、子オブジェクトをもちません。
Clipping
on | {off}
クリッピングモード。 Clipping
が on
のとき、MATLAB は Axes の外側にあるText を表示しません。
Color
ColorSpec
テキストカラー。Text のカラーを指定する3 要素の RGB ベクトル、または、MATLAB の既定のカラーの名前。Color
のデフォルトの値は白です。カラーの指定の詳細は、リファレンスページのColorSpec
を参照してください。
CreateFcn
文字列オブジェクト作成時に実行されるコールバックルーチン。このプロパティは、MATLAB が Text オブジェクトを作成するときに、実行するコールバックルーチンを定義します。このプロパティは、Text に対するデフォルト値として定義しなければなりません。たとえば、ステートメント
set(0,'DefaultTextCreateFcn',... 'set(gcf,''Pointer'',''crosshair'')')は、Text オブジェクト作成時に、Figure の
Pointer
プロパティを十文字に設定する ルートレベルのデフォルト値を定義します。MATLABは、Text のすべてのプロパティを設定した後に、このルーチンを実行します。このプロパティを既存のText オブジェクトに対して設定しても、効果はありません。
実行しているオブジェクトのCreateFcnのハンドルは、ユーザがgcbo
を使って引用することができる ルートのCallbackObject
プロパティを通してのみアクセスできます。
DeleteFcn
文字列
Text を削除するときのコールバックルーチン。Text オブジェクトを削除する(delete
の実行や、AxesやFigure を消去する)とき、実行するコールバックルーチン。MATLABは、オブジェクトのプロパティを壊す前に、このルーチンを実行するので、これらの値はコールバックルーチンに対して利用可能です。
gcbo
を使って引用することができる ルートのCallbackObject
プロパティを通してのみアクセスできます。
Editing
on | {off}
編集モードの切り替え。このプロパティをデフォルトのoff
に設定すると、対話的にテキスト文字列を編集できません(たとえば、String
プロパティをテキストに変更しなければなりません)。このプロパティを on
とすると、MATLAB は、テキスト文字列の始めに挿入カーソルを移動して、編集可能にします。新しいテキスト文字列を適用するためには、
Editing
プロパティをoff
にします。
String
プロパティを新しいテキストを含むようにアップデートして、Editing
プロパティを off
にリセットします。再度編集を始めるには、Editing
プロパティをon
に再度設定してください。
EraseMode
{normal} | none | xor | background
消去モード。 このプロパティは、Textオブジェクトの描画や消去のために MATLAB が使用する技法を制御します。消去モードは、連続的に動きを表現するアニメーションの作成に有効で、アニメーションの性能を改良したり希望する効果を得るためには、個々のオブジェクトを再描画する方法を制御する必要があります。
normal
-- すべてのオブジェクトが正しく再描画されることを保証するために必要な3次元解析を行い、表示範囲を描画します。このモードは、最も正確に図を表示することができますが、非常に時間のかかるものです。他のモードは、かなり時間の短縮にはなりますが、完全な図を再描画することはできず、精度は悪くなります。
none
-- -Textは、移動したり、壊されても消去されません。EraseMode
none
を使って消去された後、オブジェクトがスクリーン上にまだ表示されていても、MATLAB は、この情報をもっていないので、プリント出力することはできません。
xor
-- Textの下側のスクリーンの各ピクセルのインデックスとの排他的論理和により表示されたり、消去されたりします。Textを消去したとき、Text の下のオブジェクトには影響を与えません。しかし、Textが、xor
モードで書かれている場合は、そのカラーは、Textの下側のスクリーンのカラーに依存し、Axes のバックグランドColor
のとき、または、 Figure のバックグランドのColor
background
-- バックグランドColor
で描画することや、または、AxesのColor
がnone
で設定されている場合、FigureのバックグランドColor
で、Text を消去します。これは、消去した Text の下のオブジェクトに影響を与えますが、Textは常に適切に着色されています。
EraseMode
が、normal
であるかのようにFigureを常にプリントします。これは、EraseMode
をnone
, xor
, background
に設定して、作成したグラフィックスオブジェクトが紙上よりスクリーン上で異なって見えることがあることを意味しています。スクリーン上で、MATLABは、カラーの層をを数学的に組み合わせ、3次元的なソートを行わないことにより、表示するための時間を短縮しています。しかし、この手法は、実際の印刷には、使えません。
非標準のオブジェクトを含んだFigureのイメージを作成するため、MATLAB のcapture
コマンド、または、他のスクリーンキャプチャアプリケーションを使うことができます。
Extent
長方形の位置(参照のみ)Text の位置とサイズ。Text 文字列のサイズと位置を指定する4 要素の参照のみのベクトル
[left,bottom,width,height]
Units
プロパティにdata
が設定されたなら(デフォルト)、 left
とbottom
は、TextのExtent
の四角形の左下隅の x と y 座標です。
Units
が他の値であれば、left
と bottom
は、Axesの長方形の左下隅から Text の長方形 Extent
の左下隅までの距離です。width
と height
は、長方形 Extent
の大きさです。すべての測定は、Units
プロパティで指定した単位で表わされます。
FontAngle
{normal} | italic | oblique
キャラクタの傾斜。 MATLABは、このプロパティを使ってユーザのシステムで使用可能なフォントの型を選択します。一般的に、このプロパティをitalics
や oblique
に設定すると、傾斜したフォントに設定されます。
FontName
文字列フォントファミリ。Text オブジェクトに使うフォント名を指定する文字列。適切に表示したり印刷したりするためには、このプロパティはユーザのシステムがサポートするフォントでなければなりません。デフォルトのフォントは、MSP ゴシックです。
固定幅のフォントの指定
任意の位置に良く見えるように、固定幅のフォントを使いたい場合、FontName
を文字列FixedWidth
に設定する必要があります。
set(text_handle,'FontName','FixedWidth')
このパラメータ値は、固定幅のフォントの名前をハードコードするために必要な処理をエルミネーションします。これは、ASCIIキャラクタコーディング(日本語)を使用しないシステム上で、適切にテキストを表示できません。固定幅のフォントを使用するために記述されたMATLABアプリケーションは、FontName
を FixedWidth
に設定し、エンドユーザの環境の中に正しく設定されたルートのFixedWidthFontName
プロパティを使います。
エンドユーザは、ルートのFixedWidthFontName
プロパティをstartup.m
に設定した適切な値に設定することにより、種々の部分や個人の環境に MATLABアプリケーションを採用できます。
ルートFixedWidthFontName
プロパティを設定することは、新しいフォントを使用して表示したものをすぐに更新することになります。
FontSize
FontUnits
で設定した単位でのサイズ
フォントサイズ。Text に対して用いるフォントサイズを指定する整数で、FontUnits
プロパティで指定した単位で表わされます。デフォルトのサイズは、9 ポイントです(1 ポイント = 1/72インチ)。
FontWeight
light | {normal} | demi | bold
Text キャラクタの重み。MATLABは、このプロパティを使って、ユーザのシステムで使用可能なフォントの型を選択します。一般的に、このプロパティをbold
や demi
に設定すると、MATLAB は太字フォントを使います。
FontUnits
{points} | normalized | inches |
centimeters | pixels
フォントのサイズの単位。MATLABは、このプロパティを使って、FontSize
プロパティで使う単位を決定します。Normalized
は、FontSize
を親オブジェクトの Axes の高さの分数として解釈します。Axesをリサイズするとき、MATLAB は、スクリーンの FontSize
を修正します。pixels
,inches
, centimeters
, points
は、絶対単位です(1ポイント = 1/72インチ)。
HandleVisibility
{on} | callback | off
コマンドラインユーザとGUIによるオブジェクトのハンドルへのアクセスの制御。このプロパティは、オブジェクトのハンドルが、その子オブジェクトの親のリスト内で視覚可能であるときに指定します。HandleVisibility
プロパティは、(ダイアログボックスのような)ユーザインタフェースデバイスのみを含んでいるFigure内に、コマンドラインから誤って書き込むことや削除することを防ぐために有効です。
HandleVisibility
が on
のときは、ハンドルは常に見える状態です。
HandleVisibility
をcallback
に設定すると、ハンドルは、コールバックルーチンの中から、または、コールバックにより起動される関数からは可視化されますが、コマンドラインから起動される関数の中からは可視化されません。これは、コマンドラインユーザがGUIを保護しながら、コールバックルーチンがオブジェクトのハンドルに完全にアクセスできるようにするために提供されています。
HandleVisibility
を off
に設定すると、常にハンドルは視覚不可能になります。これは、コールバックルーチンが、GUIを傷つける可能性(ユーザがタイプした文字列の評価のような)がある関数を呼び込み、その関数の実行中にハンドルを一時的に隠すときに必要です。
ハンドルが子オブジェクトの親のリスト内で視覚不可能のとき、オブジェクトの階層を検索したり、ハンドルのプロパティを確認してハンドルを取得する関数は、ハンドル番号を出力しません。これらの関数には、get
, findobj
, gca
, gcf
, gco
, newplot
, cla
, clf
, close
が含まれます。
ハンドルの視覚状態が、callback
やoff
を使って制限されているとき、オブジェクトのハンドルは、その親のChildren
プロパティには表れません。
Figureは、ルートのCurrentFigure
プロパティに表れず、オブジェクトは、
ルートのCallbackObject プロパティ、または、FigureのCallbackObject プロパティに表れません。そして、Axesは、親オブジェクトのCurrentAxes
プロパティに表れません。
ルートのShowHiddenHandles
プロパティをonに設定すると、それらのHandleVisibilityの設定(これは、HandleVisibilityプロパティの値に影響を与えません)に拘わらず、すべてのハンドルを視覚可能にできます。
隠されているハンドル番号も、まだ有効です。オブジェクトのハンドルが分かっていると、そのプロパティを関数set
とget
で設定し、ハンドルを取り扱う関数に渡すことができます。
HitTest
{on} | off
マウスクリックによる選択可能。 HitTest
は、Text 上でマウスクリックの結果、Text がカレントのオブジェクト(gco
コマンドとFigureのCurrentObject
プロパティにより出力される)になり得るかどうかを指定します。HiTest
がoff
ならば、Text 上をクリックすると、その下のオブジェクト(このオブジェクトを含むAxesかもしれません)を選択します。
ButtonDownFcn
を参照)を定義すると仮定しましょう。
まず、コールバックルーチンを定義します。
function bd_function pt = get(gca,'CurrentPoint'); text(pt(1,1),pt(1,2),pt(1,3),... '{\fontsize{20}\oplus} The spot to label',... 'HitTest','off')つぎに、イメージを表示し、これの
ButtonDownFcn
プロパティにコールバックルーチンを設定します。
load earth image(X,'ButtonDownFcn','bd_function'); colormap(map)Image上をクリックすると、MATLABは、そのクリックした位置にテキスト文字列を表示します。
HitTest
を off
に設定していると、テキスト上で連続的にクリックしても、すでに存在しているテキスト上では、イベントを中断することができません。これにより、Imageの button down
関数を実行することができます。
HorizontalAlignment
{left} | center | right
Text の水平方向の整列。このプロパティは、Text文字列の水平方向の位置を指定します。Position
プロパティで指定した点に関して、文字列をどこに配置するかを決定します。
つぎの図は、整列に関するオプションを示すものです。
Extent
プロパティを参考にしてください。
Interpreter
{tex} | none
Tex のコマンドの解釈。 このプロパティは、MATLABが String
プロパティのキャラクタを、LaTexのコマンドとして扱う(デフォルト)か、または、そのままのキャラクタとして表示するかを指定します。サポートしているTex のコマンドは String
プロパティを参照してください。
Interruptible
{on} | off
コールバックルーチンの中断モード。Interruptible
プロパティは、Text のコールバックルーチンが、続いて呼び込まれるコールバックルーチンによって中断されるかどうかを制御します。Textオブジェクトは、コールバックルーチンを定義する ButtonDownFcn
, CreateFcn
, DeleteFcn
のプロパティをもちます。MATLAB のコールバックルーチンの実行法は、Executionqueue
プロパティを参照してください。
Parent
ハンドル番号 Text オブジェクトの親。 Text オブジェクトの親オブジェクトのハンドル番号。Textオブジェクトの親は、Text が表示される Axes です。このプロパティを新しい親オブジェクトのハンドル番号に設定することで、Textオブジェクトを他の Axes へ移動することができます。
Position
[x,y,[z]]
Text の位置。2 要素、または、3 要素のベクトル[x y [z]]
は、3 次元での Text の位置を指定します。z
の値を省略すると、デフォルトで 0 になります。すべての位置は、Units
プロパティで指定した単位で表されます。初期値は、[0 0 0]です。
Rotation
スカラ (デフォルト = 0)Text の方向。このプロパティは、Text 文字列の方向を決定します。回転の角度を指定します(正の角度は反時計回りの方向になります)。
Selected
on | {off}
選択されたオブジェクト。このプロパティがon
のとき、MATLAB は、 SelectionHighlight
もon
ならば、オブジェクトの選択状態を示すハンドルを表示します。たとえば、このプロパティを設定するために、ButtonDownFcn
を定義すると、ユーザはマウスでオブジェクトを選択することができます。
SelectionHighlight
{on} | off
選択時のオブジェクトの強調。Selected
プロパティが、on
のときに、MATLAB は 4 辺と4 隅に選択状態を示すハンドルを描画します。SelectionHighlight
が、 off
のとき、MATLAB はハンドルを描画しません。
String
文字列Text の文字列。 このプロパティは、コーテーション付き文字列、または、文字のセル配列、複数行の文字とした paddeed string として指定します。MATLABは、この文字列を指定した位置に表示します。|キャラクタは、Text文字列では、ラインブレークとは解釈されません。そして、Text文字列の一部として表示されます。より詳しくは、"注意事項:" を参照してください。
TextのInterpreter
プロパティが、Tex
(デフォルト)のとき、ギリシャ文字や数学的なシンボルのような特殊文字を作成するために。文字列の組み込まれているTeXコマンドの一部を使うことができます。 つぎの表は、これらのキャラクタとそれらを定義するキャラクタシーケンスを説明したものです。\fontname
は、他の修飾子と組合わせて使うことができます。
\bf
- bold font
\it
- italics font
\sl
- oblique font (ほとんど使用しません)
\rm
- normal font
\fontname{
fontname}
- 使用するフォント名を設定
\fontsize{
fontsize}
- FontUnits
にフォントサイズを設定
_
" とスーパスクリプトキャラクタ "^
" は、つぎのように中括弧の中で定義されるキャラクタ、または、サブストリングスを変更します。
Tex文字列の定義に使用した特殊キャラクタを印刷するには、\\, \{, \}\_, \^. 、のようにバックスラッシュ "\" を前に付けます。詳細は "例題" を参照してください。
詳細な情報については、"例題"を参照してください。
Interpreter
を none
とすると、String
の中のキャラクタは解釈されず、テキストが描かれたときにすべてが表示されます。
Tag
文字列
ユーザ指定のオブジェクトのラベル。Tag プロパティはユーザ指定のラベルでグラフィックスオブジェクトを識別する方法を提供します。これはオブジェクトのハンドル番号をグローバル変数として定義したり、コールバックルーチン間で引数として渡すことを必要とする、対話的なグラフィックスプログラムを構築するときに、特に有効です。任意の文字列でTag
を指定することができます。
Type
文字列(参照のみ)
グラフィックスオブジェクトのクラス。Text オブジェクトに対して、Type
は常に文字列 'text'
です。
Units
pixels | normalized | inches |
centimeters | points | {data}
測定の単位。このプロパティは、MATLABが、Extent
と Position
プロパティを解釈する単位を指定します。すべての単位は、Axes のプロットボックスの左下隅から測定されます。Normalized
は、Axes で定義した長方形の左下隅を (0,0) に写像し、右上隅を(1.0,1.0) に写像します。pixels
, inches
,centimeters
, points
は、絶対単位です(1ポイント = 1/72インチ)。data
は親の Axes のデータ単位を参照します。
Units
の値を変更した場合、Units
をデフォルト値とする他の関数に影響を与えないように、計算が終了した後でデフォルト値に戻すようにしてください。
Units
の値を変更すると、必ず、計算の後に、もとのデフォルト値に戻すことをお勧めします。これは、他の関数では、Units
の設定値がデフォルト値を使っていることを仮定しているからです。
UserData
行列
ユーザ指定のデータ。Text オブジェクトと関連付けたいデータです。MATLABは、このデータを使いませんが、set
と get
を使って、アクセスすることができます。
UIContextMenu
uicontextmenuオブッジェクトのハンドル
Textに関連したコンテキストメニュー。Textと同じFigure内に作成するUicontextmenuオブジェクトのハンドルにプロパティをアサインします。コンテキストメニューを作成するには、uicontextmenu
関数を使います。Text上を右クリックすると、コンテキストメニューを表示します。
VerticalAlignment
top | cap | {middle} | baseline |
bottom
Text の垂直方向の整列。このプロパティは、Text文字列の垂直方向の位置を指定します。Position
プロパティの値に関して、文字列をどこに配置するかを決定します。値は、つぎの通りです。
top
- 指定した y の位置の一番上に文字Extent
を配置します。
cap
- 指定したyの位置で大文字の高さに配置します。
middle
- 指定した y の位置の中央に文字列を配置します。
baseline
- 指定した y の位置のフォントのベースラインに配置します。
bottom
- 指定した y の位置の下に文字Extent
を配置します。
Visible
{on} | off
Text の可視性。デフォルトでは、すべてのText は視覚可能です。このプロパティを off
に設定したとき、Textは見えなくなりますが、それでも存在していて、プロパティを設定することができます。
![]() | text | textread | ![]() |