Main Content

uiaxes

アプリでのプロット用の UI 座標軸の作成

説明

ax = uiaxes は、新しい Figure ウィンドウで UI 座標軸を作成し、UIAxes オブジェクトを返します。MATLAB® は関数 uifigure を呼び出してこの Figure を作成します。

UIAxes オブジェクトは、アプリで直交プロットを作成するのに便利です。これらは、関数 axes で返される直交 Axes オブジェクトとよく似ています。そのため、Axes オブジェクトを受け取るほとんどの関数に UIAxes オブジェクトを渡すことができます。詳細については、UIAxes オブジェクトと Axes オブジェクトの差異を参照してください。

ax = uiaxes(Name,Value) は 1 つ以上の Name,Value のペアの引数を使用して、UIAxes のプロパティ値を指定します。

ax = uiaxes(parent) は、指定された親コンテナー内に UI 座標軸を作成します。親には、関数 uifigure を使用して作成された Figure か、またはその子コンテナーのいずれかを指定できます。

ax = uiaxes(parent,Name,Value) は 1 つ以上の Name,Value の引数を使用して、UIAxes のプロパティ値を指定します。

すべて折りたたむ

UI 座標軸にライン プロットと散布図を作成します。

UI 座標軸をもつ Figure ウィンドウを作成し、UIAxes オブジェクトを変数 ax に割り当てます。UIAxes オブジェクトを関数 plot の最初の入力引数として指定して、ライン プロットを座標軸に追加します。

fig = uifigure;
ax = uiaxes(fig);
x = linspace(-pi,pi,50);
y = 5*sin(x);
plot(ax,x,y)

App window containing a line plot of a sine wave in a UIAxes object

ホールド状態をオンに設定し、散布図を追加します。UIAxes オブジェクトを関数 hold および関数 scatter の最初の入力引数として指定します。

hold(ax,'on')
y2 = 5*sin(x) + randn(1,50);
scatter(ax,x,y2)

App window containing a line plot of a sine wave and scatter plot in the same UIAxes object

名前と値のペアの引数を使用してプロパティを設定することにより、UI 座標軸の外観を変更します。たとえば、XDir の名前と値のペアを使用して、x 軸の方向を反転します。

fig = uifigure;
ax = uiaxes(fig,'XDir','reverse');
x = linspace(-pi,pi);
y = sin(x);
plot(ax,x,y)

App window containing a line plot of a sine wave in a UIAxes object. The x-axis tick labels increase from right to left.

あるいは、座標軸の作成後にドット表記を使用してプロパティを指定します。たとえば、ドット表記を使用して YDir プロパティにアクセスし、y 軸の方向を反転します。

ax.YDir = 'reverse';

Position プロパティを指定して、UI 座標軸の位置を指定します。位置をピクセル単位で指定します。

fig = uifigure;
ax = uiaxes(fig,'Position',[10 10 550 400]);

App window containing a UIAxes object that fills the entire window

UI 座標軸を、Figure ウィンドウ内のパネルに追加します。パネルと座標軸の位置をピクセル単位で指定します。

fig = uifigure;
p = uipanel(fig,'Position',[10 10 400 400]);
ax = uiaxes(p,'Position',[10 10 370 370]);

App window containing a panel. The panel contains a UIAxes object.

入力引数

すべて折りたたむ

親コンテナー。FigurePanelTabGridLayout、または TiledChartLayout オブジェクトとして指定します。コンテナーが指定されていない場合、MATLAB は関数 uifigure を呼び出し、親コンテナーとして使用される新しい Figure オブジェクトを作成します。

名前と値の引数

引数のオプションのペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name を引用符で囲みます。

例: 'Xscale','linear','YScale','log'

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

範囲の上限と下限。[min max] の形式の 2 要素ベクトルとして指定します。ここで、maxmin より大きい値です。範囲は、数値、カテゴリカル値、datetime 値、または duration 値として指定できます。ただし、指定する値の型は、軸に沿った値の型と一致していなければなりません。

両方の限界値を指定することも、一方の限界値を指定してもう一方を MATLAB で自動計算することもできます。下限値および上限値を自動的に計算する場合は、それぞれ -inf または inf を使用します。MATLAB は、範囲メソッド 'tight' を使用して対応する範囲を計算します。

例: ax.XLim = [0 10]

例: ax.YLim = [-inf 10]

例: ax.ZLim = [0 inf]

または、関数 xlimylim および zlim を使用して範囲を設定します。例については、軸の範囲の指定を参照してください。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | datetime | duration

軸のスケール。次の値のいずれかとして指定します。

説明結果
'linear'

線形スケール

例: ax.XScale = 'linear'

Axis with the scale set to 'linear'. The tick values that start at 0 and increment by adding 100 to the previous value.
'log'

対数スケール

例: ax.XScale = 'log'

メモ

座標軸では、場合によっては座標を除外することがあります。

  • 座標に正の値と負の値が含まれている場合、正の値のみが表示されます。

  • 座標がすべて負の場合、すべての値が対数スケールで、適切な符号付きで表示されます。

  • ゼロ値は表示されません。

Axis with the scale set to 'log'. The tick values start at 0.10 (10 raised to -1). Each major tick value increases by a factor of 10.

グリッド ラインのライン スタイル。次の表のライン スタイルのいずれかとして指定します。

ライン スタイル説明結果として得られる線
"-"実線

Sample of solid line

"--"破線

Sample of dashed line

":"点線

Sample of dotted line

"-."一点鎖線

Sample of dash-dotted line, with alternating dashes and dots

"none"ラインなしラインなし

グリッド ラインを表示するには、grid on コマンドを使用するか、XGridYGridZGrid の各プロパティを 'on' に設定します。

例: ax.GridLineStyle = '--'

ラベルと余白を含む座標軸のサイズと位置。[left bottom width height] の形式の 4 要素ベクトルとして指定します。このプロパティは、OuterPosition プロパティと等価です。ベクトルは、座標軸の外側の境界を囲む四角形を定義します。値は、Units プロパティで指定した単位で測定されます。既定値はピクセルです。

  • left 要素および bottom 要素は、親コンテナーの左下隅からの測定値により、四角形の位置を定義します。

  • width および height は、四角形のサイズを定義します。

座標軸の周りのテキストを考慮して位置を指定する場合は、Position プロパティまたは OuterPosition プロパティを設定します。これらの Figure は Position (または OuterPosition) で定義された領域を青色で、InnerPosition を赤色で表示します。

座標軸の 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 オブジェクトの場合、このプロパティを設定しても効果はありません。

出力引数

すべて折りたたむ

UIAxes オブジェクト。UIAxes の作成後に、ax を使用してそのプロパティを設定します。

詳細

すべて折りたたむ

UIAxes オブジェクトと Axes オブジェクトの差異

次の表で UIAxes オブジェクトと Axes オブジェクトとで異なるプロパティを説明します。アプリでのチャートの作成の詳細については、App Designer でのグラフィックスの表示を参照してください。

プロパティUIAxes オブジェクトAxes オブジェクト
NextPlot

既定値は 'replacechildren' です。

UIAxes オブジェクトを関数 cla'reset' オプションを指定して渡すと、NextPlot プロパティに対して別の既定を定義していない限り、NextPlot プロパティは 'replace' に設定されることに注意してください。

既定値は 'replace' です。

Position

既定の Position[10 10 400 300] (ピクセル単位) です。

Position プロパティは OuterPosition プロパティと等価です。

既定の Position[0.1300 0.1100 0.7750 0.8150] (正規化された単位) です。

Position プロパティは InnerPosition プロパティと等価です。

Units

既定値は 'pixels' です。

既定値は 'normalized' です。

FontUnits

既定値は 'pixels' です。

既定値は 'points' です。

バージョン履歴

R2016a で導入