Как указать параметр градиента для тепловой карты фолиума?

Я делаю тепловую карту цен на квартиры в Нью-Йорке, используя фолиум. Я пытаюсь использовать свой собственный цветовой градиент. Когда я указываю аргумент градиента в функции тепловой карты, на моей карте ничего не отображается. Кто-нибудь знает, как создать собственный цветовой градиент и, в идеале, градиентную полосу на карте? Большое спасибо.

Вот мой код: Первые два столбца данных — это местоположения. Третий столбец — цена.

data =[[    40.7726,    -73.9568,   1900.    ],
       [    40.7785,    -73.9556,   3200.    ],
       [    40.7216,    -73.9809,   5800.    ],
       [    40.7384,    -73.9848,   2900.    ],
       [    40.7678,    -73.9915,   3312.    ],
       [    40.7659,    -73.9574,   2600.    ],
       [    40.7092,    -74.0137,   4299.    ],
       [    40.7384,    -73.982 ,   5750.    ],
       [    40.7312,    -73.9896,   3595.    ]]

from folium.plugins import HeatMap
hmap = folium.Map(location=[40.75, -73.97], tiles='stamentoner',control_scale = True, zoom_start=13)
hmap.add_child(HeatMap(data, radius = 10, gradient={1000: 'blue', 3000: 'lime', 5000: 'red'}))
hmap

person zesla    schedule 10.04.2017    source источник


Ответы (2)


Градиент не принимает значения величины как ключи словаря для градиента.

Сдача

hmap.add_child(HeatMap(data, radius = 10, gradient={1000: 'blue', 3000: 'lime', 5000: 'red'}))

to

hmap.add_child(HeatMap(data, radius = 25, gradient={.4: 'blue', .65: 'lime', 1: 'red'}))

И это сработает.

person ivan7707    schedule 10.04.2017
comment
Большое спасибо. Таким образом, градиент принимает только процент от величины в качестве ключа словаря? Знаете ли вы, как я могу отобразить любую полосу градиентного цвета сбоку от карты? @ivan7707 - person zesla; 10.04.2017
comment
@zesla Я не вижу в API ничего, что называется цветной полосой. branca.colormap можно использовать для создания того, что вам нужно. Тем не менее, мне неясно, можете ли вы отвести его в сторону (если вы имеете в виду вертикальный ). - person ivan7707; 10.04.2017
comment
Вот новый адрес цветовой карты Бранка. @ivan7707 ссылка не работает. - person Kardi Teknomo; 22.02.2018

Из кода шаблона JS folium значения градиента должны быть от 0 до 1. Например:

gradient={'0':'Navy', '0.25':'Blue','0.5':'Green', '0.75':'Yellow','1': 'Red'}

https://cdn.jsdelivr.net/gh/python-visualization/folium@master/folium/templates/leaflet_heat.min.js

person Yuchi Pu    schedule 04.06.2021