4. グラフィックス¶
4.1. 2次元グラフィックス¶
代表的な2次元グラフィックス関数には、以下のものがあります。
plot | 線形プロット |
contour | コンタープロット |
semilogx | X片対数プロット |
quiver | 矢印プロット |
semilogy | Y片対数プロット |
stream2 | ストリームプロット |
loglog | 両対数プロット |
image | イメージの表示 |
plotyy | 左右両軸プロット |
imagesc | イメージの表示(SC) |
2次元グラフィックスの代表的なplot関数の書式は以下になります。
plot(x1,y1,’Color LineStyle Marker’,x2,y2,’ Color LineStyle Marker’,…)
(x1,y1),(x2,y2)はそれぞれ表示するデータの組み合わせを表します。 また、’Color LineStyle Marker’は描画するラインのオプションのプロパティを表し、 それぞれ線の色、線種、マーカーを指定します。 線 のプロパティの詳細については、「doc linespec」コマンドで確認して下さい。
(例)Sinカーブ、Cosカーブのプロット
>> x=0:pi/8:2*pi;
>> y1=sin(x);y2=cos(x);
>> plot(x,y1,'g-o',x,y2,'r*')
※グラフ線プロパティの説明
(x,y1) | (x,y2) | |
---|---|---|
カラー | 緑(g) | 赤(r) |
ライン | 実線(-) | なし |
マーカー | 丸(o) | アスタリスク(*) |
(例)左右両軸プロット
>> x=0:0.1:10;
>> y1=10.^x;
>> y2=sin(x);
>> plotyy(x,y1,x,y2,'semilogy','plot')
4.2. 3次元グラフィックス¶
代表的な3次元グラフィックス関数には、以下のものがあります。
plot3 | 3次元プロット |
meshc | メッシュコンタープロット |
mesh | メッシュプロット |
caxis | カラー軸のスケーリング |
surf | サーフィスプロット |
colormap | カラーマップ |
contour3 | コンタープロット |
colordef | 背景色の設定 |
(例) 2次元sinc関数、sin(r)/r をx およびy 方向で実行しグラフ化します。 R は、行列の中心である原点からの距離です。 eps (小さな浮動小数点数を出力するMATLABコマンド)を加えると、 原点での0/0が中間で生じることを避けることができます。
>> [X,Y] = meshgrid(-8:.5:8);
>> R = sqrt(X.^2 + Y.^2) + eps;
>> Z = sin(R)./R;
>> mesh(X,Y,Z,'EdgeColor','black')
デフォルトでは、 MATLABはカレントのカラーマップを使ってメッシュを色付けします。 しかしこの例題では、 EdgeColor surface プロパティを指定することによって、単色のメッシュを用います。
(例)カラーサーフェスプロット サーフェスプロットは、長方形の面が色付けされることを除いて、メッシュプロットに似ています。 面のカラーは、Z の値とカラーマップによって決定されます(colormap は、順番付けられたカラーのリストです)。 次のステートメントは、sinc 関数をサーフェスプロットとしてグラフ化し、 カラーマップを選択し、カラーバーを付加して、データのカラーへのマッピングを示します。
>> surf(X,Y,Z)
>> colormap hsv
>> colorbar
(例)透明なサーフェス サーフェスの表面は、可変の程度で透明にすることができます。 透明性(alpha値として参照されます)は、オブジェクト全体に対して指定されるか、あるいはカラーマップと同様に機能するalphamapに基づきます。
>> surf(X,Y,Z)
>> colormap hsv
>> alpha(.4)
4.2.1. グラフの軸・注釈の設定¶
代表的な軸設定・注釈設定関数を以下に示します。
xlim | X軸範囲の変更 |
Xlabel | X軸ラベル |
ylim | Y軸範囲の変更 |
ylabel | Y軸ラベル |
zlim | Z軸範囲の変更 |
zlabel | Z軸ラベル |
axis | 軸範囲の変更 |
title | タイトル |
grid | グリッド表示 |
legend | 凡例 |
view | 視点の変更 |
text | テキストを表示 |
colorbar | カラーバー |
gtext | マウスを使ったテキスト表示 |
(例)Sinカーブ、Cosカーブの装飾付きプロット
>> x=[0:pi/8:2*pi];
>> y(:,1)=sin(x);
>> y(:,2)=cos(x);
>> plot(x,y)
>> xlim([0,2*pi])
>> grid
>> xlabel('x-axis')
>> ylabel('y-axis')
>> title('Plot of sin and cos curves')
>> legend('sin','cos')
4.2.2. グラフィックスの編集機能¶
グラフィックスの編集を行う代表的な方法には次の2通りあります。
- プロパティエディタを利用する
- Plot Tool機能を利用する
プロパティエディタはMATLABのグラフィックス編集を行うGUIツールで、 基本的にマウス操作がメインになります。
これに対して、コマンドによる編集方法はキーボード入力がメインになります。
- プロパティエディタの利用 プロパティエディタを起動するには、Figureウィンドウの「Edit」⇒「Figure Properties」を選択します。 Property Editorが起動します。変更したいプロパティを選択すると表示されるメニューがその都度変わります。
- Plot Tool機能の利用