鴿了好幾天,一直沒想好更新什么,翻了下以前畫過的一些圖,突然想到緯高圖也是氣象研究中心很常見的一類圖型,通常用于分析高低空的環(huán)流配置,垂直運(yùn)動等等,那么今天就更新一下。
緯高圖一般指的是縱軸是高度軸的圖,橫軸可以是緯度,經(jīng)度,時(shí)間等等,用于同時(shí)分析垂直方向的環(huán)流異常等等,我只是叫緯高圖比較順嘴。

1979年9月北半球溫度的緯度-高度分布圖
我準(zhǔn)備的數(shù)據(jù)是ERA-Interim再分析資料的1979年9月份的溫度數(shù)據(jù),垂直高度37層,從1000hPa-1hPa,緯度90°N-0°,經(jīng)度為0-360°。具體如下:
f = xr.open_dataset('t.nc')
t = f['t'].loc['1979-09-01']
high = t.coords['level']
lat = t.coords['latitude']

數(shù)據(jù)信息
首先對經(jīng)度維求平均,使數(shù)據(jù)變?yōu)榫暥?高度的2維數(shù)據(jù)。
t = np.array(t).mean((2))-273.15
#print(t)
#(37, 91)
然后就直接用來畫圖了,按常規(guī)操作來畫的話,問題出現(xiàn)了:
fig1 = plt.figure(figsize=(12,8))
f1_ax1 = fig1.add_axes([0.1, 0.1, 0.5, 0.5])
f1_ax1.set_xticks(np.arange(0,120,30))
# f1_ax1.set_yscale('symlog')
c = f1_ax1.contourf(lat,level,t, extend = 'both',levels = np.arange(-80,20,4),cmap=plt.cm.RdBu_r)
f1_ax1.set_xticklabels([r'0$^\degree$',r'30$^\degree$N', r'60$^\degree$N', r'90$^\degree$N'])

image.png
縱軸是反著的!
不要緊,加一條這個(gè)就好了。翻轉(zhuǎn)y軸!
f1_ax1.invert_yaxis()
進(jìn)一步,我們想將垂直軸設(shè)置成對數(shù)坐標(biāo)軸,只需再添加:
f1_ax1.set_yscale('symlog')
就OK了