在 folium 地图上绘制等高线图

Plot cotour graph on folium map

我使用 matplolib 绘制了等高线图,我想将此图覆盖在 folium 地图上,或者有什么方法可以使用 folium 在地图上绘制等高线图

这是我的代码


    import json
    
    import numpy as np
    from scipy.interpolate import griddata
    from matplotlib import pyplot as plt
    
    f = open('data.json', 'r')
    
    data = json.load(f)
    
    temp = data['temp']
    lon = data['lon']
    lat = data['lat']
    
    x = np.linspace(min(lon), max(lon), 100)
    y = np.linspace(min(lat), max(lat), 100)
    
    X,Y = np.meshgrid(x, y)
    Z = griddata((lon, lat), temp, (X, Y), method='cubic')
    
    plt.contour(X,Y, Z)
    plt.show()

我的数据文件 data.json,下面是我的绘图现在的样子我想在地图上绘制它

import json
import numpy as np
from scipy.interpolate import griddata
from matplotlib import pyplot as plt
import geojsoncontour
import geopandas as gpd

f = open('data.json', 'r')

data = json.load(f)

temp = data['temp']
lon = data['lon']
lat = data['lat']

y = np.linspace(min(lon), max(lon), 100)
x = np.linspace(min(lat), max(lat), 100)

X,Y = np.meshgrid(x, y)
Z = griddata((lat, lon), temp, (X, Y), method='cubic')
    
contour =    plt.contour(X,Y, Z)

gdf = gpd.GeoDataFrame.from_features(json.loads(geojsoncontour.contour_to_geojson(
    contour=contour,
    min_angle_deg=3.0,
    ndigits=5,
    stroke_width=1))).set_crs("EPSG:4326")

m = gdf.explore(color=gdf["stroke"])

plt.show()
m