65891


GoogleColaboratoryにてfoliumを使用し、地図上にマッピングしたいと考えています。  
以下の記事を参照しました。

[Python pandas + folium で Leaflet
をもっと使いたい](http://sinhrks.hatenablog.com/entry/2015/12/26/231000)

[![画像の説明をここに入力](https://i.stack.imgur.com/0nEOD.png)](https://i.stack.imgur.com/0nEOD.png)

このようなデータを作成、使用しました。

[code]

    import folium
    m = folium.Map(location=[35.861651,139.645435], zoom_start=4.0)
    folium.Marker(location=[df_inf.緯度.iloc[0], df_inf.経度.iloc[0]],).add_to(m)
    m
    
[/code]

そして、このようにコードしましたが、どうしても以下の様なエラーが表示されます。

[code]

    RecursionError: maximum recursion depth exceeded in comparison
    
[/code]

本当は以下の様にしてマッピングを行いたいです。

[code]

    for i, row in df_kansen.iterrows():
        m.circle_marker([row['緯度'], row['経度']], radius=(row['p']),
                        popup=row['city'], line_color='#DF5464', fill_color='#EDA098', fill_opacity=0.5)
    inline_map(m)
    
[/code]

どのようにすれば上手く実行されるのでしょうか？  
ご教授願います。


CC BY-SA 4.0
2020-04-19T11:53:37.040
65760
2020-04-25T00:57:38.707
2020-04-19T12:27:47.820
3060
39664
question
python pandas
foliumにて地図にマッピングしようとすると最大再帰処理回数を超えてしまう。


参照記事のfoliumの版数が`0.1.6`で現在の最新が`0.10.1`です。  
[Folium 0.10.1 documentation](https://python-visualization.github.io/folium/)

Google
Colaboratoryでサポートしている版数が何かは知りませんが、どこかの記事で版数によってAPIがどんどん変わっているというのを見かけました。  
ここですね。  
[Folium: Python
で地図可視化](https://takaishikawa42.hatenablog.com/entry/2019/01/11/234716)

> ただ、日本語版チュートリアルが少なく、またバージョンが 0.1 とか 0.2
> の頃と現在とではマップにピンを置く関数名や使い方が大きく異なっています。余談だと、2017年時点では version0.5
> だったのが、2018年に入ってから version0.6 となり、2018年11月に見たら version0.7 になっていました。

`folium.Marker(location=[df_inf.緯度.iloc[0],
df_inf.経度.iloc[0]],).add_to(m)`という書き方は最近の仕様だと思われます。

その下の`m.circle_marker(...)`という書き方で動作しているのなら、参照記事に書かれていた`m.simple_marker(...)`に変えれば良いのでは？  
参照記事の以下の部分です。

>
[code]

>     m = folium.Map(location=[55, -108], zoom_start=3.0)
>     for i, row in df.iterrows():
>         m.simple_marker([row['lat'], row['lon']], popup=row['Name'])
>     inline_map(m)
>  
[/code]

* * *

Google Colaboratoryではどうなのかは判りませんが、ローカルな素のPythonの最新環境では、以下の記事を参考に出来ます。  
Windows10 1909, 64bit Python 3.8.2, pandas 1.0.3, folium 0.10.1 です。  
(記事では発生しているエラーは違いますが)  
[AttributeError: 'Map' object has no attribute
'circle_marker'](https://stackoverflow.com/q/47615037/9014308)  
質問：

>
[code]

>     # add markers
>     for geo in geos:
>       tweet_map.circle_marker(location=geo, radius=250)
>  
>     tweet_map.create
>  
[/code]

回答：

>
[code]

>     for geo in geos:
>       #tweet_map.CircleMarker(location=geo, radius=250)
>       folium.CircleMarker(location=geo, radius=250).add_to(tweet_map)
>     tweet_map.save('map.html')
>  
[/code]

上記を応用して質問記事のコードは以下のようになります。

[code]

    import pandas as pd
    import folium
    
    df_inf = pd.read_csv('saitama_covid.csv', header=0)
    m = folium.Map(location=[35.861651,139.645435], zoom_start=10.0)
    
    for i, row in df_inf.iterrows():
        folium.Marker([row['緯度'], row['経度']]).add_to(m)
    m.save('saitama_marker.html')
    
    for i, row in df_inf.iterrows():
        folium.CircleMarker([row['緯度'], row['経度']], radius=(row['p']),
            popup=row['city'], line_color='#DF5464', fill_color='#EDA098', fill_opacity=0.5).add_to(m)
    m.save('saitama_covid.html')
    
[/code]

ちなみに昨日(04/22)までの分のデータで作ったcsvファイルは以下になります。

[code]

    city,p,緯度,経度
    さいたま市,105,35.861651,139.645435
    川越市,29,35.925101,139.485793
    熊谷市,12,36.14731,139.388645
    川口市,83,35.807738,139.724171
    行田市,0,36.138949,139.455643
    秩父市,2,35.992055,139.084817
    所沢市,114,35.799672,139.46861
    飯能市,5,35.855731,139.327734
    加須市,4,36.131438,139.601719
    本庄市,2,36.243568,139.190393
    東松山市,0,36.042126,139.399959
    春日部市,24,35.975198,139.752301
    狭山市,23,35.852942,139.412213
    羽生市,2,36.172626,139.548465
    鴻巣市,0,36.065758,139.522169
    深谷市,7,36.197444,139.281464
    上尾市,5,35.977381,139.593206
    草加市,25,35.825355,139.805402
    越谷市,34,35.891084,139.790938
    蕨市,1,35.825634,139.679708
    戸田市,20,35.817616,139.677892
    入間市,27,35.835766,139.391058
    朝霞市,9,35.797252,139.593916
    志木市,13,35.83675,139.580319
    和光市,17,35.781208,139.605793
    新座市,13,35.793511,139.565369
    桶川市,2,36.005779,139.542531
    久喜市,3,36.061995,139.666838
    北本市,0,36.026768,139.530211
    八潮市,12,35.822536,139.839175
    富士見市,8,35.856759,139.549074
    三郷市,8,35.830149,139.872275
    蓮田市,4,35.994307,139.662106
    坂戸市,0,35.95717,139.402905
    幸手市,2,36.078072,139.725861
    鶴ヶ島市,8,35.934515,139.393098
    日高市,2,35.907796,139.339026
    吉川市,0,35.891152,139.841375
    ふじみ野市,11,35.879538,139.519764
    白岡市,4,36.019026,139.676925
    伊奈町,3,36.000112,139.624185
    三芳町,4,35.828367,139.526432
    毛呂山町,3,35.941501,139.316067
    越生町,0,35.964478,139.294199
    滑川町,0,36.065987,139.360917
    嵐山町,0,36.056655,139.320542
    小川町,0,36.056697,139.261845
    川島町,2,35.982014,139.481518
    吉見町,2,36.039853,139.453728
    鳩山町,0,35.981466,139.334101
    ときがわ町,3,36.00862,139.296844
    横瀬町,0,35.987284,139.100046
    皆野町,0,36.07084,139.098754
    長瀞町,0,36.114803,139.109717
    小鹿野町,0,36.017129,139.008574
    東秩父村,0,36.058153,139.194607
    美里町,1,36.177104,139.18141
    神川町,1,36.213876,139.101776
    上里町,1,36.251607,139.144826
    寄居町,0,36.118348,139.193012
    宮代町,2,36.022682,139.722885
    杉戸町,2,36.025765,139.736709
    松伏町,0,35.925774,139.815178
    
[/code]


CC BY-SA 4.0
2020-04-23T11:03:45.133
65891
2020-04-25T00:57:38.707
2020-04-25T00:57:38.707
26370
26370
65760
answer