はじめに
- Agoop社のポイント型流動人口データ(GPSログデータ)をQGISのTemporalControllerでアニメーション化してみました。
- QGISのTemporalControllerは、v3.14以降に新たに追加された、時系列データの可視化やアニメーションを行うことができる基本機能です。
- 今回は下記のyoutubeの動画及びCommunity Health Mapsのブログ記事を参考にさせていただきました。
- youtubeの動画
How to create COVID-19 animation with QGIS Temporal Controller - Community Health Mapsのブログ記事(英文)
CREATING A COVID-19 TEMPORAL ANIMATION WITH QGIS - 今回はQGISのTemporalControllerで静止画(png形式)を作成・出力し、別途、フリーソフトのScreenToGifにて静止画を結合して、gif形式の動画を作成しています。
アウトプットイメージ
QGISのTemporalControllerで、2019年4月26日(金)のAgoopポイント型流動人口データ(交通手段:電車)を動画にしてみた😀居住地別(神奈川、埼玉、千葉)で色分け😀
— shi_works☁ (@syanseto) April 30, 2021
時差出勤は大事やね🧐#QGIS #TemporalController
出典)東京公共交通オープンデータチャレンジ(Agoopポイント型流動人口データ) pic.twitter.com/zox0dxAx0i
前提条件
- 本記事では、QGISのv3.16.5を用いて実施しています。
- 動画を作成するために、フリーソフトのScreenToGifのインストールが必要です。
- QGISの入力データには、Agoop社のポイント型流動人口データ(GPSログデータ)を用いています。
- Agoop社のポイント型流動人口データ(GPSログデータ)は、以下のとおり加工しています。
- QGISでアニメーション化を行うためには、time(時刻)、latitude(緯度)、longitude(経度)は必須の項目になります。
- また、今回は、居住地(都道府県)ごとに色分けをするために、home_prefcode(推定居住地都道府県コード)を用いて色分けをしています。
時系列コントローラを設定する
- レイヤプロパティーから時系列コントローラを以下のとおり設定します。
- 「時系列」のチェックボックスをチェックする。
- 「設定」の項目には「Dtat/Time型の単一フィールド」を設定する。
- フィールドには「time」を設定する。
- 継続時間には「5分(minutes)」を設定する(継続時間に設定する時間は任意です)。
時刻表示を設定する
- レイヤ>レイヤ作成>新規GeoPackgeレイヤを作成する。
- データベースは「time」とし、ジオメトリタイプは「点(Point)」とする。
- 作成したレイヤを編集可能な状態にして、「点地物を追加する」で「点(Point)」を任意の位置に追加する。
- 「点(Point)」のレイヤプロパティーを開き、ラベル(時刻)を設定する。
- ラベルは単一定義(single)として、式ダイアログを開き、以下のとおり入力する。
※こちらの動画でもやり方の説明があります。
※5:56~6:51付近
静止画を出力する
- 時系列コントローラを開きます。
- 「アニメーションを保存する」で静止画(png形式)を任意のフォルダに保存する。
- ※静止画の出力には時間がかかります。
※こちらの動画でもやり方の説明があります。
※6:52~7:27付近
gif形式の動画を作成する
- ScreenToGifを起動します。
- 作成した静止画を読み込みます。
- 「名前を付けて保存」で任意のフォルダにgif形式の動画を出力する。
※こちらの動画でもやり方の説明があります。
※7:28~8:38付近
参考文献
-
youtubeの動画
How to create COVID-19 animation with QGIS Temporal Controller
https://www.youtube.com/watch?v=E6mDNhDxjLw -
Community Health Mapsのブログ記事(英文)
CREATING A COVID-19 TEMPORAL ANIMATION WITH QGIS
https://www.communityhealthmaps.org/blog/creating-a-covid-animation-through-time-with-qgis