Невозможно добавить точки широты и долготы на карту фолиума

Я использую фолиум для создания карты и отображения точек широты и долготы в кадре данных. Это мой код:

import pandas as pd
import folium


lats =[]
lons =[]
texts=[]
for each in df1[0:len(df1)].iterrows():
     lat = each [1]['pickup_lat']
     lats.append(lat)
     lon = each [1]['pickup_lon']
     lons.append(lon)
     text= each[1]['vehicle_type']
     texts.append(text)
locations = list(zip(lats,lons))

map = folium.Map(location =[df1['pickup_lat'].mean(),df1['pickup_lon'].mean()],zoom_start =13)
folium.CircleMarker(location=locations ,radius=5,popup=texts).add_to(map)

Вот такая ошибка:

AttributeError                            Traceback (most recent call last)
<ipython-input-226-02aa653c3cd6> in <module>()
     16 
     17 map = folium.Map(location =[df1['pickup_lat'].mean(),df1['pickup_lon'].mean()],zoom_start =13)
---> 18 folium.CircleMarker(location=locations ,radius=5,popup=texts).add_to(map)

C:\Users\Harikrishna\Anaconda3\lib\site-packages\folium\features.py in __init__(self, location, radius, color, weight, fill_color, fill_opacity, popup)
    765                  weight=2, fill_color='black', fill_opacity=0.6,
    766                  popup=None):
--> 767         super(CircleMarker, self).__init__(location, popup=popup)
    768         self._name = 'CircleMarker'
    769         self.radius = radius

C:\Users\Harikrishna\Anaconda3\lib\site-packages\folium\map.py in __init__(self, location, popup, icon)
    612             self.add_child(Popup(popup))
    613         elif popup is not None:
--> 614             self.add_child(popup)
    615 
    616         self._template = Template(u"""

C:\Users\Harikrishna\Anaconda3\lib\site-packages\branca\element.py in add_child(self, child, name, index)
     94         """Add a child."""
     95         if name is None:
---> 96             name = child.get_name()
     97         if index is None:
     98             self._children[name] = child

AttributeError: 'list' object has no attribute 'get_name'

Но я могу увидеть карту, если просто просматриваю карту. Просто я не могу построить точки широты и долготы в этом.


person Harikrishna    schedule 09.06.2017    source источник


Ответы (1)


Вы пытались использовать цикл для добавления одного маркера за раз? В документации фолиума они не упоминали, что вы можете сразу добавить список маркеров.

person Bubble Bubble Bubble Gut    schedule 09.06.2017
comment
для каждого в df1[0:len(df1)].iterrows(): folium.CircleMarker(location=[каждый [1]['широта'], каждый [1]['длинный']], радиус=0,8, цвет ='#3186cc', fill_color='#3186cc').add_to(карта) - person Harikrishna; 09.06.2017