#前回まで
前回はベクトル等に対する操作を中心にまとめました.
今回はデータプロットについてまとめます.
前回と同じく, 内容はAndrew Ng 先生の『Octave/Matlab Tutorial』のまとめです.
実際この講義ではデータプロット部分はほとんど記述してくださっていたので, あんまり使わない可能性もありますが...
##使用データ作成
今回の記事では, 以下のように作成したsin,cosのデータを使用していきます.
t = [1:0.01:2]; % x軸の数値作成
y1 = cos(2*pi*4*t); % cosデータ作成
y2 = sin(2*pi*4*t); % sinデータ作成
##複数のグラフを重ねてプロット
plot(t,y1) % cosデータプロット
hold on % グラフをそのままに
plot(t,y2,'r') % sinデータを重ねてプロット
x軸の数値配列, y軸の数値配列をplotに渡すことで簡単にプロットできます.
通常複数のデータをplotで連続で処理しても,グラフは上書きされ一つのデータしか表示されません.
hold onにより,それ以降データを重ねてグラフに表示することが可能になります.
**'r'**のような引数を渡すことでグラフの色を指定することも可能です.
xlabel('times') % x軸ラベル
ylabel('value') % y軸ラベル
legend('cos','sin') % 凡例
title('title') % タイトル
軸ラベルや凡例,タイトルをグラフに追加します.
cd '保存先パス' % 保存先へ移動
print -dpng 'ファイル名.png' % 保存
close % クリア
最後に保存したい場合は, 保存したいフォルダへ移動してから ファイル名を指定して保存します.
closeによりグラフを消すことができます.
まとめると以下のようになります.
t = [1:0.01:2];
y1 = cos(2*pi*4*t);
y2 = sin(2*pi*4*t);
plot(t,y1) % cosデータプロット
hold on % これ以降グラフを重ねることが可能
plot(t,y2,'r')
xlabel('times') % x軸ラベル
ylabel('value') % y軸ラベル
legend('cos','sin') % 凡例
title('title') % タイトル
cd '保存先パス' % 保存先へ移動
print -dpng 'ファイル名.png' % ファイル名を指定して保存
close % グラフクリア
##複数のウィンドウに複数のグラフをプロット
複数ウィンドウでグラフを並べます.
(真っ白なキャンバスを複数作って, それらにそれぞれグラフをプロットしていくような感じ)
figureで真っ白なウィンドウを作成し,plotで現在のウィンドウにグラフを作成します.
先述のxlabel,ylabelやlegend等 で現在のウィンドウにどんどん追加できます.
figure(1);
plot(t,y1);
figure(2);
plot(t,y2,'red');
cd '保存先パス' % 保存先へ移動
print -dpng 'ファイル名.png' % ファイル名を指定して保存
close % グラフクリア
##一つのウィンドウに複数グラフをプロット
今回は縦に1つ, 横に2つに分けてグラフを描きます.
縦,横に1,2で分割しているので, 左側を(1,2,1), 右側を(1,2,2)として座標で指定できます.
よって**subplot(1,2,1)**で ''横に2つに分割したやつの左側にグラフを描きます'' と指定してどんどん詳細を書き込んでいきます.
今回はグラフのプロットのみですが...
subplot(1,2,1);
plot(t,y1);
subplot(1,2,2);
plot(t,y2);
cd '保存先パス' % 保存先へ移動
print -dpng 'ファイル名.png' % ファイル名を指定して保存
close % グラフクリア
2次元配列を画像として表示
ここでは今までとは別に, 2次元データを使用します.
前回の記事で記載していますが, magic(7) で縦, 横, 斜めの和が同値となる7×7行列が作成可能です.
imagesc で データをイメージとして表示します.
colorbarでカラーバーの追加, colormap grayでグレースケール画像への変更ができます.
A = magic(7)
imagesc(A)
colorbar
colormap gray
%imagesc(A),colorbar,colormap gray; でも同様
cd '保存先パス' % 保存先へ移動
print -dpng 'ファイル名.png' % ファイル名を指定して保存
close % グラフクリア
##以上
次回はループ, if文, 関数についてまとめると思います.