[GIS] Folium heatmap not displaying

geojsongeopandasheat mappython

I have an output file data.json

 [{"5403": 2, "9734": 1, "2565": 5, "5087": 2, "9061": 1, "1761": 4, "4811": 7 "1111": 5, "3891": 3, "1962": 3}]

and a shapefile converted to geojson https://www.dropbox.com/s/uou0jxhpklgt8r6/pc4.json?dl=0

I use this code to generate the map in ipython notebook:

import folium
import numpy as np
from IPython.display import IFrame
from IPython.core.display import HTML

def inline_map(m, width=650, height=500):
    """Takes a folium instance and embed HTML."""
    m._build_map()
    srcdoc = m.HTML.replace('"', '"')
    embed = HTML('<iframe srcdoc="{}" '
                 'style="width: {}px; height: {}px; '
                 'border: none"></iframe>'.format(srcdoc, width, height))
    return embed

    mapa = folium.Map(width=900, height=600, zoom_start=7, location=[52.3, 5], tiles='Mapbox Bright')

mapa.geo_json(geo_path='pc4.json', 
              data_out='data.json', 
              data=pcs, 
              columns=["PC4","Count"], 
              key_on="feature.properties.PC4",
              fill_color='PuRd',
              fill_opacity=1, 
              line_opacity=1,
              legend_name='Demand',
              reset="True")

mapa.create_map('test.html')
IFrame('test.html', width=1000, height=700)

It creates the map fine, just as the output file, but it doesn't overlay any heatmap. It does show the legend though, but nothing else.

I know this question is similar to Geopandas/folium map not displaying but his solution doesn't do anything for me.

Best Answer

you may try using folium.plugins.HeatMap()

this source has converted geo.json to feature group for using HeatMap() method. You may have a look: https://ocefpaf.github.io/python4oceanographers/blog/2015/11/16/folium_quiver/