ジオメトリとシェープファイル

Pythonで可視化する地理空間データ

Mary van Valkenburg

Data Science Program Manager, Nashville Software School

シェープファイル

シェープファイルはジオメトリと呼ばれる特殊なデータを格納します。

ポイント、ライン、ポリゴン

Pythonで可視化する地理空間データ

シェープファイルの構成要素

ファイルはまとめて保管してください!
$ ls my_map_files/

my_map.dbf
my_map.shp
my_map.shx
  • my_map.shp(ジオメトリを格納)
  • my_map.dbf(各ジオメトリの属性を保持)
  • my_map.shx(属性とジオメトリを紐付け)
Pythonで可視化する地理空間データ

geopandas

以下のコードはシェープファイルをGeoDataFrameに読み込み、先頭行を表示します。

import geopandas as gpd

geo_df = gpd.read_file('My_Map_Files/my_map.shp')
geo_df.head()
Pythonで可視化する地理空間データ

ゴミ箱とリサイクルボックス

Pythonで可視化する地理空間データ

ジオメトリの表示

service_district.loc[0, 'geometry']

サービス地区のポリゴン表示

Pythonで可視化する地理空間データ

ジオメトリの出力

print(service_district.loc[0, 'geometry'])
POLYGON ((-86.68680500011935 36.28670500013504, 
-86.68706099969657 36.28550299967364, -86.68709498823965 36.28511683351293,
-86.68712691935902 36.28475404474551, -86.6871549990252 36.28443499969863,
-86.68715025108719 36.28438104319917, -86.68708600011215 36.2836510002216,
-86.6870599998375 36.28335400009232, -86.68683200030846 36.28073200026927,
-86.68678671280243 36.2804916722591, -86.68668199966068 36.27993600019391,
-86.686543000303 36.27920000021985, -86.68641799989246 36.27853199938513,
-86.68600744248923 36.27759483150202, -86.68579942352289 36.27711998225582,
-86.68482299948184 36.2748910007355, -86.68476799897849 36.27478700083996,
-86.68372700043393 36.27281799971492, -86.6832880000829 36.27208000018629,
-86.68313199902317 36.27181700012145, -86.68278700024624 36.27108100075766,
-86.68257822861736 36.27077209799597, -86.68177585777893 36.2694062861527....

Pythonで可視化する地理空間データ

GeoDataFrameのプロット

school_districts.plot()
plt.show()
school_districts.plot(column = 
                     'district', 
                     legend = True)
plt.show()

学校区の単色プロット

学校区を色分けして表示したプロット

Pythonで可視化する地理空間データ

練習しましょう!

Pythonで可視化する地理空間データ

Preparing Video For Download...