GKSによる2次元グラフィックス

矢印によるベクトル場の表示 (例)

ベクトル量の表現としていちばん多く使われるのは、 矢印の向きをベクトルの向きに、長さをベクトルの大きさに対応させる ものでしょう。 ここでは、格子点の位置でx, y成分それぞれの値を与えられたベクトル量を 矢印で表現する例を用意しました。 もちろん、格子点ではなく不規則に分布する観測点でのベクトル量を 表示するプログラムも考えられます。

結果の一例:

プログラムは、つぎのものです。

データは、[等値線: 格子点気候データの表示]でも使った NCAR(アメリカ合衆国の国立大気科学研究センター)が編集した 緯度・経度それぞれ5度間隔の格子点の気候値のうち、風の東西、南北の両成分です。 これは、実測した風ではなく、気圧から求めた地衡風(geostrophic wind)というものなので、 熱帯の風の場は現実とかなりちがいます。 風の情報ではなく、データの表示の例として見てください。

データは、[等値線: 格子点気候データの表示]でも使った climncar.zip [link] としてまとめてあります。 ダウンロードして展開すると、climncar というディレクトリの下にファイルがならびます。

実行するときは、データが datapath.fidapath という文字列で指定された ファイルパス名の下の、climncar というディレクトリにあることを 想定しています。 置く場所を変えたいときは、 datapath.fiを書きかえるなどの方法をとってください。

500 hPaと850 hPaの、12か月それぞれの風のデータがあります。 データファイルの名まえは、次のようにつけられています。

u              東西成分 (v: 南北成分)
 850           気圧レベル(例は850 hPa)
    -07        月 (例は7月)
       .nh     北半球 (.sh: 南半球)
プログラムへの入力としては、まず
続いて、
を入力すると仕事を始めるようにしてあります。

矢印による表示では、 ベクトル量の大きさは、相対的大小関係は読者によく伝わりますが、 あるベクトルが他のベクトルの何倍かを正確に伝えるのはむずかしいです。 ベクトル量の向きは、矢印の長さがある程度長ければ、 図をある程度見なれた人にはわりあい正確に伝わると思います。 (なお、地図上のデータの場合、地図の平面上のベクトルとして読むか、 対応する地球上のベクトルと読むかによって、厳密には意味が違います。)

ベクトル量の与えられた点の位置を、矢の根もと、中央、先のいずれに もってくるかという問題もあります。 図を遠くからあるいは縮小して見る場合には、矢の中央に置いたほうが 錯覚が少なくなると思います。 今回の例文では、根もとに置いてありますが、点の位置を円形のマークで 明示することにしました。

風を表示する場合には、矢印よりも、矢羽根表示がよく使われます。 これは、風のくるもとの方向に直線の線分をのばし、そこから分岐する 線分(羽根)の数をベクトルの大きさに対応させるものです。 (国際式天気図では羽根を片側にだけつけますが、位取りのため太い羽根も 使います。 日本式天気図では羽根の数が多くなると両側につけます。) 一種のディジタル表示であり、 数値が大きくても小さくても数えれば読みとることができますし、 直観的に見ても数量はともかく大小関係の誤解は生じません。

なお、今回の授業では扱いませんが、風の時間変化を見るために、 観測点や格子点の位置に矢印や矢羽根を置いた図を アニメーションにすると、「風向計がまわっている」という印象は 得られますが、空気の流れを直観的に理解することはしにくいです。 この目的には、 技術的にややむずかしくなりますが、空気に流されて動く物体 (あるいは空気塊の一部に色をつけたもの)の位置を各時刻について 計算し、その動きをアニメーションにしたほうがわかりやすいです。


1997-06-25, 2000-04-26, 2005-08-10, 2020-08-17
増田 耕一 (MASUDA Kooiti)
[目次へ]