メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

scatter3

散布図での点群の表示

説明

scatter3(pcloud) は、入力 pcloud 点群を現在の座標軸ハンドルの 3 次元散布図としてプロットします。データが各点につき RGB 情報を含む場合、散布図は適宜色付けされます。

scatter3(pcloud,Name,Value) は、1 つ以上の Name,Value 引数のペアによって指定された追加オプションを提供します。Name は一重引用符 (('')) で囲まなければなりません。名前と値のペアの引数を複数、任意の順序で、Name1,Value1,...,NameN,ValueN のように指定できます。

h = scatter3(___) は、これまでの構文のいずれかの引数を使用して scatter series オブジェクトを返します。scatter series を作成した後でそれらのプロパティを変更する場合に h を使用します。

ROS 点群メッセージをプロットする場合、MATLAB® は軸の向きに対する ROS の標準の規則に従います。この規則は、正の x は前方向、正の y は左方向、正の z は上方向を示しています。カメラを使用する場合、2 番目の座標系は軸の向きを変更する "_optical" 接尾辞を付けて定義されます。この場合、正の z は前方向、正の x は右方向、正の y は下方向になります。MATLAB は "_optical" 接尾辞を探し、散布図の軸の向きを適宜調整します。詳細については、ROS Wiki の Axis Orientation を参照してください。

すべて折りたたむ

ROS ネットワークに接続します。点群メッセージのトピックをサブスクライブします。

rosinit('192.168.17.129')
Initializing global node /matlab_global_node_65972 with NodeURI http://192.168.17.1:51971/
sub = rossubscriber('/camera/depth/points');
pause(1)

最新の点群メッセージを取得します。点群をプロットします。

pcloud = sub.LatestMessage;
scatter3(pcloud)

すべての点を黒い点としてプロットします。

scatter3(sub.LatestMessage,'MarkerEdgeColor',[0 0 0]);

入力引数

すべて折りたたむ

点群。'sensor_msgs/PointCloud2' ROS メッセージの PointCloud2 オブジェクト ハンドルとして指定します。

名前と値の引数

すべて折りたたむ

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。

例: 'MarkerEdgeColor',[1 0 0]

マーカーの輪郭の色。"flat"、RGB 3 成分、16 進数カラー コード、色名、または省略名として指定します。既定値の "flat" を指定すると、CData プロパティからの色が使用されます。

カスタム色を使用する場合は、RGB 3 成分または 16 進数カラー コードを指定します。

  • RGB 3 成分は、色の赤、緑、青成分の強度値を指定する 3 要素の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。

  • 16 進数カラー コードは、ハッシュ記号 (#) で始まり、3 桁または 6 桁の 0 から F までの範囲の 16 進数が続く string スカラーまたは文字ベクトルです。これらの値では大文字小文字は区別されません。したがって、カラー コード "#FF8800""#ff8800""#F80"、および "#f80" は等価です。

あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、名前の付いた色オプション、等価の RGB 3 成分、および 16 進数カラー コードを示します。

色名省略名RGB 3 成分16 進数カラー コード外観
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"該当なし該当なし該当なし色なし

次の表に、プロット用のライト テーマとダーク テーマの既定のカラー パレットを示します。

パレットパレットの色

"gem" — ライト テーマの既定の設定

R2025a より前: ほとんどのプロットでは、既定でこれらの色が使用されます。

Sample of the "gem" color palette

"glow" — ダーク テーマの既定の設定

Sample of the "glow" color palette

orderedcolors 関数と rgb2hex 関数を使用して、これらのパレットの RGB 3 成分と 16 進数カラー コードを取得できます。たとえば、"gem" パレットの RGB 3 成分を取得し、それを 16 進数カラー コードに変換します。

RGB = orderedcolors("gem");
H = rgb2hex(RGB);

R2023b より前: RGB = get(groot,"FactoryAxesColorOrder") を使用して RGB 3 成分を取得します。

R2024a より前: H = compose("#%02X%02X%02X",round(RGB*255)) を使用して 16 進数カラー コードを取得します。

例: [0.5 0.5 0.5]

例: "blue"

例: "#D2F9A7"

座標軸の親。点群の描画に使用する、'Parent' と axes オブジェクトからなるコンマ区切りのペアとして指定します。既定では、点群はアクティブな座標軸にプロットされます。

出力

すべて折りたたむ

scatter series オブジェクト。スカラーとして返されます。この値は、scatter オブジェクトを作成した後でそのプロパティのクエリと変更に使用できる一意の識別子です。

バージョン履歴

R2019b で導入