Как создать карту хороплета с помощью боке, если границы региона не известны - PullRequest
0 голосов
/ 29 апреля 2020

У меня есть данные координат со следующими столбцами: lat | lon | hits

Я хочу нарисовать хороплет, используя эти данные с цветом на основе совпадений, поверх плитки OSM.

plot = figure(
    tools= "pan,wheel_zoom",
    x_range=[8580732.740161393, 8694052.230954666],
    y_range=[3324832.84084286, 3580909.760461876])
plot.add_tile(get_provider(Vendors.OSM))

До сих пор я узнал, что нам нужны границы областей, которые окрашены в цвет, но у меня нет гео json для границ населенных пунктов в небольших городах Индии. Можно ли каким-либо образом изобразить хороплет, используя квадратные / прямоугольные angular сетки или кластеризацию координат?

1 Ответ

0 голосов
/ 29 апреля 2020

Единственное, что в Боке сделает автоматическое c биннинг, это hexbin:

import numpy as np
from bokeh.plotting import figure, show

n = 500
x = 2 + 2*np.random.standard_normal(n)
y = 2 + 2*np.random.standard_normal(n)

p = figure(match_aspect=True, background_fill_color='#440154')
p.grid.visible = False

r, bins = p.hexbin(x, y, size=0.5, hover_color="pink", hover_alpha=0.8)

p.circle(x, y, color="white", size=1)

show(p)

enter image description here

Если вы хотите что-то кроме С шестигранными плитками вам нужно будет явно определить границы / области, которые вы хотите, и самим поместить их в корзину.

...