Matlab二元関数プロット
4038 ワード
データ解析では変数間の関係を観察し,matlab描画法により直感的な理解を得ることができる.二元関数では、3 D図形描画関数meshを使用できます.
MATLABでは,meshgrid関数を用いて平面領域内の格子座標行列を生成した.フォーマットは次のとおりです.
文の実行後、行列Xの各行はベクトルxであり、行数はベクトルyの要素の個数に等しく、行列Yの各列はベクトルyであり、列数はベクトルxの要素の個数に等しい.
mesh(x,y,z,c)
一般に,x,y,zは次元数が同じ行列である.x,yはメッシュ座標行列,zはメッシュ点上の高さ行列,cは異なる高さでの色範囲を指定するために用いられる.さらに,等高線を持つ3 Dメッシュサーフェス関数meshcとベース付き3 Dメッシュサーフェス関数meshzもある.meshと同様に、meshcはxy平面上にサーフェスのz軸方向の等高線を描き、meshzはxy平面上にサーフェスのベースを描くのとは異なります.
例:
附:座標軸設定
1.曲線の線型、色およびマーキングポイントタイプplot(X 1,Y 1,LineSpec,...)曲線の線型、色およびデータポイントのマーキングタイプを文字列LineSpecで指定します.線型色データ点マーク型識別子意味識別子意味識別子意味-実線r赤+プラス記号-.点線g緑色o円--破線b青色*星号:点線c青色緑色.点mマゼンタx交差記号y黄色square(またはs)四角k黒色diamond(またはd)菱形w白色^上向き三角形v下向き三角形>左の三角形<右の三角形pentagram(またはp)五角形hexagram(またはh)六角形
2.曲線の線幅、マーキングポイントのサイズ、マーキングポイントの枠線の色、マーキングポイントの塗りつぶし色などを設定します.plot(...,’Property Name’,Property Value,...)Property Name意味オプションLineWidth線幅数値、例えば0.5,1等、単位points MarkerEdgeColorタグポイント枠線色文字、例えば’g’,’b’等のMarkerFaceColorタグポイント内部領域塗りつぶし色文字MarkerSizeタグポイントサイズ数値、単位はpoints
3.座標軸設定範囲設定:a.axis([xmin xmax ymin ymax])指定された区間b.axis auto現在の描画領域の座標軸範囲をMATLAB自動調整の区間c.axis manual現在の座標軸範囲を凍結し、以降の重ね合わせ描画はいずれも前座標軸範囲内にd.axis tightを表示する.すなわち、ユーザデータ範囲を座標軸範囲スケールとする:a.axis equal等スケール座標軸b.axis square現在の座標軸範囲をもとに、座標軸領域を四角形に調整するc.axis normalは縦横軸スケールを自動的に調整し、現在の座標軸範囲内のグラフィック表示を最適効果範囲にするオプションとスケール設定を併用することができる.デフォルトはaxis auto normal
4.座標軸目盛設定set(gca,’XTick’,[01 2])X座標軸目盛データ点位置set(gca,'XTickLabel',{'a','b','c'})X座標軸目盛に表示される文字set(gca,'FontName','Times New Roman','FontSize',14)座標軸目盛フォント名、サイズ‘FontWeight’,'bold'太字‘FontAngle',’italic’斜体対フォントの設定はtitle,xlabel,ylabelなどにも使用できます
5.凡例legend('a','Location','best')凡例位置を最適な位置に置く
legend関数の基本的な使い方はLEGEND(string 1,string 2,string 3,...)文字列1、文字列2、文字列3…をそれぞれ図に表示し、各文字列に対応するアイコンは図を描くときのアイコンである.例えばplot(x,sin(x),′.b',x,cos(x),'+r')legend('sin','cos')は「.」'sin'として、"+"を"cos"として、LEGEND(...,'Location',LOC)で凡例識別ボックスの位置を指定することもできます.これらはMatlab helpファイルです.次の段落は対応する翻訳と説明「North'inside plot box near top'South'inside bottom'East'inside right'West'inside left'NorthEast'inside top right(default) 'NorthWest inside top left 'SouthEast' inside bottom right 'SouthWest' inside bottom left 'NorthOutside' outside plot box near top 'SouthOutside' outside bottom 'EastOutside' outside right 'WestOutside' outside left 'NorthEastOutside' outside top right 'NorthWestOutside' outside top left 'SouthEastOutside' outside bottom right 'SouthWestOutside' outside bottom left 'Best' least conflict with data in plot'BestOutside'least unused space outside plot'North'パターンIDを図の先端に置く'South'パターンIDを図の下端に置く'East'パターンIDを図の右側に置く'West'パターンIDを図左上の「NorthEast」凡例IDを図右上に置く(デフォルト)「NorthWest凡例IDを図左上に置く」「SouthEast」凡例IDを図右下の「SouthWest」凡例IDを図左下に置く(以上のいくつかはいずれも図例識別をブロック図内に置く)'NorthOutside'図例識別を図枠の外側の上に置く'SouthOutside'図例識別を図枠の外側の下に置く'EastOutside'図例識別を図枠の外側の右側に置く'WestOutside'図例識別枠の外側の左上にある「NorthEastOutside」凡例IDを枠の外側の右上に置く「NorthWestOutside」凡例IDを枠の外側の左上に置く「SouthEastOutside」凡例IDを枠の外側の右下に置く「SouthWestOutside」凡例IDを枠の外側の左下に置く(以上、図例識別子をブロック図の外に置く)'Best'アイコン識別子は、図枠内に配置され、図と衝突しない最適な位置'BestOutside'アイコン識別子は、図枠外に配置され、最小空間を使用する最適な位置を示す
MATLABでは,meshgrid関数を用いて平面領域内の格子座標行列を生成した.フォーマットは次のとおりです.
x=a:d1:b; y=c:d2:d;
[X,Y]=meshgrid(x,y);
文の実行後、行列Xの各行はベクトルxであり、行数はベクトルyの要素の個数に等しく、行列Yの各列はベクトルyであり、列数はベクトルxの要素の個数に等しい.
mesh(x,y,z,c)
一般に,x,y,zは次元数が同じ行列である.x,yはメッシュ座標行列,zはメッシュ点上の高さ行列,cは異なる高さでの色範囲を指定するために用いられる.さらに,等高線を持つ3 Dメッシュサーフェス関数meshcとベース付き3 Dメッシュサーフェス関数meshzもある.meshと同様に、meshcはxy平面上にサーフェスのz軸方向の等高線を描き、meshzはxy平面上にサーフェスのベースを描くのとは異なります.
例:
%
x = 0:100;
y = 500:3500;
%
a = 1000;
b = 2;
%
xlen = length(x);
ylen = length(y);
z = zeros(ylen,xlen);
for i = 1:xlen
for j = 1:ylen
z(j,i) = b * x(i) * a / y(j); %
end
end
[xx,yy]=meshgrid(x,y);
figure;mesh(xx,yy,z)
xlabel('x');ylabel('y');zlabel('z');
附:座標軸設定
1.曲線の線型、色およびマーキングポイントタイプplot(X 1,Y 1,LineSpec,...)曲線の線型、色およびデータポイントのマーキングタイプを文字列LineSpecで指定します.線型色データ点マーク型識別子意味識別子意味識別子意味-実線r赤+プラス記号-.点線g緑色o円--破線b青色*星号:点線c青色緑色.点mマゼンタx交差記号y黄色square(またはs)四角k黒色diamond(またはd)菱形w白色^上向き三角形v下向き三角形>左の三角形<右の三角形pentagram(またはp)五角形hexagram(またはh)六角形
2.曲線の線幅、マーキングポイントのサイズ、マーキングポイントの枠線の色、マーキングポイントの塗りつぶし色などを設定します.plot(...,’Property Name’,Property Value,...)Property Name意味オプションLineWidth線幅数値、例えば0.5,1等、単位points MarkerEdgeColorタグポイント枠線色文字、例えば’g’,’b’等のMarkerFaceColorタグポイント内部領域塗りつぶし色文字MarkerSizeタグポイントサイズ数値、単位はpoints
3.座標軸設定範囲設定:a.axis([xmin xmax ymin ymax])指定された区間b.axis auto現在の描画領域の座標軸範囲をMATLAB自動調整の区間c.axis manual現在の座標軸範囲を凍結し、以降の重ね合わせ描画はいずれも前座標軸範囲内にd.axis tightを表示する.すなわち、ユーザデータ範囲を座標軸範囲スケールとする:a.axis equal等スケール座標軸b.axis square現在の座標軸範囲をもとに、座標軸領域を四角形に調整するc.axis normalは縦横軸スケールを自動的に調整し、現在の座標軸範囲内のグラフィック表示を最適効果範囲にするオプションとスケール設定を併用することができる.デフォルトはaxis auto normal
4.座標軸目盛設定set(gca,’XTick’,[01 2])X座標軸目盛データ点位置set(gca,'XTickLabel',{'a','b','c'})X座標軸目盛に表示される文字set(gca,'FontName','Times New Roman','FontSize',14)座標軸目盛フォント名、サイズ‘FontWeight’,'bold'太字‘FontAngle',’italic’斜体対フォントの設定はtitle,xlabel,ylabelなどにも使用できます
5.凡例legend('a','Location','best')凡例位置を最適な位置に置く
legend関数の基本的な使い方はLEGEND(string 1,string 2,string 3,...)文字列1、文字列2、文字列3…をそれぞれ図に表示し、各文字列に対応するアイコンは図を描くときのアイコンである.例えばplot(x,sin(x),′.b',x,cos(x),'+r')legend('sin','cos')は「.」'sin'として、"+"を"cos"として、LEGEND(...,'Location',LOC)で凡例識別ボックスの位置を指定することもできます.これらはMatlab helpファイルです.次の段落は対応する翻訳と説明「North'inside plot box near top'South'inside bottom'East'inside right'West'inside left'NorthEast'inside top right(default) 'NorthWest inside top left 'SouthEast' inside bottom right 'SouthWest' inside bottom left 'NorthOutside' outside plot box near top 'SouthOutside' outside bottom 'EastOutside' outside right 'WestOutside' outside left 'NorthEastOutside' outside top right 'NorthWestOutside' outside top left 'SouthEastOutside' outside bottom right 'SouthWestOutside' outside bottom left 'Best' least conflict with data in plot'BestOutside'least unused space outside plot'North'パターンIDを図の先端に置く'South'パターンIDを図の下端に置く'East'パターンIDを図の右側に置く'West'パターンIDを図左上の「NorthEast」凡例IDを図右上に置く(デフォルト)「NorthWest凡例IDを図左上に置く」「SouthEast」凡例IDを図右下の「SouthWest」凡例IDを図左下に置く(以上のいくつかはいずれも図例識別をブロック図内に置く)'NorthOutside'図例識別を図枠の外側の上に置く'SouthOutside'図例識別を図枠の外側の下に置く'EastOutside'図例識別を図枠の外側の右側に置く'WestOutside'図例識別枠の外側の左上にある「NorthEastOutside」凡例IDを枠の外側の右上に置く「NorthWestOutside」凡例IDを枠の外側の左上に置く「SouthEastOutside」凡例IDを枠の外側の右下に置く「SouthWestOutside」凡例IDを枠の外側の左下に置く(以上、図例識別子をブロック図の外に置く)'Best'アイコン識別子は、図枠内に配置され、図と衝突しない最適な位置'BestOutside'アイコン識別子は、図枠外に配置され、最小空間を使用する最適な位置を示す