Python: карта не загружается при загрузке названий объектов - PullRequest
0 голосов
/ 18 октября 2018

Я работаю над интерактивной картой, чтобы построить различные медицинские учреждения по всей стране.В сети я нашел подходящий файл формы / базы данных (вместе с GeoJson и CSV), который можно использовать для этого проекта.

Мне удалось получить места для отображения на карте, но объектимена не появляются.

Согласно печатным полям sf.fields, имена находятся в поле 8, я могу напечатать эти имена как record.record[8], и они появятся в консоли.

Однако, когда я установил всплывающее окно как popup=record.record[8].title(), карта больше не будет загружаться.Он компилируется в консоли и не возвращает ошибок.Что мне здесь не хватает?

Вот что у меня так далеко:

import folium
import pandas
import shapefile
import csv

with open('VA_Facilities.csv', 'r') as data_file:
    csv_data = csv.reader(data_file)

myshp = open('data/va_facilities_1.shp', "rb")
mydbf = open('data/va_facilities_1.dbf', "rb")
sf = shapefile.Reader(shp=myshp, dbf=mydbf)
records = sf.shapeRecords()

# Prints the number of records, type of the shape, and fields for the 
dataset
print (len(records))
print (sf.shapes()[0].shapeType)
print (sf.fields)

# Prints the first three records for verification reasons
for record in records[:3]:
    print (record.record[0], record.shape.points[0], record.record[8])


map=folium.Map(location=[47.1164, -101.2996],zoom_start=4,tiles='CartoDB 
positron')
for record in records:
    lat, lng = (record.shape.points[0][1],record.shape.points[0][0])

    folium.RegularPolygonMarker(
    [lat, lng],
    popup=record.record[8].title(),
    fill_color='#EE1C25',
    number_of_sides=5,
    radius=5
    ).add_to(map)


map.save(outfile='Healthcare_Facilities.html')

Изменение значения record.record[0] на ноль загрузит карту как обычно, но безимена.

1 Ответ

0 голосов
/ 19 октября 2018

Разобрался.В последней версии Folium используется необработанный ввод HTML, поэтому для получения желаемых результатов необходимо добавить parse_html=True в поле popup=.

Спасибо за помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...