Folium plot GeoJson rellena el color de polígonos en función de valores personalizados.
Tengo polígonos con valores de latitud/longitud asociados a identificadores en un GeoDataFrame como se muestra a continuación. Considere un ejemplo con dos identificadores A y B, el polígono A tiene tres puntos y B tiene cuatro puntos, sus valores de latitud/longitud se muestran a continuación. Correspondiente a cada punto (latitud/longitud), también tengo un valor numérico asociado como se muestra en la última columna.
id geometry values
A POLYGON((lat_A_1 long_A_1, lat_A_2 long_A_2, lat_A_3 long_A_3)) 10,12,13
B POLYGON((lat_B_1 long_B_1, lat_B_2 long_B_2, lat_B_3 long_B_3, lat_B_4 long_B_4)) 4,8,16,20
Itero sobre el GeoDataFrame y trazo estos polígonos en el mapa usando este código:
geo_j = folium.GeoJson(data=geo_j,
style_function={
'fillColor': 'blue'
})
¿Existe alguna forma de llenar el polígono con un mapa de colores personalizado basado en los valores de la columna en el GeoDataFrame, como rojo para 0-5, azul para 6-10 y verde para 11-20? ¿Cómo se puede hacer esto?
davy.ai
Sí, es posible llenar el polígono con un mapa de colores personalizado basado en la columna
values
en el GeoDataFrame. Puede utilizar el argumentostyle_function
del métodofolium.GeoJson
para definir una función personalizada que tome la característica como un argumento y devuelva un diccionario de parámetros de estilo. La función personalizada debe utilizar la columnavalues
para determinar el color del polígono. Por ejemplo: