如何返回交互式地图



我有这段代码,用于使用欧洲中期天气预报中心的netcdf文件的地图

def interactive_map():
import netCDF4 as nc
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
#original name -> _grib2netcdf-webmars-public-svc-green-007-6fe5cac1a363ec1525f54343b6cc9fd8-b5oXS9.nc
fn = '7.nc'
ds = nc.Dataset(fn)
#variables
#longitude, latitude, time, pm1
lons = ds.variables['longitude'][:]
lats = ds.variables['latitude'][:]
time = ds.variables['time'][:]
pm = ds.variables['pm1'][:]
mp = Basemap(projection = 'merc',
llcrnrlon = 97.085310,
llcrnrlat = 2.044212,
urcrnrlon = 106.896219,
urcrnrlat = 7.403567,
resolution = 'i')
lon, lat = np.meshgrid(lons, lats)
x, y = mp(lon, lat)
cscheme = mp.pcolor(x, y, np.squeeze(pm[0,:,:]), cmap = 'turbo')
mp.drawcoastlines()
mp.drawstates()
mp.drawcountries()
cbar = mp.colorbar(cscheme, location = 'right')
#plt.show()
plt.savefig('map.png')

https://i.stack.imgur.com/VnQzv.png

我想要的是将地图添加到web2py的视图中,我知道它保存了一个图像,我可以渲染图像,但是否可以在交互式地图中显示

这就是我必须在视图中显示的地图:

<!--index.html-->
{{extend 'layout.html'}}
<img src="{{=URL('static','images/map.png')}}" width="500" height="600">

我的包ncplot(https://ncplot.readthedocs.io/en/latest/)将自动为NetCDF文件创建交互式绘图。您只需要执行以下操作:

from ncplot import ncplot
ncplot(fn)

最新更新