作図のあれこれ

ページトップへ 一つ上へ

ポイント


plot



さて、前回では、純音等をプロットしました。
今回は、そのプロットに関して、もうちょっと詳しくやっていきます。

まずは、簡単なグラフを書いてみましょう。
以下のプログラムを書いてみてください。

function graphtest

%
% グラフの表示
% y=xのグラフ
% xの範囲は0から30まで
%
%

x = 0 : 30;   % 横軸xの範囲を指定
y=x;          

plot(x,y);    % xとyで図を書く

実行したら、下のようなy=xのグラフが出てきます。



では、前回の引数の例にしたがって、少し拡張してみましょう。

プログラムを以下のように書き直して下さい。
変更個所は青字です。

function graphtest(a,b)

%
% グラフの表示
% y=xのグラフ
% xの範囲はコマンドから任意
%
%

x = a : b;

y=x;

plot(x,y);


保存が出来ましたら、以下のように実行してみて下さい。

>graphtest(0,30)

これで、さきほどと同じグラフが出来ると思います。
引数二つで、グラフの範囲を指定する事になりました。

しかし、これではxとyの値の関係が少し見難いですね。
次は図にグリッドを付けましょう。
さきほどのプログラムに青字の部分を追加しましょう。

function graphtest(a,b)

%
% グラフの表示
% y=xのグラフ
% xの範囲はコマンドから任意
% グリッド表示を追加
%
%

x = a : b;

y=x;

plot(x,y);
grid on;    % 図にグリッドを表示させる

保存したら、以下のように実行してみて下さい。

>graphtest(0,50)
すると、以下のようにグリッドが付きます。



しっかりとグリッドが付いてるのがわかりますね。

次は、一つの図に複数のグラフを書いてみましょう。
以下のようにプログラムを書いてください。

function graphtest2(a,b)

%
% 複数のグラフの表示
% y=xのグラフとy=2xのグラフ
% xの範囲はコマンドから任意
%
%

x = a : b;

y=x;
y2=2*x;

plot(x,y);
hold on;     % ホールドする
grid on;
plot(x,y2);

さて、以下のように実行してみて下さい。

>graphtest2(0,50)
下のようなグラフが書けていると思います。



ちゃんと二つのグラフが書けていますよね。

しかし、二つのグラフの線の色が同じでは見難いですね。
そこで、今度は線の色を変えるようにプログラムを拡張しましょう。
変更箇所は青字です。

function graphtest2(a,b)

%
% 複数のグラフの表示
% y=xのグラフとy=2xのグラフ
% xの範囲はコマンドから任意
% 線の色を変更
%

x = a : b;

y=x;
y2=2*x;


plot(x,y,'r');   % 赤色の線でプロット
hold on;
grid on;
plot(x,y2,'g');  % 緑色の線でプロット



上手く書けましたか?ちゃんと色が変わりましたね。
しかし、これではどの色がどのグラフかわかりませんね。
という事で、さらに以下のようにプログラムを拡張しましょう。
ついでですから、x軸とy軸のラベル。そして、グラフタイトルも付けましょう。
変更箇所は青字です。

function graphtest2(a,b)

%
% 複数のグラフの表示
% y=xのグラフとy=2xのグラフ
% xの範囲はコマンドから任意
% 線の色を変更
%

x = a : b;

y=x;
y2=2*x;


plot(x,y,'r');
hold on;
grid on;
plot(x,y2,'g');

xlabel('x');               % x軸のラベル付け
ylabel('y');               % y軸のラベル付け
legend('y=x','y=2x');      % 線の名前付け
title('function graph');   % 図のタイトル表示


さてさて、実行すれば、以下のようにグラフが出てきます。



これで、作図に関しては、ほぼ完璧ですね。