第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 数据可视化气象数据
Posted 遇上雨也笑笑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 数据可视化气象数据相关的知识,希望对你有一定的参考价值。
声明
- 系列博客不会出现任何真实数据
- 比赛期间将拒绝一切私信,有问题请发评论
系列文章目录
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【0】【风况预测评分规则-最终得分R的计算】【已弃用】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【1】【验证集制作】【已弃用】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【2】【验证集使用】【已弃用】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【3】【计算最终得分】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【4】【数据管理】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【5】【数据可视化】【测试集_初赛】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【6】【数据可视化】【训练集】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【7】【数据管理】【验证集本地化】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【8】【数据可视化】【验证集】
第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 【9】【数据可视化】【气象数据】
更新说明
无
注
注:大赛官网明确规定数据不可用作其他用途,所以图就不展示了
前言
风场间的机舱数据有何关系,机舱数据和气象数据又有何关系,下面将以气象数据的时间线为主,然后从机舱数据中提取与气象数据处于同一时间的数据,通过可视化的方式来直观的展现它们的关系。
一、必要的准备
main.py
见系列第5个博客【4】【数据管理】
- 你需要把
mian.py
和train
放在同一目录下,然后运行以下代码
from main import *
dm = Data_Manager()
dm.load_test_data()
np.nan_to_num(dm.X_, copy=False)
np.nan_to_num(dm.X0, copy=False)
np.nan_to_num(dm.Y0, copy=False)
np.nan_to_num(dm.S, copy=False)
np.nan_to_num(dm.W, copy=False)
np.nan_to_num(dm.test_X_, copy=False)
np.nan_to_num(dm.test_X0, copy=False)
np.nan_to_num(dm.test_W, copy=False);
二、在同一张图内展示
当众多曲线相似性很高时,可以通过在同一张图内展示,观察它们的重合度
f = 0 # 可以通过设置 f 来选择风场,[风场1: 0], [风场2: 1]
size = 500 # 时间长度,注:最大不要超过 17520
z = np.arange(size)
i = np.random.randint(0, 17520 - size)
风速
注:气象数据的风速数据与机舱数据的风速数据不在同一空间(机舱数据被归一化了),所以不能同图展示
fig, ax = plt.subplots(figsize=(50, 10))
for m in range(machine_len):
spd_w, dir_w = dm.weather['data'][f, i:i+size, m, :].T
ax.plot(z, spd_w)
plt.show()
fig, ax = plt.subplots(figsize=(50, 10))
spd_w, dir_w = dm.weather['data'][f, i:i+size, -1, :].T
ax.set_ylabel('气象数据')
ax.plot(z, spd_w)
plt.show()
风向
注:气象数据的风向数据与机舱数据的风向数据不在同一空间(机舱数据被归一化了),所以不能同图展示
fig, ax = plt.subplots(figsize=(50, 10))
for m in range(machine_len):
spd_w, dir_w = dm.weather['data'][f, i:i+size, m, :].T
ax.plot(z, dir_w)
plt.show()
fig, ax = plt.subplots(figsize=(50, 10))
spd_w, dir_w = dm.weather['data'][f, i:i+size, -1, :].T
ax.set_ylabel('气象数据')
ax.plot(z, dir_w)
plt.show()
三、分开展示
当众多曲线相似性不高时,可以通过分开展示,观察它们的差异性
f = 0 # 可以通过设置 f 来选择风场,[风场1: 0], [风场2: 1]
size = 300 # 时间长度,注:最大不要超过 17520
z = np.arange(size)
i = np.random.randint(0, 17520 - size)
风速
for m in range(machine_len+1):
spd_w, dir_w = dm.weather['data'][f, i:i+size, m, :].T
fig, ax = plt.subplots(figsize=(50, 10))
ax.set_ylabel(machine[f][m] if m < machine_len else '气象数据')
ax.plot(z, spd_w)
plt.show()
风向
for m in range(machine_len+1):
spd_w, dir_w = dm.weather['data'][f, i:i+size, m, :].T
fig, ax = plt.subplots(figsize=(50, 10))
ax.set_ylabel(machine[f][m] if m < machine_len else '气象数据')
ax.plot(z, dir_w)
plt.show()
四、结语
看来图之后,有两个问题需要思考一下
- 同一风场同一时段,其中有一小部分风机存在数据缺失,那么其他风机的数据能不能帮助修复呢?
- 能不能宏观把控整个风场呢?不是以单台风机为单位的预测,而是以整个风场为单位,整体进行预测呢?这样的话,只要不出现同一时段所有数据缺失就能预测吧。。
以上是关于第五届全国工业互联网数据创新应用大赛 机组数据驱动的风电场短期风况预测 数据可视化气象数据的主要内容,如果未能解决你的问题,请参考以下文章