Skip to content

Commit

Permalink
修改云雷达读取库
Browse files Browse the repository at this point in the history
  • Loading branch information
longtsing committed Dec 8, 2024
1 parent ab5e092 commit eb28d2e
Show file tree
Hide file tree
Showing 4 changed files with 361 additions and 60 deletions.
258 changes: 258 additions & 0 deletions examples/读取风廓线雷达数据.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "eb8f4972-fd86-4510-9a07-677a279e043a",
"metadata": {},
"outputs": [],
"source": [
"import sys\n",
"import os\n",
"sys.path.append(os.path.abspath('../'))\n",
"import json\n",
"from datetime import datetime,timedelta\n",
"import dateutil.parser\n",
"import dateutil.rrule\n",
"import numpy as np\n",
"import pandas as pd\n",
"import xarray as xr\n",
"from metgrs import Utils\n",
"import io\n",
"import math\n",
"import types\n",
"import glob\n",
"import matplotlib as mpl\n",
"from joblib import Parallel,delayed\n",
"from metgrs import WindProfileRadar\n",
"import matplotlib.pyplot as plt"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "c290e167-2dac-489a-b9f2-08dec603f4cd",
"metadata": {},
"outputs": [],
"source": [
"datapath='../datas/'"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "cc155483-60a8-4b8c-a981-a91671ce0f83",
"metadata": {},
"outputs": [],
"source": [
"fs=glob.glob(datapath+'/WindProfileRadarFiles/Z_RADA_I_57461_*_R_WPRD_LC_STA.XML')"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "38ea8b04-b7bf-4a97-9645-af646bd564c5",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204183600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204195400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204200000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204200600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204201200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204201800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204202400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204203000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204203600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204204200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204204800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204205400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204210000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204210600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204211200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204211800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204212400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204213000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204213600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204214200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204214800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204215400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204220000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204220600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204221200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204221800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204222400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204223000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204223600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204224200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204224800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204225400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204230000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204230600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204231200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204231800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204232400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204233000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204233600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204234200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204234800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241204235400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205000000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205000600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205001200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205001800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205002400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205003000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205003600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205004200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205004800_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205005400_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205010000_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205010600_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205011200_R_WPRD_LC_STA.XML',\n",
" '../datas//WindProfileRadarFiles\\\\Z_RADA_I_57461_20241205011800_R_WPRD_LC_STA.XML']"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"fs"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "28966ceb-0bd5-4d70-bfa8-bb8e868b151d",
"metadata": {},
"outputs": [],
"source": [
"ds=list(map(WindProfileRadar.readStatuXMLfile,fs))"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "c00f087a-202d-4a0d-b8ee-2c3e511b6377",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{\n",
" \"StaticParameters\": {'Points': [{'ParameterUnit': '', 'ParameterValue': 'CHIN', 'ParameterName': 'Country'}, {'ParameterUnit': '', 'ParameterValue': 'hubei', 'ParameterName': 'Province'}, {'ParameterUnit': '', 'ParameterValue': '57461', 'ParameterName': 'StationNumber'}, {'ParameterUnit': '', 'ParameterValue': 'yichang', 'ParameterName': 'Station'}, {'ParameterUnit': '', 'ParameterValue': 'LC', 'ParameterName': 'RadarType'}, {'ParameterUnit': '度', 'ParameterValue': 'E111/21/33', 'ParameterName': 'Longitude'}, {'ParameterUnit': '度', 'ParameterValue': 'N030/44/12', 'ParameterName': 'Latitude'}, {'ParameterUnit': 'm', 'ParameterValue': '253.80', 'ParameterName': 'Altitude'}]},\n",
" \"SystemStatus\": {'Points': [{'ParameterUnit': '', 'ParameterValue': '2024-12-04 18:36:00', 'ParameterName': 'Time'}, {'ParameterUnit': '', 'ParameterValue': '2', 'ParameterName': 'Radarstatus'}, {'ParameterUnit': '', 'ParameterValue': '8', 'ParameterName': 'SubsysNum'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys0'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys1'}, {'ParameterUnit': '', 'ParameterValue': '2', 'ParameterName': 'Subsys2'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys3'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys4'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys5'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys6'}, {'ParameterUnit': '', 'ParameterValue': '1', 'ParameterName': 'Subsys7'}]},\n",
" \"SystemStatusList\": [\n",
" {'SubSystemStatusList': {'SubSystemStatus': {'StatusFlag': '1', 'PartName': '功分器', 'PartCode': '1'}}},\n",
" {'SubSystemStatusList': [{'StatusFlag': '1', 'PartName': '发射机输入故障', 'PartCode': '1'}, {'StatusFlag': '1', 'PartName': '发射机输出故障', 'PartCode': '2'}, {'StatusFlag': '1', 'PartName': '发射机过温保护', 'PartCode': '3'}, {'StatusFlag': '1', 'PartName': '发射机驻波保护', 'PartCode': '4'}, {'StatusFlag': '1', 'PartName': '发射机电源故障', 'PartCode': '5'}]},\n",
" {'SubSystemStatusList': [{'StatusFlag': '1', 'PartName': '机柜电源', 'PartCode': '1'}, {'StatusFlag': '1', 'PartName': '本振功率', 'PartCode': '2'}]},\n",
" {'SubSystemStatusList': [{'StatusFlag': '1', 'PartName': '中频电源', 'PartCode': '1'}, {'StatusFlag': '1', 'PartName': 'AD采样时钟', 'PartCode': '2'}]},\n",
" {'SubSystemStatusList': {'SubSystemStatus': {'StatusFlag': '1', 'PartName': '通信串口', 'PartCode': '1'}}},\n",
" {'SubSystemStatusList': {'SubSystemStatus': {'StatusFlag': '1', 'PartName': '通道开关', 'PartCode': '1'}}},\n",
" {'SubSystemStatusList': {'SubSystemStatus': {'StatusFlag': '1', 'PartName': 'WPCS和WPDT间连接', 'PartCode': '1'}}},\n",
" {'SubSystemStatusList': {'SubSystemStatus': {'StatusFlag': '1', 'PartName': '音频功放输出', 'PartCode': '1'}}}\n",
" ]\n",
" \"SYSTEMOBSDATA\": {'SYSTEMOBSDATAList': [[{'Obsdatanum': '1', 'Obsdata': '5', 'ObsName': '发射机5v'}, {'Obsdatanum': '2', 'Obsdata': '13', 'ObsName': '发射机13v'}, {'Obsdatanum': '3', 'Obsdata': '28', 'ObsName': '发射机28v'}, {'Obsdatanum': '4', 'Obsdata': '47.8', 'ObsName': '发射机50v'}, {'Obsdatanum': '5', 'Obsdata': '40', 'ObsName': '发射机36v'}, {'Obsdatanum': '6', 'Obsdata': '15', 'ObsName': '发射机15v'}, {'Obsdatanum': '7', 'Obsdata': '-15', 'ObsName': '发射机-15v'}, {'Obsdatanum': '8', 'Obsdata': '0', 'ObsName': '发射机输入功率(DBM)'}, {'Obsdatanum': '9', 'Obsdata': '67.5', 'ObsName': '发射机输出功率(DBM)'}, {'Obsdatanum': '10', 'Obsdata': '46.3', 'ObsName': '发射机反射功率(DBM)'}, {'Obsdatanum': '11', 'Obsdata': '21.6', 'ObsName': '发射机温度'}, {'Obsdatanum': '12', 'Obsdata': '0', 'ObsName': '发射机射频开关'}, {'Obsdatanum': '13', 'Obsdata': '69', 'ObsName': '系统相噪(DB)'}], [{'Obsdatanum': '1', 'Obsdata': '3.29', 'ObsName': '机柜电源, 3.3v'}, {'Obsdatanum': '2', 'Obsdata': '5.15', 'ObsName': '机柜电源, 5v1'}, {'Obsdatanum': '3', 'Obsdata': '5', 'ObsName': '机柜电源, 5v2'}, {'Obsdatanum': '4', 'Obsdata': '4.82', 'ObsName': '机柜电源, 5v3'}, {'Obsdatanum': '5', 'Obsdata': '5.4', 'ObsName': '机柜电源, 5v4'}, {'Obsdatanum': '6', 'Obsdata': '-5', 'ObsName': '机柜电源,-5v'}, {'Obsdatanum': '7', 'Obsdata': '9', 'ObsName': '机柜电源, 9v'}, {'Obsdatanum': '8', 'Obsdata': '15.09', 'ObsName': '机柜电源, 15v'}, {'Obsdatanum': '9', 'Obsdata': '6.06', 'ObsName': '机柜电源, 6v'}, {'Obsdatanum': '10', 'Obsdata': '-14.94', 'ObsName': '机柜电源, -15v'}, {'Obsdatanum': '11', 'Obsdata': '23.99', 'ObsName': '机柜电源, 24v'}, {'Obsdatanum': '12', 'Obsdata': '1', 'ObsName': 'BSU'}, {'Obsdatanum': '13', 'Obsdata': '155', 'ObsName': '系统灵敏度; DB'}, {'Obsdatanum': '14', 'Obsdata': '92', 'ObsName': '动态范围DB'}, {'Obsdatanum': '15', 'Obsdata': '0.8', 'ObsName': '噪声系数DB'}, {'Obsdatanum': '16', 'Obsdata': '19', 'ObsName': '环境温度(摄氏度)'}, {'Obsdatanum': '17', 'Obsdata': '62', 'ObsName': '环境湿度(0-100%)'}], [{'Obsdatanum': '1', 'Obsdata': '57.02', 'ObsName': '反射率强度计算值'}, {'Obsdatanum': '2', 'Obsdata': '57.01', 'ObsName': '反射率强度测量值'}, {'Obsdatanum': '3', 'Obsdata': '0', 'ObsName': '移相0速度计算值'}, {'Obsdatanum': '4', 'Obsdata': '0', 'ObsName': '移相0速度测量值'}, {'Obsdatanum': '5', 'Obsdata': '3.82', 'ObsName': '移相45度速度计算值'}, {'Obsdatanum': '6', 'Obsdata': '3.82', 'ObsName': '移相45度速度测量值'}, {'Obsdatanum': '7', 'Obsdata': '11.48', 'ObsName': '移相135度速度计算值'}, {'Obsdatanum': '8', 'Obsdata': '11.48', 'ObsName': '移相135度速度测量值'}, {'Obsdatanum': '9', 'Obsdata': '-7.65', 'ObsName': '移相270度速度计算值'}, {'Obsdatanum': '10', 'Obsdata': '-7.65', 'ObsName': '移相270度速度测量值'}, {'Obsdatanum': '11', 'Obsdata': '0', 'ObsName': '移相0谱宽计算值'}, {'Obsdatanum': '12', 'Obsdata': '0', 'ObsName': '移相0谱宽测量值'}, {'Obsdatanum': '13', 'Obsdata': '0', 'ObsName': '移相45度谱宽计算值'}, {'Obsdatanum': '14', 'Obsdata': '0', 'ObsName': '移相45度谱宽测量值'}, {'Obsdatanum': '15', 'Obsdata': '0', 'ObsName': '移相135度谱宽计算值'}, {'Obsdatanum': '16', 'Obsdata': '0', 'ObsName': '移相135度谱宽测量值'}, {'Obsdatanum': '17', 'Obsdata': '0', 'ObsName': '移相270度谱宽计算值'}, {'Obsdatanum': '18', 'Obsdata': '0', 'ObsName': '移相270度谱宽测量值'}, {'Obsdatanum': '19', 'Obsdata': '2.75', 'ObsName': '移相25HZ速度计算值'}, {'Obsdatanum': '20', 'Obsdata': '2.75', 'ObsName': '移相25HZ速度测量值'}, {'Obsdatanum': '21', 'Obsdata': '-2.75', 'ObsName': '移相-25HZ度速度计算值'}, {'Obsdatanum': '22', 'Obsdata': '-2.75', 'ObsName': '移相-25HZ度速度测量值'}, {'Obsdatanum': '23', 'Obsdata': '8.26', 'ObsName': '移相75HZ度速度计算值'}, {'Obsdatanum': '24', 'Obsdata': '8.26', 'ObsName': '移相75HZ度速度测量值'}, {'Obsdatanum': '25', 'Obsdata': '-8.26', 'ObsName': '移相-75HZ度速度计算值'}, {'Obsdatanum': '26', 'Obsdata': '-8.26', 'ObsName': '移相-75HZ度速度测量值'}], [{'Obsdatanum': '1', 'Obsdata': '0', 'ObsName': '输入电压'}, {'Obsdatanum': '2', 'Obsdata': '0', 'ObsName': '异常输入电压记录'}, {'Obsdatanum': '3', 'Obsdata': '0', 'ObsName': '输出电压'}, {'Obsdatanum': '4', 'Obsdata': '0', 'ObsName': '负载率'}, {'Obsdatanum': '5', 'Obsdata': '0', 'ObsName': '输入频率'}, {'Obsdatanum': '6', 'Obsdata': '0', 'ObsName': '电池电压'}, {'Obsdatanum': '7', 'Obsdata': '0', 'ObsName': '内部温度'}, {'Obsdatanum': '8', 'Obsdata': '0', 'ObsName': '市电故障'}, {'Obsdatanum': '9', 'Obsdata': '0', 'ObsName': '电池电压低'}, {'Obsdatanum': '10', 'Obsdata': '0', 'ObsName': '旁路启动'}, {'Obsdatanum': '11', 'Obsdata': '0', 'ObsName': 'UPS故障'}, {'Obsdatanum': '12', 'Obsdata': '0', 'ObsName': '自检进行中'}, {'Obsdatanum': '13', 'Obsdata': '0', 'ObsName': '启动关机'}]]}\n",
"}"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ds[0]"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "bea8a7c8-9929-4111-8072-bc9ebe36b03b",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "f677253f-7f8e-4fa3-9d16-49dcccd73188",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "bf5dd468-3e19-46d8-9c99-734d7e925673",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "b544ccc2-ef1b-4a87-b9f0-f28e76504f2e",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "9e6d70ec-8727-471c-94e8-01afc2e92b40",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "0e8b710b-5e04-4269-9f5b-850fdf91c01d",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "46b3b9f3-ed20-4fdd-900b-b29529f4c874",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "9fcf06a2-f2c2-4af7-9a4a-b1c87b56d3ac",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python [conda env:devmetgrs]",
"language": "python",
"name": "conda-env-devmetgrs-py"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.0"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Loading

0 comments on commit eb28d2e

Please sign in to comment.