本記事では、過去のハリケーンを可視化する3Dモデルを作成した方法をご紹介します。
2020年7月、ハリケーン・ダグラスはハワイ諸島を通過する際、急速に勢力を拡大しました。アラン・ウォーカー氏はレーダーデータとMapbox GL JSを使い、水深データや周辺諸島の地形データを含むハリケーンの目を覗き込む3Dモデルを作成しました。アニメーションは嵐の軌跡をたどり、現地時間によって空の色が変化します。
このビジュアライゼーションは以下3つのソースから構成されています。
- NEXRAD II レーダーメッセージを Amazon S3 からダウンロードし、アメリカ海洋大気庁のWeather and Climate Toolkit を使用して geojson に変換したもの。
*NEXRAD:アメリカの国立気象局が運用する、159地点に設置された高解像度気象レーダー網のこと
- ハワイ大学マノア校海洋地球科学技術学部の水深と地形データをNetCDFラスターグリッドから等高線に変換したもの。
- IBTrACSの嵐の位置と気象データ(風速や気圧など)を使用して嵐の軌跡を生成したもの。
NEXRADレベルIIデータは、2020年7月27日のハワイ島の4つのレーダー基地を対象に作成されています。これはおよそ5分間の「タイムスライス」で提供され、各「スライス」はレーダーの「スイープ」ごとに切り刻まれます。そのため、4つのレーダー基地を同期させるために、データを結合し、タイムスタンプでつなぎ合わせて、ハリケーンの進路を縫い合わせる必要があります。
NEXRAD IIのデータには可視化するための2つの指標があります。レーダー反射率(dBZ)と海抜高度(メートル)です。反射率をエンコードするためにプリズマカラーを使用し、海抜高度の属性を使ってポリゴンを押し出しました。
![](https://cdn.prod.website-files.com/5f8ddf03fc2e2a37e95f7124/623c180ce98f2dc33820f351_f4nxl1Jo1tFCWrLsUIuGTlOjuue5ka1cbKAiOJ8Kyt1U3Y03l62ATr8j82zoiNzFAkyT7ZtpWJSBV_Q_w2yR9bCSjA_3xv5fQfNDApy23QR825Oqo9zzAz662D1GIEqZP2EA5E2T.png)
水深と地形のデータは、QGIS の SAGA Contour ツールを使って、ラスターから geojson で等高線に変換し、まず線として、次にポリゴンに変換しています。
カラーパレットは、cpt-cityから「ibsco-bath」と「wiki-knutux」の2種類を選択しました。
![](https://cdn.prod.website-files.com/5f8ddf03fc2e2a37e95f7124/614d5f151a34a39139f0b85e_5f4ebe2a908471e16ca4231a_color-spectrum.png)
![](https://cdn.prod.website-files.com/5f8ddf03fc2e2a37e95f7124/614d5f15aa8134350c6937a3_5f4ebe4682e7854e3e6a6143_color-spectrum-warm.png)
GL JSのプレビュー版を使って、3Dの地形に輪郭を描いています。また、Cambridge in Colorの日の出・日の入り計算機を使って、空のカラーパレットを構築し、現地の時間帯に合わせた色のシミュレーションを可能にしています。
![](https://cdn.prod.website-files.com/5f8ddf03fc2e2a37e95f7124/623c180c7c351a04823ebe47_N8TvCLHoPRYO8zZ9-8gdPU5ILVOPr6kenMGrAF_wyGZlITj2ONOfBVSr0zddBl6GTcNhEFI5m6mp6HE2XvCJx8Ke6jQjQS6eW7SIlK9mJhsdQJHzIM4UoxYjx8p5ru3Hsh6RaTEg.png)
カメラがハリケーンの目を追えるようにするため、ハリケーンの軌道位置を使用し、各ポイント間の方位を求め、レーダーデータとタイムスタンプを同期させました。さらに、風速(Knots)と気圧(Millibars)の情報もマップ上に追加しています。
![](https://cdn.prod.website-files.com/5f8ddf03fc2e2a37e95f7124/623c180d94404596188dc9ce_vBPfxiS7-zJz1_IvthNzsl92jBTY-VwpqUuMAqi0qPAf8if3ewn9_Mq9gkda2nuGKP_6oA1vAPuB1YvT5rmACSgbJ8Ux8UZkOP3XFeczxQULrDTCdq1GkjugoHieqTncm7gep_15.png)
*本記事は、Mapbox Inc. Blogの翻訳記事です。