Feature request: colormap with background
Opened this issue · 0 comments
khalida commented
Code Sample
import folium
import pandas as pd
import folium.plugins
import branca
import branca.colormap as cm
data = [
[33.823400, -118.12194, 99.23],
[33.823500, -118.12294, 95.23],
[33.823600, -118.12394, 91.23],
[33.823700, -118.12494, 90.00]
]
df = pd.DataFrame(data, columns=['latitude','longitude','data'])
x_start = (df['latitude'].max() + df['latitude'].min()) / 2
y_start = (df['longitude'].max() + df['longitude'].min()) / 2
start_coord = (x_start, y_start)
colormap = cm.LinearColormap(colors=['red','lightblue'],
index=[df['data'].min(),df['data'].max()],
vmin=df['data'].min(),vmax=df['data'].max())
colormap.caption = 'Data [units]'
map = folium.Map(location=start_coord, zoom_start=12)
lat = list(df.latitude)
lon = list(df.longitude)
dat = list(df.data)
for loc, p in zip(zip(lat, lon), dat):
folium.Circle(
location=loc,
radius=10,
fill=True,
color=colormap(p),
fill_opacity=0.7
).add_to(map)
map.add_child(colormap)
map.save('index.html')
Problem description
Code above creates colored points, and displays a colormap to show what data value each color corresponds to. This is great but it would be even better if a background colour could be selected. This slightly hacky work-around does exactly what I want:
https://stackoverflow.com/a/50427006/4988601
I'd be happy to try and plumb this into folium itself if a few people show some interest in this feature (I'm fairly new to folium so any pointers on what methods/classes I'd need to poke around in would be appreciated).
Expected Output
Colormap with an optional background color rectangle to help it stand out.
Output of folium.__version__
0.10.0