python windrose画风玫瑰图的一些问题


今天用python的windrose模块画风玫瑰图,发现以下3个问题,做下记录:

1、风向0°不在北方

2、风向的顺序不对

3、风向与实际风向相差90°

如下面的示例:


1
dir = np.arange(0, 360, 22.5) 2 spd = np.arange(0, 16, 1) 3 ax = WindroseAxes.from_ax() 4 ax.bar(np.arange(0, 360, 22.5), np.arange(0,16, 1), bins=np.arange(0, 16, 1)) 5 ax.set_legend()

 如上图所示,风向与气象意义上的风向不符。

气象上画风玫瑰图的话,需用以下代码:

dir = np.arange(0, 360, 22.5)
spd = np.arange(0, 16, 1)
ax = WindroseAxes.from_ax()
ax.set_theta_zero_location('N')   # 设置零度方向为北
ax.set_theta_direction(-1)        # 逆时针方向绘图
dir1 = np.mod(90 - dir, 360)    # 风向旋转90°
ax.bar(dir1, spd, bins=np.arange(0, 16, 1))
ax.set_legend()

显示如下:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM