Main Content

axes

説明

axes は、現在の Figure で既定の直交座標軸を作成して、現在の座標軸にします。通常、プロットする前に座標軸を作成する必要はありません。座標軸が存在しない場合、プロット時にグラフィックス関数により自動的に作成されるためです。

axes(Name,Value) は、1 つ以上の名前と値のペアの引数を使用して、座標軸の外観の変更、またはデータの表示方法の制御を行います。たとえば、'FontSize',14 は座標軸のテキストのフォント サイズを設定します。プロパティの一覧については、Axes のプロパティ を参照してください。

axes(parent,Name,Value) は、現在の Figure 内ではなく、parent で指定された Figure、パネル、またはタブ内に座標軸を作成します。

ax = axes(___) は、作成された Axes オブジェクトを返します。Axes オブジェクトを作成した後でプロパティのクエリや変更を行うには、ax を使用します。プロパティの一覧については、Axes のプロパティ を参照してください。

axes(cax) は、親 Figure の CurrentAxes プロパティを cax に設定します。親 Figure の HandleVisibilty プロパティが "on" に設定されている場合、cax現在の座標軸にもなります。また、このコマンドは cax を親オブジェクトの Children プロパティにリストされる最初のオブジェクトにします。通常、親オブジェクトは Figure またはタイル表示チャート レイアウトです。

すべて折りたたむ

Figure 内に 2 つの Axes オブジェクトを配置し、各オブジェクトにプロットを追加します。

左下隅が点 (0.1 0.1) にあり、幅と高さが 0.7 になるように、1 番目の Axes オブジェクトの位置を指定します。左下隅が点 (0.65 0.65) にあり、幅と高さが 0.28 になるように、2 番目の Axes オブジェクトの位置を指定します。既定では、値は Figure を基準に正規化されます。Axes オブジェクトを ax1 および ax2 として返します。

figure
ax1 = axes('Position',[0.1 0.1 0.7 0.7]);
ax2 = axes('Position',[0.65 0.65 0.28 0.28]);

Figure contains 2 axes objects. Axes object 1 is empty. Axes object 2 is empty.

Axes オブジェクトにプロットを追加します。座標軸を最初の入力引数としてグラフィックス関数に渡すことで、座標軸を指定します。ほとんどのグラフィックス関数は、目盛りの値とラベルなど、座標軸の一部のプロパティをリセットします。ただし、座標軸の位置はリセットしません。

contour(ax1,peaks(20))
surf(ax2,peaks(20))

Figure contains 2 axes objects. Axes object 1 contains an object of type contour. Axes object 2 contains an object of type surface.

重ね合わせた 2 つの Axes オブジェクトを作成します。次に、現在の座標軸を指定してプロットを追加します。

まず、2 つの Axes オブジェクトを作成し、位置を指定します。各座標軸を囲むボックスの外枠を表示します。Axes オブジェクトを ax1 および ax2 として返します。

figure
ax1 = axes('Position',[0.1 0.1 .6 .6],'Box','on');
ax2 = axes('Position',[.35 .35 .6 .6],'Box','on');

Figure contains 2 axes objects. Axes object 1 is empty. Axes object 2 is empty.

ax1 を現在の座標軸にします。この操作により、座標軸が前面に表示され、後続のグラフィックス関数のターゲットになります。座標軸にライン プロットを追加します。

axes(ax1)
x = linspace(0,10);
y = sin(x);
plot(x,y)

Figure contains 2 axes objects. Axes object 1 is empty. Axes object 2 contains an object of type line.

2 つのタブを含む Figure を作成します。各タブに親コンテナーを指定することで各タブに座標軸を追加します。1 番目のタブにライン、2 番目のタブに表面をプロットします。

figure
tab1 = uitab('Title','Tab1');
ax1 = axes(tab1);
plot(ax1,1:10)

tab2 = uitab('Title','Tab2');
ax2 = axes(tab2);
surf(ax2,peaks)

Figure contains 2 axes objects and another object of type uitabgroup. Axes object 1 contains an object of type surface. Axes object 2 contains an object of type line.

入力引数

すべて折りたたむ

親コンテナー。FigurePanelTabTiledChartLayout、または GridLayout オブジェクトとして指定します。

現在の座標軸にする座標軸。Axes オブジェクト、PolarAxes オブジェクト、GeographicAxes オブジェクト、または heatmap などのスタンドアロンの可視化として指定します。

Figure の状態を変更せずに、オブジェクトを現在の座標軸にする場合、そのオブジェクトを含む Figure の CurrentAxes プロパティを設定します。次に例を示します。

fig = gcf;
fig.CurrentAxes = cax;
この方法は、Figure を最小化したまま、または他の Figure の下にスタックしたままで、現在の座標軸を指定する場合に便利です。

名前と値の引数

例: axes('Position',[.3 .3 .5 .5]) は位置を設定します。

オプションの Name,Value の引数ペアをコンマ区切りで指定します。Name は引数名で、Value は対応する値です。Name は一重引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を指定できます。

一部のグラフィックス関数は、軸の範囲や目盛り値などをプロットするときに座標軸のプロパティ値を変更します。プロット後に、座標軸のプロパティを設定します。

メモ

ここでは、プロパティの一部だけを紹介しています。完全な一覧については、Axes のプロパティ を参照してください。

ラベルの余白を除いたサイズと位置。[left bottom width height] の形式の 4 要素ベクトルとして指定します。既定では、MATLAB® はコンテナーを基準に正規化された単位で値を測定します。単位を変更するには、Units プロパティを設定します。

  • left 要素と bottom 要素は、コンテナー (通常は Figure、パネルまたはタブ) の左下隅から位置境界の左下隅までの距離を定義します。

  • width 要素と height 要素は、位置境界の寸法です。3 次元表示の座標軸では、Position プロパティは座標軸を囲む最小の四角形です。

座標軸の周りのテキストを考慮して位置を指定する場合は、代わりに OuterPosition プロパティを設定します。以下の図に、OuterPosition 値 (青) と Position 値 (赤) で定義された領域を示します。

座標軸の 2 次元表示座標軸の 3 次元表示

2-D axes with a title and axis labels. The inner position is outlined in red. It encloses the plot box only. The title, axis labels, and tick labels lie outside this rectangle. The outer position is outlined in blue. It encloses the plot box, the title, and the axis labels.

3-D axes with a title and axis labels. The inner position is outlined in red. It encloses the plot box. The title and axis labels lie outside this rectangle. Depending on the orientation of the plot box, some of the tick labels might lie inside or outside of this rectangle. The outer position is outlined in blue. It encloses the plot box, the title, and all of the axis labels.

座標軸の位置の詳細については、座標軸のレイアウトの制御を参照してください。

メモ

  • 縦横比の制約をもつ座標軸 (正方形の座標軸やイメージを含む座標軸など) の位置をクエリする場合は、より精度の高い関数 tightPosition の使用を検討してください。(R2022b 以降)

  • 親コンテナーが TiledChartLayout の場合、このプロパティを設定しても効果はありません。

ラベルと余白を含むサイズと位置。[left bottom width height] の形式の 4 要素ベクトルとして指定します。既定では、MATLAB はコンテナーを基準に正規化された単位で値を測定します。単位を変更するには、Units プロパティを設定します。既定値 [0 0 1 1] は、コンテナーの内側全体になります。

  • left 要素と bottom 要素は、コンテナー (通常は Figure、パネルまたはタブ) の左下隅から位置境界の左下隅までの距離を定義します。

  • width 要素と height 要素は、外側の位置境界の寸法です。

以下の図に、OuterPosition 値 (青) と Position 値 (赤) で定義された領域を示します。

座標軸の 2 次元表示座標軸の 3 次元表示

2-D axes with a title and axis labels. The inner position is outlined in red. It encloses the plot box only. The title, axis labels, and tick labels lie outside this rectangle. The outer position is outlined in blue. It encloses the plot box, the title, and the axis labels.

3-D axes with a title and axis labels. The inner position is outlined in red. It encloses the plot box. The title and axis labels lie outside this rectangle. Depending on the orientation of the plot box, some of the tick labels might lie inside or outside of this rectangle. The outer position is outlined in blue. It encloses the plot box, the title, and all of the axis labels.

座標軸の位置の詳細については、座標軸のレイアウトの制御を参照してください。

メモ

親コンテナーが TiledChartLayout オブジェクトの場合、このプロパティを設定しても効果はありません。

位置の単位。次の値のいずれかとして指定します。

Units説明
"normalized" (既定)コンテナー (通常は Figure またはパネル) を基準に正規化されます。コンテナーの左下隅は (0,0) に、右上隅は (1,1) にマッピングされます。
"inches"インチ。
"centimeters"センチメートル。
"characters"

グラフィックス ルート オブジェクトの既定の uicontrol フォントに基づきます。

  • 文字の幅 = 文字 x の幅。

  • 文字の高さ = 2 行のテキストのベースライン間の距離。

"points"タイポグラフィのポイント。1 ポイントは 1/72 インチです。
"pixels"

ピクセル。

R2015b 以降、Windows® および Macintosh システムにおいて、ピクセル単位の距離はシステム解像度に依存しません。

  • Windows システムの 1 ピクセルは 1/96 インチです。

  • Macintosh システムの 1 ピクセルは 1/72 インチです。

  • Linux® システムでは、ピクセルのサイズは使用しているシステムの解像度によって決まります。

オブジェクトの作成中に Name,Value のペアとして単位を指定する場合、それらの単位を使用するプロパティ (Position など) を指定する前に Units プロパティを設定しなければなりません。

詳細

すべて折りたたむ

現在の座標軸

現在の座標軸は plottitlexlim などのさまざまなグラフィックス コマンドに対する既定のターゲット オブジェクトです。以下のタイプのオブジェクトを現在の座標軸にすることができます。通常、作成、クリック、プロットされるのは、これらのオブジェクトの最後の 1 つです。

  • Axes オブジェクト。

  • PolarAxes オブジェクト。

  • GeographicAxes オブジェクト。

  • スタンドアロンの可視化。他のチャートから独立して機能する特別な目的のために設計されたチャートです。たとえば、heatmap は、表形式データ内で 2 つの変数間の相互作用を観測するスタンドアロンの可視化です。

gca コマンドは現在の座標軸を返します。Figure の CurrentAxes プロパティには、その現在の座標軸が格納されます。現在の Figure を変更すると、現在の座標軸も変わります。

バージョン履歴

R2006a より前に導入