Giter Site home page Giter Site logo

yvzheng / pycwr Goto Github PK

View Code? Open in Web Editor NEW
208.0 21.0 77.0 23.52 MB

The China Weather Radar Toolkit, support most of China's radar formats(WSR98D, CINRAD/SA/SB/CB, CINRAD/CC/CCJ, CINRAD/SC/CD)

License: MIT License

Python 99.10% Batchfile 0.02% Shell 0.01% Cython 0.87%
hydrology weather-radars python

pycwr's Introduction

avatar

pycwr (Python China Weather Radar tools library)

Documents

The documentation will be built on readthedocs and is available at the pycwr documents website.

Install pycwr Library

The easiest route to installing pycwr is through pip and conda:

if you haven't install cartopy, for all platforms installing cartopy can be done with:

conda install -c conda-forge cartopy

and you can install pycwr with pip:

pip install pycwr

Also, you can install from source code:

git clone https://github.com/YvZheng/pycwr.git
cd pycwr
python setup.py install    

Read Radar Basedata to PRD (Polarimetry Radar Data) class or Py-ART Radar class

from pycwr.io import read_auto
file = r"./Z_RADR_I_Z9898_20190828192401_O_DOR_SAD_CAP_FMT.bin.bz2"
PRD = read_auto(file)
PyartRadar = PRD.ToPyartRadar()

The data structure of the PRD is as follows:

Plotting PPI with map

import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from pycwr.draw.RadarPlot import Graph, GraphMap
ax = plt.axes(projection=ccrs.PlateCarree())
graph = GraphMap(PRD, ccrs.PlateCarree())
graph.plot_ppi_map(ax, 0, "dBZ", cmap="pyart_NWSRef")
ax.set_title("example of PPI with map", fontsize=16)
plt.show()

avatar

Plotting PPI

fig, ax = plt.subplots()
graph = Graph(PRD)
graph.plot_ppi(ax, 0, "dBZ", cmap="pyart_NWSRef")
graph.add_rings(ax, [0, 50, 100, 150, 200, 250, 300])
ax.set_title("example of PPI", fontsize=16)
ax.set_xlabel("Distance From Radar In East (km)", fontsize=14)
ax.set_ylabel("Distance From Radar In North (km)", fontsize=14)

avatar

Plotting VCS with lat lon position

fig, ax = plt.subplots()
graph = GraphMap(PRD, ccrs.PlateCarree())
graph.plot_vcs_map(ax, (120.8, 27.8), (122.9, 26.8), "dBZ", cmap="pyart_NWSRef")
ax.set_ylim([0,15])
ax.set_ylabel("Height (km)", fontsize=14)
ax.set_xlabel("Latitude, Longitude", fontsize=14)
ax.set_title("VCS exmaple", fontsize=16)
plt.show()

avatar

Plotting VCS with x y position

fig, ax = plt.subplots()
graph = Graph(PRD)
graph.plot_vcs(ax, (0,0), (150, 0), "dBZ", cmap="pyart_NWSRef")
ax.set_ylim([0,15])
ax.set_ylabel("Height (km)", fontsize=14)
ax.set_xlabel("Distance From Section Start (Uints:km)", fontsize=14)
ax.set_title("VCS exmaple", fontsize=16)
plt.show()

avatar

Launch Graphical interface to show Radar Data

 python scripts/LaunchGUI.py

The main window opens as shown below:

more example via: exmaple

Project development plan

  • WSR98D, CINRAD/SA/SB/CB, CINRAD/CC/CCJ, CINRAD/SC/CD support
  • Cfradial Read support
  • Write to Cfradial support
  • Automatically identify radar and obtain latitude and longitude information (SA/SB/CB)
  • Automatic recognition of radar data format types
  • transform to Pyart Radar object
  • Graphical interface support
  • Radar vertical profile support
  • Interpolation algorithm support
  • PPI drawing support, overlay map support
  • RHI drawing support
  • Multi-radar inversion algorithm support
  • Radar product algorithm support
  • Doppler Radar/Dual polarization radar quality control algorithm
  • DSD Algorithm Support for Dual Polarization Radar
  • Doppler radar wind field retrieve support
  • Radar quantitative precipitation estimation algorithm support
  • Radar extrapolation algorithm support
  • Radar quantitative precipitation forecast algorithm support

pycwr's People

Contributors

bugsuse avatar daxinnan avatar yvzheng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pycwr's Issues

基数据等经纬度网格化问题

您好,对于读取的PRD数据中dBZ产品,dim为 time ,range,如何转换为等经纬度间隔比如0.01度的dBZ DataArray呢?我尝试使用pycwr\interp\RadarInterp.py 中radar_interp2d函数,这个函数处理的似乎是 笛卡尔坐标系xyz,对于经纬度坐标是否适合呢,是否有相应解决办法呢?

关于HCL水凝物分类的问题

与Rose的计算结果似乎有差别,很多小雨的部分被识别成了晴空回波

Rose的结果
image


pycwr计算的结果
image


不知道问题出在哪里?

Import pycwr时报错

在使用pycwr的时候,其会在import时报错。报错信息如图所示。我的python版本是3.10.9,numpy版本1.26.3。请问这种情况应该怎么处理?
bf6a6d2311a2ed8d2564a1f99837130a

【求助极坐标转直角坐标】

你好,我想问一下,有什么方法能将雷达的径向数据转成直角坐标吗,就是CAPPI那样,我不是气象专业的,不太懂具体的转换方法,现在做雷达外推需要CAPPI这种直角坐标的数据

Crash when loading SC radar data

When I try to load SC radar files from yibin radar, the GUI crashes with the error:

(radar-dev) meso@helsinki-station:~/dev/NuistRadar/scripts$ python LaunchGUI.py Traceback (most recent call last): File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/GraphicalInterface/RadarInterface.py", line 301, in on_actionopen_2_triggered self.radar_dat = self.Read_radar(ReadFile) File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/GraphicalInterface/RadarInterface.py", line 215, in Read_radar radar_obj = radar_io(filename) File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/io/auto_io.py", line 15, in __init__ self.radar_obj = SCFile.SC2NRadar(SCFile.SCBaseData(filename)) File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/io/SCFile.py", line 22, in __init__ self.header = self._parse_BaseDataHeader(buf_header) File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/io/SCFile.py", line 57, in _parse_BaseDataHeader BaseDataHeader_dict['LayerParam'].setflags(write=1) ## set writeable ValueError: cannot set WRITEABLE flag to True of this array Aborted (core dumped)

Z_RADR_I_Z9831_20190427200200_O_DOR_SC_CAP.zip

谢谢你。

站点信息显示错误。SAB型号雷达无法正确显示站点信息

对于一些雷达站,站名和位置信息无法正确显示,后面的绘图脚本的地理位置也出现错误。
对于Z9591、Z9592雷达,均能正常显示位置,radar_format函数将其识别成了WSR98D型号雷达。
对于Z9794抚州雷达,错误的显示成了南京雷达。经检查,是radar_format函数将其识别成了SAB型号雷达。
经检查,SAB雷达格式的定义文件pycwr/io/SABFile.py并未包含对站点信息(站名、经纬度海拔)的读取!
image

风场反演

请问方便给个风场反演的实例吗?

风场反演

windfield文件中VVP函数的输入az_num和bin_num分别是什么,PPI_Vr的可以在PRD中直接得到吗还是需要自己做一下退模糊处理

采取read_PA读取X波段相控阵雷达数据失败

1678185265627

AssertionError: file in not a stardand phase array base file!
请问是x波段相控阵雷达的格式变化了吗?我的文件名和示例文件名是一致的,Z_RADR_I_ZGZ06_20220616110037_O_DOR_DXK_CAR.bin.bz2

叠加地图出错

叠加地图出错
pycwr==0.2.13

(radar) D:\weather\pycwr2>python scripts\LaunchGUI.py
Traceback (most recent call last):
File "C:\Anaconda3\envs\radar\lib\site-packages\pycwr\GraphicalInterface\RadarInterface.py", line 287, in on_listWidget_itemDoubleClicked
self.actionwithmap.isChecked(), self.actioncontinuous.isChecked())
File "C:\Anaconda3\envs\radar\lib\site-packages\pycwr\GraphicalInterface\RadarInterface.py", line 403, in plot_graph_PPI
field_name[product], continuously=continuously)
File "C:\Anaconda3\envs\radar\lib\site-packages\pycwr\draw\SingleRadarPlotMap.py", line 104, in GUI_plot
clabel=clabel, continuously=continuously)
File "C:\Anaconda3\envs\radar\lib\site-packages\pycwr\draw\SingleRadarPlotMap.py", line 211, in plot_ppi_map
pm = ax.pcolormesh(lon, lat, radar_data, transform=projection, cmap=cmap, norm = norm, zorder=4)
File "C:\Anaconda3\envs\radar\lib\site-packages\cartopy\mpl\geoaxes.py", line 1459, in pcolormesh
result = self._pcolormesh_patched(*args, **kwargs)
File "C:\Anaconda3\envs\radar\lib\site-packages\cartopy\mpl\geoaxes.py", line 1491, in _pcolormesh_patched
X, Y, C = self._pcolorargs('pcolormesh', *args, allmatch=allmatch)
File "C:\Anaconda3\envs\radar\lib\site-packages\matplotlib\axes_axes.py", line 5717, in _pcolorargs
'x and y arguments to pcolormesh cannot have '
ValueError: x and y arguments to pcolormesh cannot have non-finite values or be of type numpy.ma.core.MaskedArray with masked values

安装错误:proj没有安装

直接通过pip安装会提示没有安装Proj 4.9.0,而通过pip安装proj只能找到0.2.0版本的
建议修改一下README

CC雷达数据读取时三种异常

您好,在使用CC雷达数据进行测试时,出现三种类型异常。
一种是:
---> 55 assert BaseDataHeader_dict['ObsParam1']['ucScanMode'] > 100, "only vol support!"
56 self.nsweeps = BaseDataHeader_dict['ObsParam1']['ucScanMode'] - 100
57 BaseDataHeader_dict['CutConfig'] = np.frombuffer(buf_header,
AssertionError: only vol support!

一种是:
39 """检查雷达数据是否完整"""
40 buf_radial_data = self.fid.read()
---> 41 assert len(buf_radial_data) == self.nrays * dtype_cc.PerRadialSize, "CC basedata size has problems!"
42 return
43
AssertionError: CC basedata size has problems!

一种是:
57 BaseDataHeader_dict['CutConfig'] = np.frombuffer(buf_header,
58 dtype_cc.BaseDataHeader['CutConfigX30'],
count=self.nsweeps,
---> 59 offset=dtype_cc.CutSize_pos)
60 ##解码第二部分观测参数
61 BaseDataHeader_dict['ObsParam2'], _ = _unpack_from_buf(buf_header,
ValueError: buffer is smaller than requested size

请问要如何解决?是否是数据源问题?

请问怎么循环绘制

比如我只去0-40DBZ的数据,40-50DBZ的数据,数据确定是对应区间的,但是出来的颜色却明显不是应该有的颜色。。。。。

部分数据文件graph.plot_vcs出错

部分数据文件graph.plot_vcs出错,部分正常运行

环境:python=3.7,cartopy=0.17.0,pycwr=0.2.13

如下出错信息:
Traceback (most recent call last):
File "pycwr.py", line 48, in
graph.plot_vcs(ax, (0,0), (0, 230), "dBZ", cmap="pyart_NWSRef")
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\pycwr\draw\RadarPlot.py", line 91, in plot_vcs
mesh_xy, mesh_z, field_data = self.Radar.get_vcs_data(start_point, end_point, field_name)
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\pycwr\core\NRadar.py", line 196, in get_vcs_data
range=xr.DataArray(ranges, dims="vcs_r"), method="nearest") ##选取插值的点
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\dataarray.py", line 1051, in sel
**indexers_kwargs,
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\dataset.py", line 2014, in sel
self, indexers=indexers, method=method, tolerance=tolerance
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\coordinates.py", line 392, in remap_label_indexers
obj, v_indexers, method=method, tolerance=tolerance
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\indexing.py", line 260, in remap_label_indexers
idxr, new_idx = convert_label_indexer(index, label, dim, method, tolerance)
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\indexing.py", line 190, in convert_label_indexer
indexer = get_indexer_nd(index, label, method, tolerance)
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\xarray\core\indexing.py", line 103, in get_indexer_nd
flat_indexer = index.get_indexer(flat_labels, method=method, tolerance=tolerance)
File "d:\apps\Anaconda3\envs\radar\lib\site-packages\pandas\core\indexes\base.py", line 2985, in get_indexer
"Reindexing only valid with uniquely" " valued Index objects"
pandas.core.indexes.base.InvalidIndexError: Reindexing only valid with uniquely valued Index objects

retrive的风场反演

请问作者可以提供风场反演的example文档吗?还有退模糊的函数这个库有有支持吗?

issue starting gui

Hi guys,

Is the gui supposed to be working?
I have the corret version of PyQt5 installed, 5.13.1 (as per the setup), but I get this error on start-up. I'm on a linux machine too running Python 3.7 under anaconda.

(radar-dev) meso@helsinki-station:~/dev/NuistRadar$ python scripts/LaunchGUI.py Traceback (most recent call last): File "scripts/LaunchGUI.py", line 10, in <module> ui = MainWindow() File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/GraphicalInterface/RadarInterface.py", line 157, in __init__ self.setupUi(self) File "/home/meso/miniconda3/envs/radar-dev/lib/python3.6/site-packages/NuistRadar-0.1-py3.6.egg/NuistRadar/GraphicalInterface/RadarUI.py", line 558, in setupUi self.actionwithmap.setShortcutVisibleInContextMenu(False) AttributeError: 'QAction' object has no attribute 'setShortcutVisibleInContextMenu'

Better setup.py

It's better to set requires like this: netCDF4 >= 1.1.8, instead of exact version.

关于pyinstaller打包的问题

本人小白。最近在用pycwr写一个定时执行绘图的程序,在使用pyinstaller打包是总是出现错误。

分析了pycwr源码中,pycwr\data\下有一个default_opendir.json文件,请问是需要修改改文件下的路径吗?亦或是有其他需要修改的地方?

万分感谢!

无法读图

请问,这种问题是怎么回事儿?。。。
代码:
from pycwr.io import read_auto
from pycwr.draw.SingleRadarPlotMap import RadarGraphMap
import matplotlib.pyplot as plt

filename = r"F:/Z_RADR_I_Z9250_20180609220600_O_DOR_SA_CAP.bin.bz2"

PRD = read_auto(filename)
graph = RadarGraphMap(PRD)
graph.plot(0, "dBZ", continuously=True)
plt.show()

报错:
E:\Program Files\JetBrains\PyCharm 2019.1\helpers\pycharm_matplotlib_backend\backend_interagg.py:64: UserWarning: This figure includes Axes that are not compatible with tight_layout, so results might be incorrect.
self.figure.tight_layout()
E:\Software\anaconda3\envs\snowflake\lib\site-packages\cartopy\io_init_.py:260: DownloadWarning: Downloading: https://naciscdn.org/naturalearth/50m/physical/ne_50m_ocean.zip
warnings.warn('Downloading: {}'.format(url), DownloadWarning)
Traceback (most recent call last):
File "F:/源码/PycharmProjects/pythonLearning/read.py", line 10, in
plt.show()
File "E:\Software\anaconda3\envs\snowflake\lib\site-packages\matplotlib\pyplot.py", line 272, in show
return _show(*args, **kw)

画出来的图有些失真是怎么回事

请教一下老师,用这个包画出来的图有失真现象,例如没有径向辐合,而实际是有的(小时雨强160+),这是怎么回事呀?
数据是C波段双偏振雷达基数据。(Z9095.AR2格式)

Import error with Cython support

Code

from pycwr.draw.RadarPlot import Graph, GraphMap

Error

Traceback (most recent call last):
  File "crf.py", line 4, in <module>
    from pycwr.draw.RadarPlot import Graph, GraphMap
  File "/yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/pycwr-0.2.14-py3.7-linux-x86_64.egg/pycwr/__init__.py", line 1, in <module>
    from . import configure, core, draw, io, interp
  File "/yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/pycwr-0.2.14-py3.7-linux-x86_64.egg/pycwr/core/__init__.py", line 1, in <module>
    from . import NRadar, PyartRadar, transforms, RadarGrid, RadarGridC
  File "/yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/pycwr-0.2.14-py3.7-linux-x86_64.egg/pycwr/core/NRadar.py", line 13, in <module>
    from .RadarGridC import get_CR_xy, get_CAPPI_xy
ImportError: /yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/pycwr-0.2.14-py3.7-linux-x86_64.egg/pycwr/core/RadarGridC.cpython-37m-x86_64-linux-gnu.so: undefined symbol: __intel_sse2_strchr

Version

0.2.14

Solution

Specify compiler such as gcc:

CC=gcc pip install cython
CC=gcc python setup.py install

Or icc:

CC=icc pip install cython
LDSHARED="icc -shared" CC=icc python setup.py install

Reference

Can cython be compiled with icc?

Support proplot

Problem

  1. The ax passed by proplot is GeoAxes instead of GeoAxesSubplot.
  2. proplot doesn't accept matplotlib.colors.BoundaryNorm. Instead, it uses BinNorm.

Code

proplot version

import cartopy.crs as ccrs
import proplot as plot
from pycwr.draw.RadarPlot import Graph, GraphMap
from pycwr.io.auto_io import radar_io

proj = ccrs.PlateCarree()
f, axs = plot.subplots(proj=proj)

dir = '/yin_raid/xin/data/radar/guangzhou/'
file = "Z_RADR_I_Z9200_20160506100000_O_DOR_SA_CAP.bin.bz2"
data = radar_io(dir+file)
NRadar = data.ToPRD()

graph = GraphMap(NRadar, ccrs.PlateCarree())
ax=axs[0]
graph.plot_crf_map(ax)

matplotlib version

import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from pycwr.draw.RadarPlot import Graph, GraphMap
from pycwr.io.auto_io import radar_io

dir = '/yin_raid/xin/data/radar/guangzhou/'
file = "Z_RADR_I_Z9200_20160506100000_O_DOR_SA_CAP.bin.bz2"
data = radar_io(dir+file)
NRadar = data.ToPRD()

lon_min = 111.5; lon_max = 115
lat_min = 22.5; lat_max = 25
ax = plt.axes(projection=ccrs.PlateCarree())
graph = GraphMap(NRadar, ccrs.PlateCarree())
graph.plot_crf_map(ax)
ax.set_xlim([lon_min, lon_max])
ax.set_ylim([lat_min, lat_max])

Error of proplot version

Error 1

Traceback (most recent call last):
  File "crf.py", line 21, in <module>
    graph.plot_crf_map(ax)
  File "/yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/pycwr-0.2.14-py3.7-linux-x86_64.egg/pycwr/draw/RadarPlot.py", line 368, in plot_crf_map
    assert isinstance(ax, cartopy.mpl.geoaxes.GeoAxesSubplot), "axes is not cartopy axes!"
AssertionError: axes is not cartopy axes!

Error 2

  File "crf.py", line 20, in <module>
    graph.plot_crf_map(ax)
  ......................
  File "/yin_raid/xin/miniconda3/envs/pycwr/lib/python3.7/site-packages/proplot/styletools.py", line 2614, in __init__
    f'Normalizer cannot be an instance of '
ValueError: Normalizer cannot be an instance of matplotlib.colors.BoundaryNorm.

Solution of proplot version

Solution 1

Use tuple in isinstance:

assert isinstance(ax, (cartopy.mpl.geoaxes.GeoAxes, cartopy.mpl.geoaxes.GeoAxesSubplot)), "axes is not cartopy axes!"

Solution 2

Use levels instead of norm for proplot:

pm = ax.pcolormesh(lon, lat, radar_data, transform=self.transform, cmap=cmap, levels=levels, zorder=4, **kwargs)

Output Figures

matplotlib version

matplotlib

proplot version

proplot

Final solution

We need to find a better solution of supporting both matplotlib and proplot.

请问能否将pyart读取后的 Radar 对象转换为 PRD 对象?

我已经使用 PyArt 成功读取数据为PyartRadar.Radar对象,但现在希望使用 pycwr 进行一些处理,请问我该如何将这个 PyartRadar.Radar 对象转换为 PRD 对象呢? 只能自己另写一个接口吗
我看了 pycwr 的文档,似乎只有读取几类雷达数据格式,以及将PRD对象转化为 Radar对象的方法

cfradial.py: _FillValue attribute must be set when variable is created

pycwr==0.2.11

pyart.io.write_cfradial("t.nc", radar)

File "C:\Anaconda3\envs\radar\lib\site-packages\pyart\io\cfradial.py", line 543, in write_cfradial
_create_ncvar(dic, dataset, field, ('time', 'range'))
File "C:\Anaconda3\envs\radar\lib\site-packages\pyart\io\cfradial.py", line 777, in _create_ncvar
ncvar.setncattr('_FillValue', fv)
File "netCDF4_netCDF4.pyx", line 4123, in netCDF4._netCDF4.Variable.setncattr
AttributeError: _FillValue attribute must be set when variable is created (using fill_value keyword to createVariable)

注释773之后几行正常
"""
# remove _FillValue and replace to make it the third attribute.
if '_FillValue' in ncvar.ncattrs():
fv = ncvar._FillValue
ncvar.delncattr('_FillValue')
ncvar.setncattr('_FillValue', fv)
"""

Upload to conda-forge

It's better to upload this package to conda-forge. Then, it would be much more convenient for users to install.

Just leave this here for future development ...

Small font size on 4K screen

image
As shown in this picture, the font size is too small with the default window size.

But, it looks fine when the window is maximized:
image

cappi画图出现截断的问题

cappi画出来的雷达回波图,就好像是再图的**截取了一个圆形,比如画460*460,1500m高的cappi,结果只有中间半径为100的圆形,其他的回波被截断了。

WSR-88D是否支持?

pycwr 是否支持 WSR-88D?如果不支持,WSR-88D 跟 WSR-98D 有啥区别?应该如何读取?

显示不了0.5度

from pycwr.io.auto_io import radar_io
from pycwr.draw.SingleRadarPlotMap import RadarGraphMap
import matplotlib.pyplot as plt

filename = r"D:\cl\Z9591.20200214.075822.AR2.bz2"

PRD = radar_io(filename).ToPRD()
graph = RadarGraphMap(PRD)
graph.plot(0, "dBZ")
plt.show()


(base) C:\Users\Administrator.USER-20190423EA>C:/ProgramData/Anaconda3/python.exe c:/Users/Administrator.USER-20190423EA/Desktop/pycwr/test.py
Traceback (most recent call last):
File "c:/Users/Administrator.USER-20190423EA/Desktop/pycwr/test.py", line 47, in
graph.plot(0, "dBZ")
File "C:\ProgramData\Anaconda3\lib\site-packages\pycwr-0.2.10-py3.7.egg\pycwr\draw\SingleRadarPlot.py", line 55, in plot
clabel=clabel, dark=dark, continuously=continuously)
File "C:\ProgramData\Anaconda3\lib\site-packages\pycwr-0.2.10-py3.7.egg\pycwr\draw\SingleRadarPlot.py", line 142, in simple_plot_ppi
assert radar_data is not None, "radar_data should not be None!"
AssertionError: radar_data should not be None!

雷达数据质量控制

老师我想请问一下,pycwr的雷达数据质量控制模块什么时候能够上线呢?

关于安装的问题

安装完后,在导入时问题报错:“ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()”
IMG_3420

运行pycwr报错

ValueError: operands could not be broadcast together with shapes (10,) (9,),运行pycwr出现上述错误,请问如何解决

如何选取坐标范围

画但雷达图只能用工具放大或缩小,请问一下如何自己设定坐标范围呢

径向扫描范围问题

f250c19969fd5a749f7d38d2b60561a

左图是我用pycwr解出来的雷达数据,放进arps的结果,右图是其他程序解码的结构。pycwr径向扫描范围好像不够,是否设置了扫描范围上限呢?

0.4.0安装环境

安装的时候出现了若干bug,发现是numpy和matplotlib版本不兼容,最后用了这个环境安装成功
matplotlib<=3.6
python=3.10
numpy=1.26.4
requirements.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.