利用底图绘制NOAA数据

2024-04-25 08:51:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python很陌生,但在过去的几个月里我学到了很多东西。我试图从一个grib2文件中绘制NOAA的涌浪高度数据:ftp://ftpprd.ncep.noaa.gov/pub/data/nccf/com/wave/prod/wave.20140122/nww3.t06z.grib.grib2

我使用Basemap和我在Basemap论坛上找到的教程。在

下面是一个最低限度的工作示例,但是我在海岸线周围发现了一些奇怪的白色盒子。在

import Nio
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import numpy as np

f = Nio.open_file('nww3.t12z.grib(2).grib2')
lons = f.variables['lon_0'][:]
lats = f.variables['lat_0'][::-1] # flip latitudes so data goes S-->N
times = f.variables['forecast_time0'][:]
ntime = 5
data = f.variables['HTSGW_P0_L1_GLL0'][ntime,::-1]

fig = plt.figure(figsize=(16,16))
m = Basemap(llcrnrlon=-35.,llcrnrlat=42.,urcrnrlon=5.,urcrnrlat=65.,
            projection='lcc',lat_1=10.,lat_2=15.,lon_0=10.,
            resolution ='h',area_thresh=1000.)

x, y = m(*np.meshgrid(lons, lats))
m.fillcontinents(color='#477519')
m.drawcoastlines(linewidth=0.5, color='k', antialiased=1, ax=None, zorder=None )

m.contourf(x, y, data, np.arange(0,9.9,0.1))
plt.show() 

这是结果(顶部面板;我希望它看起来像底部面板):http://oi43.tinypic.com/s2s3m0.jpg

抱歉,我没有足够的点数来发布图片。在

提前谢谢你, 艾尔


Tags: importcomdataasnppltvariableslon

热门问题