numpy arrayの3Dプロット関数

numpy配列上で動作する関数のセットによって, mlab 内に視覚化を作成することができます.

mlabプロット関数は,データの x, y, z 座標を記述するために,多数の配列を入力として受け取ります.データソースの作成,必要に応じたフィルタリング,ビジュアライゼーションモジュールの追加など,本格的なビジュアライゼーションを構築します.これらの関数の振る舞い,そしてその結果作成される視覚化は,pylabと同様に,キーワード引数によって微調整することができます.さらに,これらはすべて,作成されたビジュアル化モジュールを返すため,このモジュールの属性を変更することによってビジュアル化を変更することもできます.

注釈

このセクションでは,異なる関数のみをリストします.各関数の詳細については,ユーザガイドの最後にある MLabリファレンス を参照してください.リンクをたどってください.

0D/1Dデータ

   
points3d points3d()
与えられたデータの位置にグリフ(同点)をプロットします.グリフは x, y, z で記述された同じ形のnumpy配列です.
plot3d plot3d()
与えられたデータの間に線を引いて, x, y, z と同じ長さの1D numpy配列で記述します.

2Dデータ

   
imshow imshow()
2D配列をイメージとして表示します.
surf surf()
2D配列をカーペットプロットとして表示し,配列ポイントの値をz軸で表します.
contour_surf contour_surf()
2D配列を線の輪郭として表示し,配列の点の値に応じて高くします.
mesh mesh()
3つの2D配列, x, y, z で表されるサーフェスをプロットし,データポイントの座標をグリッドとして与えます.
surf(), とは異なり,サーフェスは x, y, z 座標で定義され,特別な方向性はありません.より複雑なサーフェスを作成できます.
barchart barchart()
配列``s`,または明示的な座標配列``x',``y''と``z''を持つ点の集合を棒グラフとしてプロットします.|hack|この関数は非常に汎用性が高く,2Dまたは3D配列だけでなく,点群を使用してバーを配置することもできます.
triangular_mesh triangular_mesh()
三角形メッシュをプロットします.このメッシュは,頂点の x, y, z 座標,および三角形のインデックスの (n, 3) 配列で完全に指定されます.

surf()contour_surf() の鉛直スケール

surf() および contour_surf() は,2Dデータの3D表現として使用できます.既定では,Z軸はX軸およびY軸と同じ単位であることが想定されていますが,2/3のアスペクト比になるように自動スケールすることもできます.この動作は, "warp_scale='auto'" を指定することで制御できます.

データポイントからサーフェスへ.

データ点の位置を知るだけではサーフェスを定義することはできません.接続情報も必要です. surf() および mesh() 関数を使用すると,この接続情報は入力配列の形状から暗黙的に抽出されます.つまり,2D入力配列内の隣接するデータポイントが接続され,データはグリッド上にあります. triangular_mesh() 関数を使用すると,接続性が明示的に指定されます.接続性が定期的でないことはよくありますが,事前にもわかりません.データ点はサーフェス上にあり,暗黙的に定義されたサーフェスをプロットします.( 不規則なデータのサーフェスの例 )に示されているように,`delaunay2d`フィルタは,必要な最近接マッチングと補間を行います.

3Dデータ

   
contour3d contour3d()
3D配列として定義されたボリュームデータの等値面をプロットします.
quiver3d quiver3d()
データポイントのベクトルを表す矢印をプロットします. x, y, z の位置は,ベクトルの u, v, w 成分と同様に,多数の配列によって指定される.
flow flow()
3つの3D配列で記述されたベクトルフィールドに沿って粒子の軌跡をプロットし,グリッド上にe u, v, w 成分を与える.
slice volume_slice()
ボリュームデータをスライスしたインタラクティブなイメージプレーンをプロットします.

構造化データまたは非構造化データ

contour3d(), volume_slice()flow() は順序付けされたデータ(点と点の間を補間することができます)を必要としますが, quiver3d() は任意の点のセットで動作します.必要な構造体の詳細については,関数のドキュメントを参照してください.

注釈

データソースのフィルタとモジュールを組み合わせることで,より高度な視覚化を実現できます. mlab を使用したパイプラインの組み立て および 視覚化の事例 のセクションを参照してください.