MATLAB Function Reference    
axes

Axes グラフィックスオブジェクトの作成

表示

詳細

axes は、Axesグラフィックスオブジェクトを作成するための低水準関数です。

axes は、デフォルトのプロパティ値を使って、カレントの Figure の中に Axes グラフィックスオブジェクトを作成します。

axes('PropertyName',PropertyValue,...) は、指定したプロパティ値をもつ Axes オブジェクトを作成します。MATLAB は、引数として明示的に設定しなければ、必要とするプロパティに対して、デフォルト値を使います。

axes(h) は、Axes をカレント Axes にします。これは、 h を Figure のChildrenプロパティの中にリストされた最初の Axes にし、Figure の CurrentAxes プロパティをhに設定します。カレントのAxes は、Image,Line,Patch,Surface,Text グラフィックスオブジェクトを描く関数に対してターゲットになるものです。

h = axes(...) は、作成された Axes オブジェクトのハンドル番号を出力します。

注意

image, light, line, patch, surface, text グラフィックスオブジェクトを描くコマンドを読み込んだときに、 Axes が存在しなければ、 MATLAB は自動的に Axes を作成します。

関数 axes は、入力引数として、プロパティ名とプロパティ値の組み合わせ、構造体配列、セル配列を使うことが出来ます(このようなデータタイプを設定する方法は、コマンドsetget のページの例題を参照してください)。 Axes オブジェクトの種々の外観を制御するこれらのプロパティは、"Axes プロパティ" に記述されています。

既存の Axes のプロパティを変更するには関数 set を、 Axes プロパティのカレント値を調べるには関数 get を使います。また、カレントの Axes のハンドルを得るには、gca コマンドを使います。

関数 axis (axes ではありません) は、 Axes のスケーリングや表示法を制御するために一般に使われているプロパティに、簡単にアクセスすることができます。

Axes オブジェクトの基本的な目的は、データをプロットするときの座標系を設定するものですが、 Axes プロパティは、データを表示するために MATLAB で使う方法を十分に制御するものです。

Stretch-to-Fill

MATLABは、デフォルトではAxesの長方形(Positionプロパティの最後の2要素で定義される長方形)を満たすために、Axesを引き伸ばします。これにより、グラフは長方形内の空間を使用することができます。しかし、引き伸ばしや、特定の3次元の縦横比で表示するために、(球面のような)3次元グラフは、歪んで表示されます。

Stretch-to-fillは、DataAspectRatioMode, PlotBoxAspectRatioMode, CameraViewAngleModeが、すべてauto(デフォルト)のときにアクティブです。しかし、DataAspectRatio, PlotBoxAspectRatio, CameraViewAngleのいずれかをユーザが指定したときや、対応するモードのうちの1つまたは複数がmanualに設定されている(対応するプロパティ値を設定したときに自動的に設定されます)ときは、stretch-to-fillはオフになります。

下図は、Stretch-to-fillを使用したときと使用しないときの球面を表示したものです。点線は、AxesのPositionを決める長方形を示しています。

Stretch-to-fillが使用できないとき、MATLABは、Positionにより設定される長方形によって歪みが生じない範囲で、Axesの大きさをできるだけ大きく設定します。前ページの図では、長方形の高さがAxesのサイズに制約を与えています。

例題

ズーミング

軸の縦横比や範囲を使って、拡大表示や縮小表示を行います。

CameraViewAngleを使って、拡大表示や縮小表示を行います。

上の2つの例では、MATLABのstretch-to-fillは使えないことに注意してください。

Axes の配置

Axes の Position プロパティは、Figure ウィンドウの中の Axes の位置を定義することができます。たとえば、

は、カレント Figure の中の指定した位置に Axes オブジェクトを作成します。そして、そのハンドルを出力します。Axes の位置と大きさは、4要素ベクトルで定義される長方形で設定することができます。

このベクトルの left 要素と bottom 要素は、Figure の左下隅から、長方形の左下隅までの距離を定義します。width 要素と height 要素は、長方形の大きさを定義します。また、 Units プロパティを使って、これらの値の単位を設定します。デフォルトで、MATLAB は、Figure ウィンドウの左下隅を (0,0)、右上隅を (1.0,1.0) とした正規化された単位を使います。

単一の Figure ウインドの中で、複数の Axes を設定できます。

つぎの例の中で、最初のプロットは、Figure の下 2/3 の部分を占め、2番目のものは、上1/3の部分を占めています。

参考

axis, cla, clf, figure, gca, grid, subplot, title, xlabel, ylabel, zlabel, view

オブジェクトの階層構造

デフォルトプロパティ値の設定

Figure や Root レベル上にデフォルトの Axes プロパティを設定することができます。

ここで、PropertyName は、Axes プロパティの名前で、PropertyValue は設定する値です。Axesのプロパティにアクセスするためには、setgetを使用してください。

プロパティリスト

つぎの表は、Axesのプロパティと簡単な説明を示したものです。プロパティ名は、プロパティの詳細な説明にリンクされています。

プロパティ名
プロパティの詳細
プロパティ値
スタイルと外観を制御するプロパティ
Box
axesプロットボックスの表示の切り替え
値: on, off
デフォルト: off
Clipping
このプロパティは、他に影響を与えません。axesは、常に、figureウインドにクリップされています。

GridLineStyle
axesのグリッドラインの描画に使用するラインスタイル
値: -, --, :, -., none デフォルト: : (点線)
Layer
グラフの上下のいずれかにaxesを描画
値: bottom, top
デフォルト: bottom
LineStyleOrder
複数のラインのプロットに使用するラインスタイル
値: LineSpecデフォルト: - (実線に対して)
LineWidth
ポイント単位のaxisの線幅 (1ポイントは、1/72インチ)
値:ポイント数
デフォルト: 0.5 点
SelectionHighlight
(Selectedプロパティが、onに設定されているとき)選択したときに強調するaxes
値: on, off
デフォルト: on
TickDir
軸の目盛りの方向
値: in, out デフォルト: in (2-次元), out (3-次元)
TickDirMode
MATLAB指定またはユーザ指定の目盛りの方向
値: auto, manual デフォルト: auto
TickLength
軸の長さに正規化された目盛りの長さ。2要素のベクトルで指定されます。
値: [2-D 3-D]
デフォルト:[0.01 0.025}
Visible
axesの可視化の指定
値: on, off
デフォルト: on
XGrid, YGrid, ZGrid
各方向軸でのグリッドラインのオンとオフの切り替え
値: on, off
デフォルト: off
Axesの一般情報のためのプロパティ
Children
axes内に表示されるimages, lights, lines, patches, surfaces, text オブジェクトのハンドル
値:ハンドルを要素とするベクトル
CurrentPoint
axesのデータ単位で表わす定義された最後にマウスボタンがクリックされた位置
値:2行3列の行列
HitTest
axesがカレントのオブジェクトになることができるかどうかを指定(FigureのCurrentObject プロパティを参照)
値: on, off
デフォルト: on
Parent
axesを含むFigureウインドのハンドル番号
値:Figureのハンドル番号のスカラ値
Position
Figure内のaxesの位置とサイズ
値:[left bottom width height] デフォルト: 正規化されたUnitsでの[0.1300 0.1100 0.7750 0.8150]
Selected
axesが、"選択された"状態かどうかを指定
値: on, off
デフォルト: on
Tag
ユーザ指定のラベル
値:任意の文字列
デフォルト: '' (空文字列)
Type
グラフィックスオブジェクトのタイプ(参照のみ)
値:文字列 'axes'
Units
Positionプロパティの解釈に使用される単位
値: inches, centimeters, characters, normalized, points, pixels デフォルト: normalized
UserData
ユーザ指定のデータ
値: 任意の行列
デフォルト: [] (空行列)
フォントとラベルの制御のプロパティ
FontAngle
イタリックまたは標準のフォントの選択
値: normal, italic, oblique
デフォルト: normal
FontName
フォントファミリ名(例えば, Helvetica, Courier)
値:稼働中のシステムがサポートするフォント FixedWidth
デフォルト: 通常、Helvetica
FontSize
タイトルとラベルに使用するフォントサイズ
値: 単位の整数 FontUnits デフォルト: 10
FontUnits
FontSizeプロパティの解釈に使用する単位
値: points, normalized, inches, centimeters, pixels
デフォルト: points
FontWeight
ボールドまたは標準のフォントの選択
値: normal, bold, light, demi
デフォルト: normal
Title
タイトルtextオブジェクトのハンドル番号
値: 任意の有効なtextオブジェクトのハンドル番号
XLabel, YLabel, ZLabel
各方向軸のラベルのtextオブジェクトのハンドル番号
値:任意の有効なtextオブジェクトのハンドル番号
XTickLabel, YTickLabel,
ZTickLabel
各方向軸の目盛りのラベルの指定
値:文字列からなる行列デフォルト:MATLABが自動的に選択した数値
XTickLabelMode, YTickLabelMode, ZTickLabelMode
MATLAB指定またはユーザ指定の目盛りのラベルのいずれかを使用
値: auto, manual
デフォルト: auto
Axesのスケーリングを制御するプロパティ
XAxisLocation
x-軸の位置を指定
値: top, bottom
デフォルト: bottom
YAxisLocation
y-軸の位置の指定
値: right left
デフォルト: left
XDir, YDir, ZDir
各方向軸の増分値の方向を指定
値: normal, reverse
デフォルト: normal
XLim, YLim, ZLim
各方向軸の範囲を指定
値: [min max]
デフォルト: MATLABが自動的に決定する最大値と最小値
XLimMode, YLimMode, ZLimMode
各方向軸の範囲についてMATLAB指定値またはユーザ指定値のいずれかを使用
値: auto, manual
デフォルト: auto
XScale, YScale, ZScale
各方向軸に対して、線形軸または対数軸を選択
値: linear, log
デフォルト: linear (非線形プロットを作成するプロットコマンドにより変更されます)
XTick, YTick, ZTick
軸の目盛りの位置を指定
値: 目盛り位置のデータ値からなるベクトル、デフォルト:MATLABが、自動的に決定する目盛りの位置
XTickMode, YTickMode, ZTickMode
各方向の目盛り位置に対して、MATLAB指定値またはユーザ指定値のいずれかを使用
値: auto, manual
デフォルト: auto
Viewを制御するプロパティ
CameraPosition
スクリーンを見る点の位置を設定
値:[x,y,z]軸の座標
デフォルト: MATLABが自動的に決定
CameraPositionMode
MATLAB指定またはユーザ指定のカメラ位置のいずれかを選択
値: auto, manual
デフォルト: auto
CameraTarget
カメラで見る中心点
値: [x,y,z]軸の座標
デフォルト:MATLABが自動的に決定
CameraTargetMode
MATLAB指定またはユーザ指定のカメラターゲットのいずれかを選択
値: auto, manual
デフォルト: auto
CameraUpVector
カメラを上向きに設定
値: [x,y,z]軸の座標
デフォルト: MATLABが自動的に決定
CameraUpVectorMode
MATLAB指定またはユーザ指定のカメラの上向きベクトルのいずれかを使用
値: auto, manual
デフォルト: auto
CameraViewAngle
カメラの表示フィールド
値:0から180の間の角度
デフォルト:MATLABが自動的に決定
CameraViewAngleMode
MATLAB指定またはユーザ指定のカメラの視点角度のいずれかを使用
値: auto, manual
デフォルト: auto
Projection
投影のタイプの選択
値: orthographic, perspective
デフォルト: orthographic
Axesの縦横比を制御するプロパティ
DataAspectRatio
データ単位の相対スケール
値: 3つの相対値 [dx dy dz]
デフォルト: MATLABが自動的に決定
DataAspectRatioMode
MATLAB指定またはユーザ指定のデータの縦横比のいずれかを使用
値: auto, manual
デフォルト: auto
PlotBoxAspectRatio
Axes プロットボックスの相対的なスケーリング
値: 3つの相対値 [dx dy dz]
デフォルト: MATLABが自動的に決定
PlotBoxAspectRatioMode
MATLAB指定またはユーザ指定のプロットボックスの縦横比のいずれかを使用
値: auto, manual
デフォルト: auto
コールバックルーチンの実行を制御するプロパティ
BusyAction
コールバックルーチンの実行に割り込むイベントの取り扱い方法を指定
値: cancel, queue
デフォルト: queue
ButtonDownFcn
axes上でボタンが押されたときに実行されるコールバックルーチンを定義
値:文字列
デフォルト: 空文字列
CreateFcn
axesが作成されたときに実行するコールバックルーチンの定義
値: 文字列
デフォルト: 空行列
DeleteFcn
axesが削除されたときに、実行するコールバックルーチンの定義
値: 文字列
デフォルト: 空行列
Interruptible
実行中のコールバックルーチンが割り込みされるかどうかを制御
値: on, off
デフォルト: on
UIContextMenu
コンテキストメニュとaxesの対応付け
値:Uicontextmenuのハンドル
レンダリングモードの指定
DrawMode
レンダラで使用するレンダリング方法の指定
値: normal, fast
デフォルト: normal
グラフィックスの表示に対するAxesのターゲッテング
HandleVisibility
指定したaxesのハンドルへのアクセスの制御
値: on, callback, off
デフォルト: on
NextPlot
グラフィックスの表示に対するaxesの的確さを指定
値: add, replace, replacechildren
デフォルト: replace
Transparencyを設定するプロパティ

ALim
Alpha 軸の範囲
値:[amin amax]
ALimMode
Alpha 軸の範囲のモード
値: auto|manual
デフォルト: auto
カラーの指定のためのプロパティ
AmbientLightColor
背景のカラー
値: ColorSpec
デフォルト: [1 1 1]
CLim
データのカラーマッピングへのマッピング方法の制御
値: [cmin cmax]
デフォルト:MATLABが自動的に決定する値
CLimMode
MATLAB指定またはユーザ指定のCLimの値のいずれかを使用
値: auto, manual
デフォルト: auto
Color
axesのバックグランドカラー
値: none, ColorSpec
デフォルト: none
ColorOrder
複数の行のプロットに使用するラインのカラー値:
値: m行3 列のRBG値の行列
デフォルト: 使用されるカラースキームにより異なります。
XColor, YColor, ZColor
軸のラインと目盛りのカラー
値: ColorSpec
デフォルト: カレントのカラースキームにより異なります


 aviread Axes Properties