matlabで関数から3次元の立体的なグラフを作る
2変数関数のグラフをmatlabで描画するときのメモ。
例えとして
のグラフを描きます。
コマンドとその結果
[matlab]
[x,y]=mechgrid(-1:0.1:1,-1.5:0.1:1.5);
z=(x.^2+y.^2)
surf(x,y,z)
[/matlab]
コマンドの意味
まず1行目の
[matlab]
[x,y]=meshgrid(-1:0.1:1,-1:0.1:1);
[/matlab]
ではx,yそれぞれに行列値を代入しています。
xには-1から1までの0.1ずつ増加していく値、つまり -1.0, -0.9, -0.8, …
yも同様に-1.5から1.5までの0.1ずつ増加していく値、つまり -1.5, -1.4, -1.3, …
2行目の
[matlab]
z=(x.^2+y.^2)
[/matlab]
ではzにx,yのそれぞれの行列要素ごとの計算結果を代入しています。
それぞれの変数名の後に.(ピリオド)を付けることで要素ごとの計算になります。


コメントを残す