ドキュメンテーション センター

  • 評価版
  • 製品アップデート

このページは前リリースの情報です。該当の英語のページはこのリリースで更新されています。このリリースの英語のドキュメンテーションを参照するには、言語設定を United States に変更してください。

Figure の設定

Figure ウィンドウの作成

MATLAB® のグラフィックスは、コマンド ウィンドウとは別のウィンドウに送られます。このウィンドウは、Figure と呼ばれています。このウィンドウの特性は、コンピューターのウィンドウ システムと MATLAB Figure プロパティ (Figure Properties を参照) によってコントロールされます。詳細は、「Figure ウィンドウ」 を参照してください。

グラフィックス関数は、Figure が存在しない場合、自動的に新規 MATLAB Figure ウィンドウを作成します。Figure が既に存在している場合は、そのウィンドウが使用されます。複数の Figure が存在している場合は、そのうちの 1 つが 現在の Figure として指定され、使用されます (この Figure は、最後に使用された Figure または 最後にマウスでクリックされた Figure です)。

関数 figure は、Figure ウィンドウを作成します。たとえば、次の例を考えてみましょう。

figure

は、新規ウィンドウを作成し、それを現在の Figure にします。マウスで既存の Figure をクリックしたり、figure の引数としてそのハンドル (ウィンドウのタイトル バーに示されている数字) を渡すことで、既存の Figure を現在の Figure にすることができます。

figure(h)

Figure ごとに複数のプロットを表示

関数 subplot を使用すると、同じ Figure ウィンドウに複数のプロットを表示することができ、同じ紙面に印刷できます。

subplot(m,n,i) は、Figure ウィンドウを mn 列の小さなサブプロットに分割し、i 番目のサブプロットを現在のプロットに選択します。プロットは、Figure ウィンドウの先頭行に沿って番号が付けられ、次に 2 行目、というように番号が付けられます。

たとえば、以下のステートメントは Figure ウィンドウの 4 つの部分領域にデータをプロットします。

t = 0:pi/20:2*pi;
[x,y] = meshgrid(t);
subplot(2,2,1)
plot(sin(t),cos(t)) 
axis equal
subplot(2,2,2)
z = sin(x)+cos(y);
plot(t,z)
axis([0 2*pi -2 2])
subplot(2,2,3)
z = sin(x).*cos(y);
plot(t,z)
axis([0 2*pi -1 1])
subplot(2,2,4)
z = (sin(x).^2)-(cos(y).^2);
plot(t,z)
axis([0 2*pi -1 1])

各部分領域は、他の部分領域と独立してコントロールできる特性をもつ独自の Axes を含みます。この例は、関数 axis を使用して、範囲を設定し、サブプロットの形を変更しています。

詳細は、関数 axesaxissubplot を参照してください。

ターゲットとなる Axes の指定

現在の Axes は、subplot によって定義された最後の Axes です。前に定義されたサブプロットにアクセスし、たとえばタイトルを追加する場合は、まずその Axes を現在の Axes にしなければなりません。

3 つの方法で Axes を現在の Axes にすることができます。

  • マウスでサブプロットをクリックします。

  • subplotmni 指定子で呼び出します。

  • subplot を Axes のハンドル (識別子) で呼び出します。

たとえば、

subplot(2,2,2)
title('Top Right Plot')

は、Figure の右上側のプロットにタイトルを追加します。

以下のステートメントは、すべてのサブプロット Axes のハンドルが取得できます。

h = get(gcf,'Children');

最後に作成されたものから順に、すべての Axes のハンドルが返されます。すなわち、h(1) はサブプロット 224、h(2) はサブプロット 223、h(3) はサブプロット 222、h(4) はサブプロット 221 です。たとえば、サブプロット 222 を新規プロットで置き換えるには、まず以下のコマンドでそれを現在の Axes にします。

subplot(h(3))

既定の配色

既定の Figure 配色は、さまざまなグラフィックス関数について適切なコントラストと可視性を実現します。このスキームは、ウィンドウの背景色、Axes の背景色、Axes のラインとラベル、プロットと表面エッジに使用されるラインの色、外観に影響する他のプロパティを定義します。

関数 colordef は、事前定義された配色からの選択を有効にし、個々の色を修正できるようにします。colordef は、3 つの配色を事前定義しています。

  • colordef white — Axis の背景色を白に、ウィンドウの背景色を灰色に、カラーマップを jet に、表面エッジ色を黒に設定し、プロットに色を付ける順番と他のプロパティに適切な値を定義します。

  • colordef black — Axis の背景色を黒に、ウィンドウの背景色を暗い灰色に、カラーマップを jet に、表面エッジ色を黒に設定し、プロットに色を付ける順番と他のプロパティに適切な値を定義します。

  • colordef none — MATLAB Version 4 と一致するように色を設定します。これは基本的に黒い背景色になり、白い Axis ラインをもち、グリッドはありません。Version 4 の配色に基づくMATLAB プログラムは、必要な結果を生成するために、colordefnone オプションを付けて呼び出す必要があります。

どのプロパティが設定されているかを確認するには、colordef.m ファイルを調べることができます (MATLAB プロンプトで「type colordef」と入力します)。

この情報は役に立ちましたか?