ごく近い将来確実に起きる首都圏巨大地震に備えよう!

10月9日の早朝と午後の関東地方の地震が気になったので、9月1日〜10月9日の間に首都圏で起きたマグニチュード1.5以上の地震と、日本全国で起きたマグニチュード4.5以上の地震の震源地を地図上にプロットしてみることにした。令和になってから首都圏での自然災害が連発しているので(台風15号と台風19号による被害)、首都圏大地震(首都圏でのM6.5以上の地震)の可能性が非常に高まっているように思えるのは私だけではないはずだ。近い将来に確実に起こる首都圏巨大地震に備えておいた方が良いだろう。その前に、首都圏民は、伊勢湾台風以来60年ぶりとなる超巨大台風(上陸時の勢力がカテゴリー5になると予想されている)に対する備えも万全を期す必要がある。

スポンサーリンク

地震データの準備

先ず、このサイトから拾って来た地震データをロードして中身をチラ見する。

import folium
import pandas as pd

df = pd.read_csv('./git/oct_sep_2019_earthquakes.csv',encoding='utf-8')
df.head()
経度 緯度 深さ マグニチュード 地名
0 2019/9/1 00:00:20.9 30.083611 130.951667 30 1.0 種子島近海
1 2019/9/1 00:00:21.7 37.085556 140.534444 7 0.3 福島県中通り
2 2019/9/1 00:00:42.7 37.785278 140.016667 7 0.2 山形県置賜地方
3 2019/9/1 00:06:53.7 23.983889 122.835278 11 1.9 与那国島近海
4 2019/9/1 00:07:42.7 35.868889 138.118611 11 -0.5 長野県南部
df.tail()
経度 緯度 深さ マグニチュード 地名
19126 2019/10/9 23:46::7.1 40.385000 140.702500 23 0.8 秋田県内陸北部
19127 2019/10/9 23:55:56.6 35.650556 140.818333 12 2.2 千葉県東方沖
19128 2019/10/9 23:56:48.6 30.916667 130.300278 137 1.4 種子島近海
19129 2019/10/9 23:58:14.7 24.900278 123.984444 0 1.0 石垣島近海
19130 2019/10/9 23:59:52.8 24.900000 123.968889 4 1.1 石垣島近海

9月1日〜10月9日の39日間で19131回も地震が発生しているようである。

スポンサーリンク

foliumで震源地を地図上にプロット

首都圏で起きたマグニチュード1.5以上の地震と、日本全国で起きたマグニチュード4.5以上の地震だけを抽出する。

df2 = df[(df['マグニチュード']>=1.5) & (df['地名'].str.contains("東京|区|埼玉|神奈川|山梨|千葉|栃木|茨城|群馬|静岡"))  | (df['マグニチュード']>=4.5)]
m = folium.Map(location=[35.658099,139.741357],tiles="OpenStreetMap",zoom_start=5)
for i in range(0,len(df2)):
    if df2.iloc[i]['マグニチュード']>=1.5 and df2.iloc[i]['マグニチュード']<2.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='blue',fill_color='blue',).add_to(m)                      
    if df2.iloc[i]['マグニチュード']>=2.0 and df2.iloc[i]['マグニチュード']<2.5:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.9*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='red',fill_color='red',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=2.5 and df2.iloc[i]['マグニチュード']<3.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.8*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='green',fill_color='green',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=3.0 and df2.iloc[i]['マグニチュード']<3.5:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.7*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='cyan',fill_color='cyan',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=3.5 and df2.iloc[i]['マグニチュード']<4.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.6*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='magenta',fill_color='magenta',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=4.0 and df2.iloc[i]['マグニチュード']<4.5:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.5*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='purple',fill_color='purple',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=4.5 and df2.iloc[i]['マグニチュード']<5.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.4*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='darkyellow',fill_color='darkyellow',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=5.0 and df2.iloc[i]['マグニチュード']<5.5:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.3*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='violet',fill_color='violet',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=5.5 and df2.iloc[i]['マグニチュード']<6.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.2*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='skyblue',fill_color='skyblue',).add_to(m)
    if df2.iloc[i]['マグニチュード']>=6.0:
        folium.CircleMarker([df2.iloc[i]['経度'],df2.iloc[i]['緯度']],
        radius=3.1*df2.iloc[i]['マグニチュード'],
        popup=folium.Popup('<div style="font-size: 18pt; color : black">'
        +"発生日:"+df2.iloc[i]['日']+"<br>"+"発生時刻:"+df2.iloc[i]['時']+
        "<br>"+"震源地:"+df2.iloc[i]['地名']+"<br>"+"マグニチュード:"+
        df2.iloc[i]['マグニチュード'].astype(str)+"<br>"+"震源の深さ:"+
        df2.iloc[i]['深さ'].astype(str)+"km"+'</div>',max_width=330,min_width=330,
        parse_html=False),color='salmonpink',fill_color='salmonpink',).add_to(m)
m

10月9日の2地震は、印西市と西荻窪で発生したようである。9月以降は、マグニチュード6を超える地震は全国的に起きていないようなので、調べてみると、8月29日に青森県東方沖でM6.1が発生して以降は起きていない。今年に入ってから、これだけ長い間M6以上の地震が発生しなかったことはないので、今月中にM6以上の地震が起きる可能性が高まっているとも言える。もしくは、今月中に起きなければ、来月以降にM7クラスの地震が起きる可能性がある。地図を眺めていると、千葉県北西部か周辺の東京湾で起きる可能性が一番高いように思えてくる。

スポンサーリンク
スポンサーリンク