2019年8月 九州北部大雨 -降水量プロット-

MAP(地図)WEATHER(天気)

 夏が終わって秋雨前線が南下する頃、またどこかで集中豪雨が起こるだろう、と思っていたが、やっぱり起こった。
 言われているとおり、西日本とりわけ九州で起こりやすい。
 松浦川、六角川、牛津川、江迎川などで氾濫。

 おそらく多くの人がある程度予想できて、予想できたところでどうしようもない、というのが実状ではなかろうか。
 線状降水帯の名を耳にする頃には、既に豪雨の渦中になっていることも多いし、夜中だと避難するのも危険。

 これまで経験したことのないような大雨というフレーズは、九州ではそろそろ使えなくなりそう。

 『頑丈な建物に避難してください』。
 『2階など高い所に避難してください』。
 『崖から離れた部屋に避難してください』。
 次は何だろう。
 『備え付けのゴムボートで避難してください』……か。

 梅雨前線同様、秋雨前線でも前線の南縁で豪雨。
 ほぼその通りの天気図と気象レーダー(いずれも気象庁ホームページから)。

スポンサーリンク

いっぱいプロット

 お盆休みの猛暑・台風の際、日本全国の最高気温、最大瞬間風速をプロットしてみたが、今回は降水量をプロットしてみる。

 前回は計926地点の観測所だったが、雨量計のみ設置されている観測所371地点が加わり、計1297地点。
 アメダス AMeDASの名でお馴染みの観測網。

 まず気象庁のHP(www.data.jma.go.jp/)から地域気象観測所一覧のCSVファイルをダウンロード。
 以下の観測所が重複しているので(厳密には異なるが、観測所番号が同じなので)、1地点扱いとした。
 --- 札幌、帯広、八戸、宮城県江ノ島、小名浜、前橋、東京、八丈島、新潟、軽井沢、諏訪、津、京都、大阪、神戸、奈良、和歌山、岡山、広島、下関、徳島、松山、室戸岬、福岡、雲仙岳、熊本、延岡、油津。
 観測所の緯度・経度は分を60で割って10進数化。

 次に同じく気象庁HPの最新の気象データ CSVダウンロードから取得したデータファイルと(R言語などで)結合。

ame <- read.csv("kisyo_ame_point.csv")
ame2 <- read.csv("kisyo_rain201908281800.csv")
ameame <- merge(ame,ame2,by="no",all=T)
write.csv(ameame,"kisyo_rain201908281800geo.csv")

といった具合。

さらにCSV ⇒ GeoJSON。
kisyo_rain201908281800geo.csv ⇒ kisyo_rain201908281800.geojson

Leafletでプロット

 降水量のデータは1時間から72時間までいろいろあるが、8月28日18:00時点における1時間降水量の最大値と24時間降水量の最大値を利用した。
 24時間降水量は現在値ではなく「今日の(8月28日の)」最大値
 現在値は、前日27日18:00からの24時間降水量。 
 27日18:00より前から(27日0時以降)大雨が降っていれば、そちらの分24時間降水量の最大値に反映される。

 2種類あるので、レイヤーコントロールのオーバーレイ[マップ] overlayを使って表示させてみた。
 ベースマップ(タイルレイヤー)の切り替え + プロット図の切り替え。
 ちょっと重いかも。

$.getJSON("kisyo_rain201908281800.geojson", function(data) {
var gsib = L.tileLayer('https://cyberjapandata.gsi.go.jp/xyz/blank/{z}/{x}/{y}.png',{
attribution: "<a href = 'https://maps.gsi.go.jp/' target = '_blank'>国土地理院</a>"});
var osm = L.tileLayer(
'https://tile.openstreetmap.jp/{z}/{x}/{y}.png',
{attribution: 'Map data © <a href="https://openstreetmap.jp">OpenStreetMap</a>'});
var map = L.map('map',{
center:[35.30, 138.30],
zoom:5,
layers:[gsib]
});
var baseMaps = {
"国土地理院 白地図":gsib,
"OpenStreetMap":osm
};

var r1h = L.geoJson(data, {
	pointToLayer: function (feature, latlng) {
	if (feature.properties.rain1h >= 100) {
	return L.circle(latlng,300, {color: 'red'})
	}
	if ((feature.properties.rain1h >= 50) & (feature.properties.rain1h < 100)) {
	return L.circle(latlng,300, {color: 'orange'})
	}
    ・
    ・
    ・
	else{
	}
	},
	onEachFeature: function (feature, layer) {
	layer.bindPopup(feature.properties.kansokujo + ":" + feature.properties.rain1h + "mm/h");
	}
});
r1h.addTo(map)
var r24h = L.geoJson(data, {
	pointToLayer: function (feature, latlng) {
	if (feature.properties.rain24hmax >= 200) {
	return L.circle(latlng,300, {color: 'red'})
	}
    ・
    ・
    ・
	},
	onEachFeature: function (feature, layer) {
	layer.bindPopup(feature.properties.kansokujo + ":" + feature.properties.rain24hmax + "mm/h");
	}
});
r24h.addTo(map)

var overlay = {
"1時間降水量(最大)":r1h,
"24時間降水量(最大)":r24h
};
L.control.layers(baseMaps,overlay,{position:'topleft'})
.addTo(map);
L.control.scale()
.addTo(map);
});

プロットいっぱい×3 -降水量-   

 ソースコードの分岐処理は省略。
 なかなかうまくいかなかったので、全て

$.getJSON("kisyo_rain201908281800.geojson", function(data) {  });

で括った。

 1時間降水量の最大値は、100[mm]超で赤色、50[mm]超で橙色、10[mm]超で青色、0[mm]超で水色。
 佐賀県佐賀、白石で100[mm]超。

 24時間降水量の最大値は、200[mm]超で赤色、100[mm]超で橙色、50[mm]超で青色、0[mm]超で水色。
  ※ 10月の台風19号の後、400[mm]超を赤色、200[mm]超をマゼンタに変更。
 長崎県平戸で434[mm]。松浦、佐世保、佐賀、白石、鳥栖、伊万里、北山、久留米で300[mm]超。

 東日本では神奈川県箱根が、結構な大雨。

 降水量0[mm]の地点は表示されないはずだが、全国的にプロットされているので、ほとんどどこへ行っても雨の1日。

スポンサーリンク
ふシゼン
タイトルとURLをコピーしました