- 积分
- 135
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2022-7-15
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
大佬们好,求助。我做这个投影图遇到一个问题。就是我这个图的数据经度是0-357.5(间隔2.5),然后纬度是0-90。由于经度不是到360这个数字,所以图形上空白了一部分,缺了这一小部分。就是想请教您们,如何把经度为0的值赋给经度为360的,怎么利用代码把这一部分添加上。数据文件有点大,上传不了。import matplotlib.pyplot as plt
import matplotlib as mpl
import cartopy.crs as ccrs
import cartopy.feature as cfeature
from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
from netCDF4 import Dataset
import numpy as np
import xarray as xr
def make_map(ax):
projection = ccrs.Orthographic(central_longitude=-90,central_latitude=90)
ax.set_global()
ax.coastlines(linewidth=0.5)
'''标注坐标轴'''
'''zero_direction_label=True 有度的标识,False则去掉'''
lon_formatter = LongitudeFormatter(zero_direction_label=True)
lat_formatter = LatitudeFormatter()
'''添加网格线'''
return ax
data=xr.open_dataset(r'D:\o3 model data\tggo3.cam2.h1.2019-11-01-00000.nc')
time=data['time'][1]
lev=data['lev'][51]
lat = data['lat'][:]
lon = data['lon'][:]
T=data['T'].loc[time,lev,:,:]
data_proj = ccrs.PlateCarree(central_longitude=0)
fig = plt.figure(dpi=1200)
proj = ccrs.Orthographic(central_longitude=0,central_latitude=90)
ax = fig.add_subplot(projection = proj)
ax = make_map(ax)
cf = ax.contourf(lon, lat, T, cmap='Spectral_r',transform=data_proj)
plt.show()
|
|