Слой Json на карте фолиума отсутствует, но ошибок нет - PullRequest
0 голосов
/ 24 октября 2019

Я пытаюсь наложить диаграмму Вороного на фолиевую веб-карту. Я создаю карту Вороного с помощью SciPy, а затем преобразую ее в Json. Когда я генерирую карту, там находится вся карта, кроме слоя Вороного, но этот слой действительно отображается в Layer Control.

Я предполагаю, что ошибка где-то в том, как создается файл Json. Я искал, но без ошибки, я не смог ничего найти

Генерация карты фолиума


m = folium.Map(location=[43.521, -120.587],
zoom_start = 7.45,
tiles = 'Mapbox Bright')

tooltip = 'Click for detailed information'

for point in range(len(locationList)):
    folium.Marker(locationList[point], popup = labels[point], icon = folium.Icon(color = colors[point]), parse_html=True).add_to(m)

m.save('index.html')

Генерация диаграммы Вороного

### Create volonai map
points = np.array(df[["geo_long","geo_lat"]].values.tolist()) # Create points, each point is a hospital

vor = Voronoi(points) #Create voronoi object 

voronoi_plot_2d(vor) # Create voronoi plot object

Конвертацияto Json


vorJSON = open('libVor.json', 'w')

point_voronoi_list = []
feature_list = []
for region in range(len(vor.regions)-1):    
    vertex_list = []
    for x in vor.regions[region]:
        if x == -1:
            break;
        else:
            vertex = vor.vertices[x]
            vertex = (vertex[1], vertex[0])
        vertex_list.append(vertex)
    polygon = Polygon([vertex_list])
    feature = Feature(geometry=polygon, properties={})
    feature_list.append(feature)


feature_collection = FeatureCollection(feature_list)
print (feature_collection, file=vorJSON)
vorJSON.close()

Добавление слоя на карту


vorGeoJson = json.load(open('libVor.json'))

folium.GeoJson(vorGeoJson, 
                name = 'geojson'
).add_to(m)

folium.LayerControl().add_to(m)

print(m)

m.save(outfile='libVor.html')

Моя цель - заставить наложенные полигоны на веб-карту

...