インターネット接続のある世帯の比例シンボルマップ
生データのカウント変数を地図化するには、データ値に比例した大きさのマーカーを置く比例シンボルマップが有効です。この演習では、各州の重心(centroid)を求め、州のベースマップを作成し、各重心にインターネット接続のある世帯数に応じてサイズを変えた円を配置します。
各マーカーの「面積」がデータ値に比例する必要があります。マーカーサイズは直径として指定するため、列の値の平方根を取らなければなりません。マーカーが大きすぎたり小さすぎたり見えることがあります。この演習では、見た目を整える判断としてマーカーサイズを 5 で割ります。
geopandas は通常のエイリアスでインポート済みで、numpy から sqrt 関数もインポートされています。
geo_state GeoDataFrame は読み込み済みです。
この演習はコースの一部です
Pythonで学ぶ米国センサスデータ分析
演習の手順
geo_state_ptのcentroid属性を呼び出し、その結果をgeometry列に代入しますgeo_stateのplotメソッドを呼び出して州境のベースマップを作成し、colorを"tan"、edgecolorを"black"に設定します- 変数
ms(markersizeパラメータに渡します)を、geo_state_pt["internet"]列の値の平方根を5で割ったものに設定します
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create point GeoDataFrame at centroid of states
geo_state_pt = geo_state.copy()
geo_state_pt["geometry"] = ____
# Set basemap and create variable for markersize
basemap = ____
ms = ____
# Plot proportional symbols on top of basemap
geo_state_pt.plot(ax = basemap, markersize = ms, color = "lightgray", edgecolor = "darkgray")
plt.show()