CartoDB[第3回]警戒情報を表示するレイヤーを追加
「第2回」で作成した、水位情報の地図に、新しいレイヤーを追加してみます。
追加するレイヤーには各観測点毎の警戒水位情報を元に、警戒水位に達しているかの指標を表示するようにします。
実施内容
- 作成したdatasetにおいて「waterlevel_10min」の項目が各観測点の実際の水位情報(cm)を表しています。
- また、各水位観測所の位置データにおいて、それぞれの警戒水位の指標が rank_1 ~ rank_4で設定されています。
- この警戒水位の指標を元に各観測所毎の警戒状態を可視化します。
- rank_4が一番危険な状態を表しています。
雨量観測所、水位観測所の位置情報及びデータの解説 > データフォーマットについて 参照
項目名 項目内容 備考 具体例 rank_1 水防団待機水位 単位(cm) 70 rank_2 はん濫注意水位 単位(cm) 170 rank_3 避難判断水位 単位(cm) 180 rank_4 はん濫危険水位 単位(cm) 190
[STEP9]警戒レベルを管理するための新しいレイヤーを作成する。
MapViewにおいて[Add Layer]をクリックします。
Dateset選択画面が表示されるので、前回作ったデータセット[shizuoka waterlevel observationpoint merge]を選択します。
[2]と表示された新しいレイヤーが作成されます。わからなくならないようにレイヤーの名称を設定します。
レイヤーの名称部分をダブルクリックすると変更できるので、レイヤーの名称を「警戒レベル」に変更します。
右側のSQLメニューから、以下のSQLをコピペして指定して[Apply query]を押してデータセットを作成します。
SELECT cartodb_id, the_geom_webmercator , obs_time, waterlevel_10min, CASE WHEN waterlevel_10min >= rank_4 AND rank_4 != -999999999 then '4_はん濫危険水位' WHEN waterlevel_10min >= rank_3 AND rank_3 != -999999999 then '3_避難判断水位' WHEN waterlevel_10min >= rank_2 AND rank_2 != -999999999 then '2_はん濫注意水位' WHEN waterlevel_10min >= rank_1 AND rank_1 != -999999999 then '1_水防団待機水位' ELSE '0_異常なし' END as status, kasen_name, point_id, pointname FROM shizuoka_waterlevel_observationpoint_merge
[Data View]を見るとこんな感じで、statusという項目に注意状態が表示されます。ただ、サンプルデータが正常時の水位なので、全部異常は発生していません。
[STEP10]テストのために警戒水位の設定を調整してみる。
そのため、サンプルデータとしてわかりやすくするため、警戒レベルの設定を調整しています。 あくまで仮の設定ですが警戒水位を全て200cm下げてみます。
設定するSQLを以下に変更して再度[Apply Query]を押してください。 ※公開する場合などは混乱しないように必ず元のSQLに戻しましょう。
SELECT cartodb_id, the_geom_webmercator, obs_time, waterlevel_10min, CASE WHEN waterlevel_10min >= rank_4 - 200 AND rank_4 != -999999999 then '4_はん濫危険水位' WHEN waterlevel_10min >= rank_3 - 200 AND rank_3 != -999999999 then '3_避難判断水位' WHEN waterlevel_10min >= rank_2 - 200 AND rank_2 != -999999999 then '2_はん濫注意水位' WHEN waterlevel_10min >= rank_1 - 200 AND rank_1 != -999999999 then '1_水防団待機水位' ELSE '0_異常なし' END as status, kasen_name, point_id, pointname FROM shizuoka_waterlevel_observationpoint_merge
[STEP11]レイヤーの見た目を調整する
- 右側メニューのwizardを開いて
- maptype = category
- column = status
に設定すると地点ごとに、警戒レベルで色分けができます。
- その後、地図の右側のOptionsメニューを開いて
- Layer Selector = ON
- Legends = ON と設定すると、地図上でレイヤーの選択が可能となります。