[Python] Foliumのコロプレス図(Choropleth)でデータがないと黒くなる箇所を白くする
How to make black colored area in Folium Choropleth white where data is missing; simply set the nan_fill_color
この記事について
現在、Foliumのコロプレス図(Choropleth)を勉強中ですが、ネットに掲載されているものはきちんと動かないものが多く、苦労しています。そんな中、こちらのサイトのものはきちんと動作して、非常に参考になりました。
Pythonでビックマック指数のヒートマップ世界地図を作ってみる
https://techray.hatenablog.com/entry/2019/12/16/200248
しかし、表示される地図で、ビックマック指数がないところ(マクドナルドの店舗がないところ?!)は黒くなり、ちょっと見ずらいです。(厳密にはダークグレーですが、黒として進めます)
AFTER ちょっと、黒を白くしてみました!
こうしてみると、一番、ビッグマックが高いのはスイスであることが分かりやすかと思います。
何を変えたか
元のサイトに掲載されるデータはそちらで見ていただきたいのですが、以下、nan_fill_colorという箇所を1行追加しました。
# 地図に色を塗る
folium.Choropleth(
geo_data=geojson,
name='choropleth',
data=df,# 描画データ
columns=['iso_a3', 'dollar_price'], # ["国コード", "値の列"]
key_on='feature.id',
fill_color='OrRd',# 色指定
fill_opacity=0.7, # 色の透明度
line_opacity=1,#国境線の透明度
nan_fill_color="white", #### ここでdfにない国は白にする!!! #####
legend_name='big mac index dollar_price' #凡例
).add_to(m)
これはFoliumのdocumentationに記載されていましたが、あまり知られていないようです。
https://python-visualization.github.io/folium/modules.html
nan_fill_color (string, default 'black') – Area fill color for nan or missing values. Can pass a hex code, color name.
値のないものはNaN扱いとなり、その色を指定できるようです。
色を指示する他にも透明度を変えることもできるそうです。
その他
こちらのコロプレス図のデータは、けっこう粗かった。日本はこんな感じ。。
結局、境界線をポイントでつないでポリゴンで表現していることが分かりやすい。
Author And Source
この問題について([Python] Foliumのコロプレス図(Choropleth)でデータがないと黒くなる箇所を白くする), 我々は、より多くの情報をここで見つけました https://qiita.com/Kent-747/items/00810e5c6bf98770184d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .