可視化手法 | ![]() ![]() |
MATLABには、北米上空の大気の流れを表わす wind
というベクトルデータセットが含まれます。この例題は、複数の手法を組み合わせて利用します。
1. 座標の範囲の決定
データをロードし、スライス平面とコンタープロットを配置するための最小値と最大値を決定します(load
, min
, max
)。
load wind xmin = min(x(:)); xmax = max(x(:)); ymax = max(y(:)); zmin = min(z(:));
2. 視覚内容に対してスライス平面を付加
ベクトル場の大きさを計算し(これは風速を表わします)、slice
コマンドに対するスカラデータを生成します。x軸について xmin
,
100
, xmax
、およびy軸について ymax
、z軸について
zmin
であるスライス平面を作成します。内挿を行う面のカラーリングを指定し、スライスのカラーリングが風速を表わし、エッジを描画しないようにします(sqrt
, slice
,
FaceColor
, EdgeColor
)。
wind_speed = sqrt(u.^2 + v.^2 + w.^2); hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin); set(hsurfaces,'FaceColor','interp','EdgeColor','none')
3. スライス平面にコンターラインを付加
スライス平面にライトグレイのコンターラインを描画してカラーマッピングの量をわかり易くします(contourslice
, EdgeColor
, LineWidth
)。
hcont = ... contourslice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin); set(hcont,'EdgeColor',[.7,.7,.7],'LineWidth',.5)
4. ストリームラインに対する開始位置の定義
この例では、すべてのストリームラインは、x軸の値80から開始し、y方向の範囲が20から50で、z方向の範囲が0から15です。ストリームラインのハンドルを保存し、ラインの幅とカラーを設定します(meshgrid
, streamline
,
LineWidth
, Color
)。
[sx,sy,sz] = meshgrid(80,20:10:50,0:5:15); hlines = streamline(x,y,z,u,v,w,sx,sy,sz); set(hlines,'LineWidth',2,'Color','r')
5. ビューの定義
ビューを指定し、グラフを読み易くするために、z軸を引き伸ばします(view
, daspect
,
axis
)。
view(3) daspect([2,2,1]) axis tight
コーンを使ってプロットされた同じデータの例は、coneplot
を参照してください。
![]() |
物体データの小領域へのアクセス | ストリームリボンを使ったCurlの表示 | ![]() |