3 次元散布図
ページ内をすべて折りたたむ
構文
scatter3(X,Y,Z)
scatter3(X,Y,Z,S)
scatter3(X,Y,Z,S,C)
scatter3(___,'filled')
scatter3(___,markertype)
scatter3(tbl,xvar,yvar,zvar)
scatter3(tbl,xvar,yvar,zvar,'filled')
scatter3(ax,___)
scatter3(___,Name,Value)
h = scatter3(___)
説明
ベクトルと行列のデータ
例
scatter3(X,Y,Z)
は、X
、Y
、および Z
で指定された位置に円を表示します。
1 つの座標セットをプロットするには、
X
、Y
、Z
を等しい長さのベクトルとして指定します。同じ座標軸セットに複数の座標セットをプロットするには、
X
、Y
、Z
のうちの少なくとも 1 つを行列として指定します。(R2022a 以降)
例
scatter3(X,Y,Z,S)
は円のサイズを指定します。
円のサイズを変えるには、
S
をベクトルとして指定します。複数の座標セット間で異なるサイズを指定するには、行列を指定します。(R2022a 以降)
例
scatter3(X,Y,Z,S,C)
は円の色を指定します。すべての円に 1 つの色を指定することも、色を変えることもできます。たとえば、C
を "red"
と指定することで、すべての円を赤でプロットできます。
例
scatter3(___,'filled')
は、前述の構文の任意の入力引数の組み合わせを使って円を塗りつぶします。
例
scatter3(___,markertype)
はマーカーのタイプを指定します。
テーブル データ
例
scatter3(tbl,xvar,yvar,zvar)
は、table tbl
の変数 xvar
、yvar
および zvar
をプロットします。1 つのデータ セットをプロットするには、xvar
、yvar
、および zvar
にそれぞれ 1 つの変数を指定します。複数のデータ セットをプロットするには、それらの引数の少なくとも 1 つに複数の変数を指定します。複数の変数を指定する引数では、同数の変数を指定しなければなりません。(R2021b 以降)
例
scatter3(tbl,xvar,yvar,zvar,'filled')
は、塗りつぶされた円を使用して、table の指定された変数をプロットします。(R2021b 以降)
追加オプション
例
scatter3(ax,___)
は、現在の座標軸 (gca
) の代わりに ax
によって指定される座標軸にプロットします。ax
オプションは、前述の構文のすべての入力引数の組み合わせより前に指定できます。
例
scatter3(___,Name,Value)
は、1 つ以上の名前と値の引数を使用してプロパティを設定し、散布図を変更します。以下に例を示します。
scatter3(x,y,z,'LineWidth',2)
は、マーカーの輪郭を 2 ポイントにして散布図を作成します。scatter3(tbl,'MyX','MyY','MyZ','ColorVariable','MyColors')
は、table のデータから散布図を作成し、その table のデータを使用してマーカーの色をカスタマイズします。
プロパティの完全な一覧については、Scatter のプロパティ を参照してください。
例
h = scatter3(___)
は、Scatter
オブジェクトを返します。h
は散布図の作成後にそれらのプロパティを変更する場合に使用します。
例
すべて折りたたむ
3 次元散布図を作成
ライブ スクリプトを開く
3 次元散布図を作成します。sphere
を使用して、ベクトル x
、y
および z
を定義します。
figure[X,Y,Z] = sphere(16);x = [0.5*X(:); 0.75*X(:); X(:)];y = [0.5*Y(:); 0.75*Y(:); Y(:)];z = [0.5*Z(:); 0.75*Z(:); Z(:)];scatter3(x,y,z)
マーカーのサイズを変更
ライブ スクリプトを開く
sphere
を使用して、ベクトル x
、y
および z
を定義します。
[X,Y,Z] = sphere(16);x = [0.5*X(:); 0.75*X(:); X(:)];y = [0.5*Y(:); 0.75*Y(:); Y(:)];z = [0.5*Z(:); 0.75*Z(:); Z(:)];
ベクトル s
を定義して、マーカー サイズを指定します。
S = repmat([100,50,5],numel(X),1);s = S(:);
3 次元散布図を作成し、view
を使用して Figure の Axes の角度を変更します。
figurescatter3(x,y,z,s)view(40,35)
x
、y
、z
および s
の対応するエントリによって、各マーカーの位置とサイズが決まります。
マーカーの色を変更
ライブ スクリプトを開く
sphere
を使用して、ベクトル x
、y
および z
を定義します。
[X,Y,Z] = sphere(16);x = [0.5*X(:); 0.75*X(:); X(:)];y = [0.5*Y(:); 0.75*Y(:); Y(:)];z = [0.5*Z(:); 0.75*Z(:); Z(:)];
ベクトル s
と c
を定義して、各マーカーのサイズと色を指定します。
S = repmat([50,25,10],numel(X),1);C = repmat([1,2,3],numel(X),1);s = S(:);c = C(:);
3 次元散布図を作成し、view
を使用して Figure の Axes の角度を変更します。
figurescatter3(x,y,z,s,c)view(40,35)
x
、y
、z
および c
の対応するエントリによって、各マーカーの位置と色が決まります。
マーカーの塗りつぶし
ライブ スクリプトを開く
x
ベクトルと y
ベクトルを、ランダム ノイズが含まれる余弦値と正弦値として作成します。
z = linspace(0,4*pi,250);x = 2*cos(z) + rand(1,250);y = 2*sin(z) + rand(1,250);
3 次元散布図を作成し、マーカーを塗りつぶします。view
を使用して図の軸の角度を変更します。
scatter3(x,y,z,'filled')view(-30,10)
マーカー タイプの設定
ライブ スクリプトを開く
乱数発生器を初期化して rand
の出力を反復可能にします。x
ベクトルと y
ベクトルを、ランダム ノイズが含まれる余弦値と正弦値として定義します。
rng defaultz = linspace(0,4*pi,250);x = 2*cos(z) + rand(1,250);y = 2*sin(z) + rand(1,250);
3 次元散布図を作成し、マーカー タイプを設定します。view
を使用して図の軸の角度を変更します。
figurescatter3(x,y,z,'*')view(-30,10)
マーカーのプロパティの設定
ライブ スクリプトを開く
乱数発生器を初期化して rand
の出力を反復可能にします。x
ベクトルと y
ベクトルを、ランダム ノイズが含まれる余弦値と正弦値として定義します。
rng defaultz = linspace(0,4*pi,250);x = 2*cos(z) + rand(1,250);y = 2*sin(z) + rand(1,250);
3 次元散布図を作成し、マーカー エッジの色とマーカーの面の色を設定します。view
を使用して図の軸の角度を変更します。
figurescatter3(x,y,z,... 'MarkerEdgeColor','k',... 'MarkerFaceColor',[0 .75 .75])view(-30,10)
table のデータのプロット
ライブ スクリプトを開く
R2021b 以降
table のデータをプロットするには、table を関数 scatter3
に渡してプロット対象の変数を指定すると便利です。たとえば、patients.xls
を table tbl
として読み取ります。tbl
を最初の引数として関数 scatter3
に渡し、続けて変数名を渡すことにより、変数 Systolic
、Diastolic
、および Weight
の関係をプロットします。既定では、軸ラベルは変数名と一致します。
tbl = readtable('patients.xls');scatter3(tbl,'Systolic','Diastolic','Weight');
また、複数の変数を同時にプロットできます。たとえば、xvar
引数を cell 配列 {'Systolic','Diastolic'}
として指定することにより、両方の血圧変数を "x" 軸にプロットします。次に、凡例を追加します。凡例ラベルは変数名と一致します。
scatter3(tbl,{'Systolic','Diastolic'},'Age','Weight');legend
カスタムのマーカー サイズおよび色を使用した table データのプロット
ライブ スクリプトを開く
R2021b 以降
table のデータをプロットして色とマーカー サイズをカスタマイズする方法の 1 つとして、ColorVariable
プロパティと SizeData
プロパティを設定する方法があります。これらのプロパティは、関数 scatter3
を呼び出すときに名前と値の引数として設定するか、後で Scatter
オブジェクトに対して設定できます。
たとえば、patients.xls
を table tbl
として読み取ります。塗りつぶされたマーカーを使用して、変数 Systolic
、Diastolic
、および Weight
の関係をプロットします。名前と値の引数 ColorVariable
を指定してマーカーの色を変更します。Scatter
オブジェクトを s
として返すため、後で他のプロパティを設定できます。
tbl = readtable('patients.xls');s = scatter3(tbl,'Systolic','Diastolic','Weight','filled', ... 'ColorVariable','Diastolic');
SizeData
プロパティを設定してマーカー サイズを 100 ポイントに変更します。次に、カラーバーを追加します。
s.SizeData = 100;colorbar
3 次元散布図の Axes の指定
ライブ スクリプトを開く
R2019b 以降
関数 tiledlayout
および関数 nexttile
を使用して、プロットをタイル表示できます。
seamount
データ セットを読み込み、x
ベクトル、y
ベクトルおよび z
ベクトルを取得します。関数 tiledlayout
を呼び出して、2 行 1 列のタイル表示チャート レイアウトを作成します。関数 nexttile
を呼び出して、axes オブジェクト ax1
および ax2
を作成します。次に、axes オブジェクトを scatter3
の最初の引数として指定することで、座標軸に個別の散布図を作成します。
load seamounttiledlayout(2,1)ax1 = nexttile;ax2 = nexttile;scatter3(ax1,x,y,z,'MarkerFaceColor',[0 .75 .75])scatter3(ax2,x,y,z,'*')
ハンドルを使用した scatter series のプロパティの設定
ライブ スクリプトを開く
関数 sphere
を使用してベクトル x
、y
および z
を作成します。
[X,Y,Z] = sphere(16);x = [0.5*X(:); 0.75*X(:); X(:)];y = [0.5*Y(:); 0.75*Y(:); Y(:)];z = [0.5*Z(:); 0.75*Z(:); Z(:)];
ベクトル s
と c
を作成し、各マーカーのサイズと色を指定します。
S = repmat([70,50,20],numel(X),1);C = repmat([1,2,3],numel(X),1);s = S(:);c = C(:);
3 次元散布図を作成し、scatter series オブジェクトを返します。
h = scatter3(x,y,z,s,c);
RGB 3 成分を使ってマーカーの面の色を設定します。プロパティの設定にはドット表記を使用します。
h.MarkerFaceColor = [0 0.5 0.5];
入力引数
すべて折りたたむ
X
— x 座標
スカラー | ベクトル | 行列
x 座標。スカラー、ベクトルまたは行列として指定します。X
のサイズと形状はデータの形状に依存します。次の表では、最も一般的な状況について説明します。
プロットのタイプ | 座標の指定方法 |
---|---|
1 つの点 |
scatter3(1,2,3) |
1 つの点集合 |
X = [1 2 3 4];Y = [5; 6; 7; 8];Z = [9 10 11 12];scatter3(X,Y,Z) |
色が異なる複数の点集合 | すべてのデータ セットが 1 つ以上の次元で座標を共有している場合は、共有している座標をベクトルとして指定し、他の座標を行列として指定します。ベクトルの長さは行列の次元の 1 つと一致していなければなりません。たとえば、同じ x 座標を共有する 2 つのデータ セットをプロットします。 X = [1 2 3 4];Y = [4 5 6 7; 8 9 10 11];Z = [10 11 12 13; 14 15 16 17];scatter3(X,Y,Z) scatter3 は行列の列ごとに別個の点のセットをプロットします。あるいは、 X = [1 3 5 6; 2 4 6 8];Y = [10 25 45 61; 20 40 60 70];Z = [12 5 6 8; 9 13 2 7];scatter3(X,Y,Z) |
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
| datetime
| duration
Y
— y 座標
スカラー | ベクトル | 行列
y 座標。スカラー、ベクトルまたは行列として指定します。y
のサイズと形状はデータの形状に依存します。次の表では、最も一般的な状況について説明します。
プロットのタイプ | 座標の指定方法 |
---|---|
1 つの点 |
scatter3(1,2,3) |
1 つの点集合 |
X = [1 2 3 4];Y = [5; 6; 7; 8];Z = [9 10 11 12];scatter3(X,Y,Z) |
色が異なる複数の点集合 | すべてのデータ セットが 1 つ以上の次元で座標を共有している場合は、共有している座標をベクトルとして指定し、他の座標を行列として指定します。ベクトルの長さは行列の次元の 1 つと一致していなければなりません。たとえば、同じ x 座標を共有する 2 つのデータ セットをプロットします。 X = [1 2 3 4];Y = [4 5 6 7; 8 9 10 11];Z = [10 11 12 13; 14 15 16 17];scatter3(X,Y,Z) scatter3 は行列の列ごとに別個の点のセットをプロットします。あるいは、 X = [1 3 5 6; 2 4 6 8];Y = [10 25 45 61; 20 40 60 70];Z = [12 5 6 8; 9 13 2 7];scatter3(X,Y,Z) |
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
| datetime
| duration
Z
— z 座標
スカラー | ベクトル | 行列
z 座標。スカラー、ベクトルまたは行列として指定します。Z
のサイズと形状はデータの形状に依存します。次の表では、最も一般的な状況について説明します。
プロットのタイプ | 座標の指定方法 |
---|---|
1 つの点 |
scatter3(1,2,3) |
1 つの点集合 |
X = [1 2 3 4];Y = [5; 6; 7; 8];Z = [9 10 11 12];scatter3(X,Y,Z) |
色が異なる複数の点集合 | すべてのデータ セットが 1 つ以上の次元で座標を共有している場合は、共有している座標をベクトルとして指定し、他の座標を行列として指定します。ベクトルの長さは行列の次元の 1 つと一致していなければなりません。たとえば、同じ x 座標を共有する 2 つのデータ セットをプロットします。 X = [1 2 3 4];Y = [4 5 6 7; 8 9 10 11];Z = [10 11 12 13; 14 15 16 17];scatter3(X,Y,Z) scatter3 は行列の列ごとに別個の点のセットをプロットします。あるいは、 X = [1 3 5 6; 2 4 6 8];Y = [10 25 45 61; 20 40 60 70];Z = [12 5 6 8; 9 13 2 7];scatter3(X,Y,Z) |
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| categorical
| datetime
| duration
S
— マーカー サイズ
36 (既定値) | 数値スカラー | 行ベクトルまたは列ベクトル | 行列 | []
マーカー サイズ。数値スカラー、ベクトル、行列、または空の配列 ([]
) として指定します。サイズは各マーカーの平方ポイント単位の面積を制御します。空の行列は、既定の 36 ポイントのサイズを指定します。サイズを指定する方法は、X
、Y
、Z
の指定方法やプロットに求められる外観によって異なります。次の表では、最も一般的な状況について説明します。
マーカー サイズ | X 、Y 、Z | S | 例 |
---|---|---|---|
すべての点に同じサイズ | X、Y、Z の説明にあるベクトルまたは行列の任意の有効な組み合わせ | スカラー |
X = [1 2 3 4];Y = [5 6 7 8; 9 10 11 12];Z = [13 14 15 16; 17 18 19 20];scatter3(X,Y,Z,100) |
点ごとに異なるサイズ | 同じ長さのベクトル |
|
X = [1 2 3 4];Y = [4 5 6 7];Z = [8 9 10 11];S = [80 150 700 50];scatter3(X,Y,Z,S)
X = [1 2 3 4];Y = [5 6 7 8];Z = [9 10 11 12];S = [80 30; 150 900; 50 500; 200 350];scatter3(X,Y,Z,S) |
点ごとに異なるサイズ | 複数のデータ セットのプロットでは |
|
X = [1 2 3 4];Y = [1 6; 3 8; 2 7; 4 9];Z = [2 8; 3 10; 4 7; 4 12];S = [80 150 200 350];scatter3(X,Y,Z,S)
X = [1 2 3 4];Y = [1 6; 3 8; 2 7; 4 9];Z = [10 11; 12 13; 14 15; 16 17];S = [80 30; 150 900; 50 2000; 200 350];scatter3(X,Y,Z,S) |
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
C
— マーカーの色
色名 | RGB 3 成分 | RGB 3 成分の行列 | カラーマップ インデックスのベクトル
マーカーの色。色名、RGB 3 成分、RGB 3 成分の行列、またはカラーマップ インデックスのベクトルとして指定します。
色名 —
"red"
のような色名、または"r"
のような省略名。RGB 3 成分 — 色の赤、緑、青成分の強度を指定する 3 要素の行ベクトル。強度値は
[0,1]
の範囲でなければなりません。たとえば[0.4 0.6 0.7]
のようになります。RGB 3 成分は、カスタム色を作成するのに役立ちます。RGB 3 成分の行列 — 各行が RGB 3 成分である 3 列の行列。
カラーマップ インデックスのベクトル —
X
、Y
、およびZ
の各ベクトルと同じ長さの数値のベクトル。
色を指定する方法は、好ましい配色や、1 つの座標セットをプロットするか複数の座標セットをプロットするかによって異なります。次の表では、最も一般的な状況について説明します。
配色 | 色の指定方法 | 例 |
---|---|---|
すべての点に 1 つの色を使用する。 | 次の表のいずれかの色名または省略名を指定するか、1 つの RGB 3 成分を指定します。 | 1 つの点集合をプロットし、色を X = [1 2 3 4];Y = [2 5 3 6];Z = [10 6 4 7];S = 50;scatter3(X,Y,Z,S,"red") 2 つの点集合をプロットし、RGB 3 成分 X = [1 2 3 4];Y = [2 5 3 6];Z = [2 5; 1 2; 8 4; 7 9];S = 50;scatter3(X,Y,Z,S,[1 0 0]) |
カラーマップを使用して各点に異なる色を割り当てる。 | 数値の行ベクトルまたは列ベクトルを指定します。数値は現在のカラーマップ配列にマッピングされます。最小値はカラーマップの最初の行にマッピングされ、最大値は最後の行にマッピングされます。中間の値は中間の行に線形にマッピングされます。 プロットに点が 3 つある場合、値が必ずカラーマップ インデックスとして解釈されるように列ベクトルを指定します。 この方法は、 | 4 つのカラーマップ インデックスを指定するベクトル C = [1 2 3 4];X = [1 2 3 4];Y = [1 0 6 2];Z = [2 5 3 7];S = 50;scatter3(X,Y,Z,S,C)colormap(gca,"winter") |
点ごとにカスタム色を作成する。 | m 行 3 列の RGB 3 成分の行列を指定します (m はプロットの点の数)。 この方法は、 | 緑、赤、グレー、紫の RGB 3 成分を指定する行列 C = [0 1 0; 1 0 0; 0.5 0.5 0.5; 0.6 0 1];X = [1 2 3 4];Y = [2 5 3 6];Z = [10 6 4 7];S = 50;scatter3(X,Y,Z,S,C) |
データ セットごとに異なる色を作成する。 | n 行 3 列の RGB 3 成分の行列を指定します (n はデータ セットの数)。 この方法は、 | 2 つの RGB 3 成分を含む行列 C = [1 0 0; 0.6 0 1];X = [1 2 3 4];Y = [5 6 7 8];Z = [2 5; 1 2; 8 4; 11 9];S = 50;scatter3(X,Y,Z,S,C) |
一般的な色の色名と RGB 3 成分
色名 | 省略名 | RGB 3 成分 | 16 進数カラー コード | 外観 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" |
MATLAB® の多くのタイプのプロットで使用されている既定の色の RGB 3 成分および 16 進数カラー コードを次に示します。
RGB 3 成分 | 16 進数カラー コード | 外観 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
markertype
— マーカー
'o'
(既定値) | '+'
| '*'
| '.'
| 'x'
| ...
マーカー。次の表のマーカーのいずれかとして指定します。
マーカー | 説明 | 結果のマーカー |
---|---|---|
"o" | 円 | |
"+" | プラス記号 | |
"*" | アスタリスク | |
"." | 点 | |
"x" | 十字 | |
"_" | 水平線 | |
"|" | 垂直線 | |
"square" | 正方形 | |
"diamond" | 菱形 | |
"^" | 上向き三角形 | |
"v" | 下向き三角形 | |
">" | 右向き三角形 | |
"<" | 左向き三角形 | |
"pentagram" | 星形五角形 | |
"hexagram" | 星形六角形 | |
"none" | マーカーなし | 該当なし |
'filled'
— マーカーの内部を塗りつぶすオプション
'filled'
マーカーの内部を塗りつぶすオプション。'filled'
として指定します。このオプションは、たとえば 'o'
や 'square'
などの面があるマーカーに使用します。エッジのみを含む面のないマーカー ('+'
、'*'
、'.'
および 'x'
) は描画されません。
'filled'
オプションは Scatter
オブジェクトの MarkerFaceColor
プロパティを 'flat'
に、MarkerEdgeColor
プロパティを 'none'
に設定します。これにより、マーカーのエッジを描画せず、面を描画します。
tbl
— ソース table
table | timetable
プロットするデータが含まれるソース table。table または timetable として指定します。
xvar
— x 座標を含む table 変数
1 つ以上の table 変数インデックス
x 座標を含む table 変数。1 つ以上の table 変数インデックスとして指定します。
table インデックスの指定
以下のいずれかのインデックス方式を使用して、目的の変数を 1 つ以上指定します。
インデックス方式 | 例 |
---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
データのプロット
指定する table 変数には、数値、categorical 値、datetime 値、または duration 値を含めることができます。
1 つのデータ セットをプロットするには、xvar
、yvar
、および zvar
にそれぞれ 1 つの変数を指定します。たとえば、Patients.xls
を table tbl
に読み取ります。変数 Height
、Weight
、および Diastolic
をプロットします。
tbl = readtable("Patients.xls");scatter3(tbl,"Height","Weight","Diastolic")
複数のデータ セットをまとめてプロットするには、xvar
、yvar
、または zvar
の少なくとも 1 つに複数の変数を指定します。複数の引数に複数の変数を指定する場合、変数の数はそれらの各引数で同じでなければなりません。
たとえば、変数 Weight
を x 軸に、変数 Systolic
および Diastolic
を y 軸に、変数 Age
を z 軸にプロットします。
scatter3(tbl,"Weight",["Systolic","Diastolic"],"Age")
xvar
、yvar
、および zvar
に対して異なるインデックス方式も使用できます。たとえば、xvar
を変数名、yvar
をインデックス番号、zvar
を logical ベクトルとして指定します。
scatter3(tbl,"Height",6,[false false true])
yvar
— y 座標を含む table 変数
1 つ以上の table 変数インデックス
y 座標を含む table 変数。1 つ以上の table 変数インデックスとして指定します。
table インデックスの指定
以下のいずれかのインデックス方式を使用して、目的の変数を 1 つ以上指定します。
インデックス方式 | 例 |
---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
データのプロット
指定する table 変数には、数値、categorical 値、datetime 値、または duration 値を含めることができます。
1 つのデータ セットをプロットするには、xvar
、yvar
、および zvar
にそれぞれ 1 つの変数を指定します。たとえば、Patients.xls
を table tbl
に読み取ります。変数 Height
、Weight
、および Diastolic
をプロットします。
tbl = readtable("Patients.xls");scatter3(tbl,"Height","Weight","Diastolic")
複数のデータ セットをまとめてプロットするには、xvar
、yvar
、または zvar
の少なくとも 1 つに複数の変数を指定します。複数の引数に複数の変数を指定する場合、変数の数はそれらの各引数で同じでなければなりません。
たとえば、変数 Weight
を x 軸に、変数 Systolic
および Diastolic
を y 軸に、変数 Age
を z 軸にプロットします。
scatter3(tbl,"Weight",["Systolic","Diastolic"],"Age")
xvar
、yvar
、および zvar
に対して異なるインデックス方式も使用できます。たとえば、xvar
を変数名、yvar
をインデックス番号、zvar
を logical ベクトルとして指定します。
scatter3(tbl,"Height",6,[false false true])
zvar
— z 座標を含む table 変数
1 つ以上の table 変数インデックス
z 座標を含む table 変数。1 つ以上の table 変数インデックスとして指定します。
table インデックスの指定
以下のいずれかのインデックス方式を使用して、目的の変数を 1 つ以上指定します。
インデックス方式 | 例 |
---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
データのプロット
指定する table 変数には、数値、categorical 値、datetime 値、または duration 値を含めることができます。
1 つのデータ セットをプロットするには、xvar
、yvar
、および zvar
にそれぞれ 1 つの変数を指定します。たとえば、Patients.xls
を table tbl
に読み取ります。変数 Height
、Weight
、および Diastolic
をプロットします。
tbl = readtable("Patients.xls");scatter3(tbl,"Height","Weight","Diastolic")
複数のデータ セットをまとめてプロットするには、xvar
、yvar
、または zvar
の少なくとも 1 つに複数の変数を指定します。複数の引数に複数の変数を指定する場合、変数の数はそれらの各引数で同じでなければなりません。
たとえば、変数 Weight
を x 軸に、変数 Systolic
および Diastolic
を y 軸に、変数 Age
を z 軸にプロットします。
scatter3(tbl,"Weight",["Systolic","Diastolic"],"Age")
xvar
、yvar
、および zvar
に対して異なるインデックス方式も使用できます。たとえば、xvar
を変数名、yvar
をインデックス番号、zvar
を logical ベクトルとして指定します。
scatter3(tbl,"Height",6,[false false true])
ax
— axes オブジェクト
axes オブジェクト
axes オブジェクト。座標軸を指定しない場合は、scatter3
は現在の座標軸にプロットします。
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: 'MarkerFaceColor','red'
は、マーカーの面の色を赤に設定します。
ここでは、プロパティの一部だけを紹介しています。完全な一覧については、Scatter のプロパティ を参照してください。
ColorVariable
— カラー データを含む table 変数
table 変数インデックス
カラー データを含む table 変数。ソース table の変数インデックスとして指定します。
table インデックスの指定
以下のいずれかのインデックス方式を使用して、目的の変数を指定します。
インデックス方式 | 例 |
---|---|
変数名:
|
|
変数インデックス:
|
|
変数の型:
|
|
カラー データの指定
ColorVariable
プロパティを指定して、マーカーの色を制御します。MarkerFaceColor プロパティが "flat"
に設定されている場合は、変数のデータによってマーカーの塗りつぶし色を制御します。MarkerEdgeColor が "flat"
に設定されている場合は、このデータによってマーカーの輪郭の色も制御できます。
指定する table 変数には、任意の数値型の値を含めることができます。値は、次のいずれかの形式にできます。
現在のカラーマップに線形にマッピングされる数値の列。
RGB 3 成分の 3 列配列。RGB 3 成分は、各値が特定の色の赤、緑、青成分の強度を指定する 3 要素ベクトルです。強度値は
[0,1]
の範囲でなければなりません。たとえば、[0.5 0.7 1]
では薄い青の色調が指定されます。
ColorVariable
プロパティを設定すると、MATLAB は CData
プロパティを更新します。
出力引数
すべて折りたたむ
h
— Scatter
オブジェクト
Scatter
オブジェクト
Scatter
オブジェクト。この一意の識別子を使って、Scatter
オブジェクトの作成後にそれらのプロパティをクエリしたり変更したりできます。
拡張機能
GPU 配列
Parallel Computing Toolbox™ を使用してグラフィックス処理装置 (GPU) 上で実行することにより、コードを高速化します。
使用上の注意事項および制限事項:
この関数は GPU 配列を受け入れますが、GPU 上では実行されません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
分散配列
Parallel Computing Toolbox™ を使用して、クラスターの結合メモリ上で大きなアレイを分割します。
使用上の注意事項および制限事項:
この関数は分散配列に対して演算を行いますが、クライアントの MATLAB で実行されます。
詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2006a より前に導入
すべて展開する
R2022b: table で作成したプロットが軸ラベルと凡例ラベルに特殊文字を保持
関数 scatter3
に 1 つの table と 1 つ以上の変数名を渡した場合に、table 変数名に含めた特殊文字 (アンダースコアなど) が軸ラベルと凡例ラベルに表示されるようになりました。以前は、特殊文字は TeX または LaTeX の文字として解釈されていました。
たとえば、Sample_Number
という名前の変数を含む table を関数 scatter3
に渡すと、軸ラベルと凡例ラベルにアンダースコアが表示されます。R2022a 以前のリリースでは、アンダースコアは下付き文字として解釈されます。
リリース | table 変数 "Sample_Number" のラベル |
---|---|
R2022b | |
R2022a |
軸ラベルと凡例ラベルを TeX または LaTeX の書式設定で表示するには、ラベルを手動で指定します。たとえば、プロット後に、目的のラベル文字列を指定して関数 xlabel
または関数 legend
を呼び出します。
xlabel("Sample_Number")legend(["Sample_Number" "Another_Legend_Label"])
R2022a: 行列を使用して複数のデータ セットを同時にプロット
関数 scatter3
で、座標のベクトルと行列の組み合わせが受け入れられるようになりました。これにより、プロット コマンド間で関数 hold
を使用しなくても、複数のデータ セットを同時に可視化できます。
R2021b: table を直接 scatter3
に渡す
table を関数 scatter3
に渡し、その後にプロット対象の変数を渡すことで、プロットを作成します。データを table として指定すると、軸ラベルと凡例 (存在する場合) に table 変数名を使用して自動的にラベルが付けられます。
参考
関数
- scatter | plot3 | bubblechart3 | swarmchart3
プロパティ
- Scatter のプロパティ
トピック
- 日付と時刻のプロット
- categorical データのプロット
- table をサポートするプロット
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- Deutsch
- English
- Français
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本 (日本語)
- 한국 (한국어)
Contact your local office