MATLAB での 3D ラインまたはポイントプロット
このチュートリアルでは、MATLAB の plot3() 関数を使用して点または線の 3D プロットを作成する方法について説明します。
MATLAB で plot3() 関数を使用して点または線の 3D プロットを作成する
2D 平面にデータをプロットするために使用される MATLAB の plot() 関数についてはすでに知っています。
plot3() 関数は plot() 関数に似ています。唯一の違いは、plot3() 関数がデータを 3D 平面にプロットすることです。
データは、連続プロットと呼ばれる線として、および離散プロットとも呼ばれる点としてプロットできます。3D 平面にデータをプロットするには、x、y、z の 3つの座標を渡す必要があります。
たとえば、plot3() 関数を使用して 3D でらせんをプロットしてみましょう。以下のコードを参照してください。
clc
t = 0:pi/50:10*pi;
sinet = sin(t);
cost = cos(t);
plot3(sinet,cost,t)
出力:

plot3() 関数内で複数の入力を使用して、複数の線を同時にプロットすることもできます。
たとえば、6つの入力と plot3() 関数を使用して 2 本の線をプロットしてみましょう。以下のコードを参照してください。
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,xs2,ys2,zs2)
出力:

複数の行の場合、plot3() 関数は各行に異なる色を与えます。legend() 関数を使用して、各行に一意の名前を付けることもできます。MATLAB の凡例の詳細については、このリンクを確認してください。
6つの引数を渡す代わりに、複数のデータの座標を 1つの行列に保存できます。
たとえば、上記の場合、各データの x 座標を列として単一の行列に保存できますが、残りの座標についても同じことが言えます。次に、3つの入力を渡すだけです。
x 軸ラベルには xlabel() 関数、y 軸ラベルには ylabel()、z 軸ラベルには label() を使用して、3D プロットの各軸にラベルを追加することもできます。。title() 関数を使用して、タイトルにプロットを付けることもできます。
円の場合は o、プラス記号の場合は+、アスタリスクの場合は*、ひし形の場合は d など、さまざまなマーカーを使用して、線を離散プロットの点に変更することもできます。
たとえば、上のグラフを離散形式でプロットし、プロットにラベルとタイトルを追加してみましょう。以下のコードを参照してください。
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
xs2 = sin(time).*cos(12*time);
ys2 = sin(time).*sin(12*time);
zs2 = cos(time);
plot3(xs1,ys1,zs1,'+',xs2,ys2,zs2,'d')
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')
出力:

また、LineStyle プロパティを使用してラインスタイル、Color プロパティを使用してラインの色、LineWidth プロパティを使用してラインの幅、MarkerSize プロパティを使用してマーカーサイズ、MarkerEdgeColor プロパティを使用してマーカーエッジの色、または MarkerFaceColor プロパティを使用してマーカーの塗りつぶし色など、他のプロパティも変更できます。
LineSpec プロパティを使用して、線のスタイル、マーカー、および色を同時に変更することもできます。たとえば、上のグラフのいくつかのプロパティを変更してみましょう。以下のコードを参照してください。
clc
time = 0:pi/500:pi;
xs1 = sin(time).*cos(10*time);
ys1 = sin(time).*sin(10*time);
zs1 = cos(time);
plot3(xs1,ys1,zs1,'LineStyle','--','Color','red','LineWidth',3)
legend('Line1','Line2')
axis equal
xlabel('x(t)')
ylabel('y(t)')
zlabel('z(t)')
title('3D line plot')
出力:

plot3() 関数の線のスタイルは、実線の場合は -、破線の場合は -、点線の場合は:、-。をサポートしました。一点鎖線の場合。色の名前または RGB トリプレット値を使用して、線またはマーカーの色を変更できます。
デフォルトの線幅は 0.5 ですが、任意の正の値を使用してその値を設定できます。マーカーサイズの値はデフォルトで 6 ですが、任意の正の値に変更できます。
デフォルトでは、マーカーのエッジの色は auto に設定され、マーカーの面の色は none に設定されていますが、色の名前または RGB トリプレット値を使用してマーカーに任意の色を付けることができます。
関連記事 - MATLAB Plot
- MATLAB ウォーターフォール プロット
- MATLAB の棒グラフ ラベルでのギリシャ記号の使用
- MATLAB 極座標プロット
- MATLAB の caxis()関数
- MATLAB での 3D 矢筒またはベクトルプロット
