前提・実現したいこと
ある1市町村内における地域ごとの平均地価を、地図上に表現したい。
発生している問題・エラーメッセージ
以下ソースコードでは、平均地価情報がプロットされている特定の1市町村内だけでなく、千葉県全域の地図が表示されてしまいます。(その中で、特定の1市町村だけ大量にプロットされており、その結果、該当市町村だけ見た目が真っ青になっている状況) 平均地価情報がプロットされた1市町村だけがズームされて表示して欲しいのですが、その方法が分かりません。 ご教示よろしくお願いいたします。
python
1import cartopy.crs as ccrs 2import cartopy.io.shapereader asimport matplotlib.pyplot as plt 3 4fname = 'A27-16_12.shp' #千葉県の行政区域付きマップ 5shapes = list(shpreader.Reader(fname).geometries()) 6 7ax = plt.axes(projection=ccrs.PlateCarree()) 8ax.add_geometries(shapes, ccrs.PlateCarree(), edgecolor='black', facecolor='gray', alpha=0.5) 9ax.set_extent([139.5, 141, 35, 36], ccrs.PlateCarree()) 10 11plt.scatter(data_with_keido['KEIDO'], data_with_keido['IDO'], c=data_with_keido['AVG_CHIKA'], cmap=plt.get_cmap('jet') , alpha=0.7) #data_with_keidoには特定の1市町村の経度情報、緯度情報、平均地価情報が複数入っています 12 13plt.show() 14
試したこと
・ズームしたい区域だけのshapeファイルを調達する
「国土数値情報ダウンロードサービス」に当該ファイルが無く断念
・ax.set_extent([139.5, 141, 35, 36], ccrs.PlateCarree())の数字を調整
縮尺は変更されず、添付ファイルの縮尺のままトリミングされてしまう
補足情報(FW/ツールのバージョンなど)
ズームする対象の市町村はソースコードのdata_with_keidoに格納されているデータから動的に導出する必要はありません(今回は千葉市のデータが入っているので、あらかじめ千葉市にズームするようにソースコードを事前調整すればOK)
あなたの回答
tips
プレビュー