当前位置: 首页 > news >正文

葫芦岛做网站搜索引擎广告

葫芦岛做网站,搜索引擎广告,广州seo培训机构,做五金找订单查什么网站使用ERA5数据绘制风向玫瑰图的简易流程 今天需要做一个2017年-2023年的平均风向的统计,做一个风向玫瑰图,想到的还是高分辨率的ERA5land的数据(0.1分辨率,逐小时分辨率,1950年至今)。 风向,我分为了16个&…

使用ERA5数据绘制风向玫瑰图的简易流程

今天需要做一个2017年-2023年的平均风向的统计,做一个风向玫瑰图,想到的还是高分辨率的ERA5land的数据(0.1°分辨率,逐小时分辨率,1950年至今)。

风向,我分为了16个(0-360°,北方向为0),统计该时间段内的16个风向频率。

下载

使用Google earth engine快速统计风向频率:

var ROI = 你的区域;
var startDate = '2023-1-01';
var endDate = '2023-01-30';var dataset = ee.ImageCollection('ECMWF/ERA5_LAND/HOURLY').select(['u_component_of_wind_10m', 'v_component_of_wind_10m']).filterDate(startDate, endDate).filter(ee.Filter.calendarRange(11, 4, 'month'));var calculateWindDirection = function(image) {var direction = image.select('u_component_of_wind_10m', 'v_component_of_wind_10m').expression('atan2(v, u) * 180 / PI + 180',{'u': image.select('u_component_of_wind_10m'),'v': image.select('v_component_of_wind_10m'),'PI': Math.PI});return direction.rename('wind_direction');
};// 计算16个方向的频率
var directions = ee.List.sequence(0, 15);
var binSize = 360/16;var directionalFrequency = directions.map(function(dir) {var start = ee.Number(dir).multiply(binSize);var end = start.add(binSize);var directionMask = dataset.map(calculateWindDirection).map(function(img) {return img.gte(start).and(img.lt(end));});    return directionMask.mean().rename(ee.String('dir_').cat(ee.Number(dir).format('%02d')));
});// 将List转换为Image Collection,然后合并为一个多波段图像
var allDirections = ee.ImageCollection.fromImages(directionalFrequency).toBands();// 修改波段名称
var newBandNames = directions.map(function(dir) {return ee.String('dir_').cat(ee.Number(dir).format('%02d'));
}).getInfo();// 重命名波段
allDirections = allDirections.rename(newBandNames);// 导出数据
Export.image.toDrive({image: allDirections,description: 'Wind_Direction_Frequency_16dirs',scale: 10000,region: ROI,fileFormat: 'GeoTIFF',maxPixels: 1e9
});

下载下来后,放到qgis里面看看,一共16个波段,每个波段都代表着一个方向上的频率,16个波段加起来是1:

制图

使用python3实现:

import numpy as np
import matplotlib.pyplot as pltdef plot_wind_rose(data, title='Wind Rose'):"""绘制风向玫瑰图data: 包含16个方向频率的数组"""# 创建图形fig, ax = plt.subplots(figsize=(10, 10), subplot_kw={'projection': 'polar'})# 设置方向角度(16个方向,每个22.5度)angles = np.arange(0, 360, 22.5) * np.pi/180# 确保数据是闭合的(首尾相连)frequencies = np.append(data, data[0])angles = np.append(angles, angles[0])# 绘制极坐标图ax.plot(angles, frequencies, 'o-', linewidth=2, color='purple')ax.fill(angles, frequencies, alpha=0.25, color='purple')# 设置方向标签ax.set_xticks(angles[:-1])direction_labels = ['N', 'NNE', 'NE', 'ENE', 'E', 'ESE', 'SE', 'SSE','S', 'SSW', 'SW', 'WSW', 'W', 'WNW', 'NW', 'NNW']ax.set_xticklabels(direction_labels)# 设置网格和刻度ax.grid(True)# 设置频率刻度范围max_freq = np.max(frequencies)ax.set_ylim(0, max_freq * 1.1)# 设置标题ax.set_title(title)return figdef read_wind_data(tiff_path, x, y):"""读取特定位置的风向数据"""with rasterio.open(tiff_path) as src:# 将经纬度转换为像素坐标row, col = src.index(x, y)# 读取所有波段在该位置的值data = []for i in range(1, src.count + 1):value = src.read(i)[row, col]data.append(float(value))return np.array(data)# 使用示例
import rasterio
#输入tif路径
tiff_path = r'\风向数据\Wind_Direction_Frequency_16dirs.tif'
#输入经纬度
x, y = 99, 25.312# 读取数据
wind_data = read_wind_data(tiff_path, x, y)# 打印数据检查
print("Wind direction frequencies:")
for i, freq in enumerate(wind_data):print(f"Direction {i*22.5:>6.1f}°: {freq:>6.3f}")# 绘制风向玫瑰图
fig = plot_wind_rose(wind_data, f'Wind Rose at ({x}, {y})')# 保存图片
plt.savefig('wind_rose.png', dpi=300, bbox_inches='tight')
plt.show()

在代码中填入需要生成的风玫瑰图的经纬度,即可获得2017-2023年的该地区风向情况。

参考

Claude sonnet 3.5

http://www.khdw.cn/news/68178.html

相关文章:

  • 邢台本地网站跨国网站浏览器
  • 做鲜花配送网站需要准备什么人员优化是什么意思
  • 河南做网站公司哪家好广州百度快速优化排名
  • 营销型网站设计论文今日最新抗疫数据
  • 南京市建设局网站栖霞网络推广方案设计
  • 企业网站制作建设的框架有哪几种seo排名诊断
  • 商城类网站用什么做球队世界排名榜
  • 图片自制器西安网站排名优化培训
  • 怎么制作网站封面百度的竞价排名是哪种方式
  • 网站建设的实训心得网站app开发公司
  • 一站式服务平台登录独立站seo实操
  • 旅游最新消息seo研究中心vip课程
  • wordpress主题上传图片教程福州短视频seo公司
  • 商务网站建设教程如何搭建公司网站
  • 自己建立网站要钱吗网络营销的工作内容包括哪些
  • 网站开发工作介绍营销策略手段有哪些
  • 淘宝客网站做好了该怎么做发帖推广百度首页
  • 杭州知名的企业网站建设企业推广软文
  • 网站模块建设凡科网免费建站
  • 电商前期投资要多少钱福建seo快速排名优化
  • 做班级网站的素材百度自然排名优化
  • 企业网站可以自己做2022年新闻大事
  • 网站怎样做推广公司网络营销推广
  • 襄阳市做网站中央今日头条新闻
  • 医院网站前置审批如何在网上做销售推广
  • 和田网站建设品牌营销方案
  • 十堰做网站seo外链发布技巧
  • 网站排版设计欣赏上海百度推广电话客服
  • 没备案可以做网站么今日头条武汉最新消息
  • 医疗网站建设目录seo的主要工作是什么