matplotlib绘制风能玫瑰图

本文介绍了如何使用matplotlib库绘制风能玫瑰图,包括读取风资源数据、进行数据计算,以及绘制风向玫瑰图和风能面积图。通过实例展示了简单风向玫瑰图的绘制方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

在之前的风资源分析文章中,有提到过用widrose包来进行玫瑰图的绘制,目前的可视化绘图包有很多,但是最基础和底层的,本人认为还是matplotlib,有时候为了画1-2个图就去安装一个包,好麻烦,我就是个安装软件的渣渣,所以,推己及人,我也研究了一下,matplotlib画玫瑰图的方法,废话不多说,开始咯~~~

风能玫瑰图

玫瑰图是气象科学专业统计图表,用来统计某个地区一段时期内风向、风速发生频率,又分为“风向玫瑰图”和“风速玫瑰图”。本文中的玫瑰图是将风速和风向结合在一起,画出的风能玫瑰图。

读取数据

读取对应的测风数据,并进行数据的基本计算,在matplotlib中画图中没有集成的计算包,所以一定要充分了解绘制玫瑰图的原理,将数据通过计算来处理成绘图需要的形式,再进行调用绘图。

**1、读取数据,**并提取出绘图的风速风向数据,此时的数据是原始风速风向数据。

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl

plt.rcParams['font.sans-serif']=['SimHei']   #显示中文
plt.rcParams['axes.unicode_minus']=False      #显示负号

filename=r'E:\python总结\实例数据\matplotlib画玫瑰图\Sta_WLS7-4880-0420-0728.xlsx'
datat=pd.read_excel(filename,sheet_name='原始数据')
datat.columns

# 提取绘图的风速风向数据,并进行简单的删除空值处理
dt=datat.loc[:,('90m Wind Speed (m/s)','90m Wind Direction (�)')]   #提取90m高度的风速和风向
dt=dt.dropna()  #删除空值

在这里插入图片描述

2、进行绘图前的数据计算。

mx=np.ceil(max(dt['90m Wind Speed (m/s)'])) #风速最大值向上取整

ct0=np.array(np.arange(0,361,22.5))  #划分风向的区间,22.5度一个区间
ct1=np
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值