diff --git a/continuous_integration/environment_actions.yml b/continuous_integration/environment_actions.yml index 3608f5f0..1effadca 100644 --- a/continuous_integration/environment_actions.yml +++ b/continuous_integration/environment_actions.yml @@ -18,3 +18,5 @@ dependencies: - coveralls - pre-commit - pip + - pip: + - git+https://github.com/openradar/open-radar-data diff --git a/continuous_integration/environment_documentation.yml b/continuous_integration/environment_documentation.yml index 8e43681b..ba3918bd 100644 --- a/continuous_integration/environment_documentation.yml +++ b/continuous_integration/environment_documentation.yml @@ -23,3 +23,5 @@ dependencies: - sphinx-gallery - sphinx-rtd-theme - urllib3 + - pip: + - git+https://github.com/openradar/open-radar-data diff --git a/examples/plot_cfad.py b/examples/plot_cfad.py index 8e07757b..23794654 100644 --- a/examples/plot_cfad.py +++ b/examples/plot_cfad.py @@ -8,11 +8,13 @@ import matplotlib.pyplot as plt from act.io.armfiles import read_netcdf +from open_radar_data import DATASETS import radtraq # Read in example data -ds = read_netcdf(radtraq.tests.sample_files.EXAMPLE_KAZR) +filename = DATASETS.fetch('sgpkazrgeC1.a1.20190529.000002.cdf') +ds = read_netcdf(filename) # Calculate CFAD histogram data_array = radtraq.plotting.cfad.calc_cfad(ds, 'reflectivity_copol') diff --git a/examples/plot_cloud_mask.py b/examples/plot_cloud_mask.py index 90416d49..be5d68e5 100644 --- a/examples/plot_cloud_mask.py +++ b/examples/plot_cloud_mask.py @@ -9,11 +9,13 @@ import act import matplotlib.pyplot as plt +from open_radar_data import DATASETS import radtraq # Read in sample data using ACT -ds = act.io.armfiles.read_netcdf(radtraq.tests.sample_files.EXAMPLE_KAZR) +filename = DATASETS.fetch('sgpkazrgeC1.a1.20190529.000002.cdf') +ds = act.io.armfiles.read_netcdf(filename) # Resample data for ease of processing ds = ds.resample(time='1min').nearest() diff --git a/examples/plot_corner_reflector_raster.py b/examples/plot_corner_reflector_raster.py index 66232119..d31d8d3b 100644 --- a/examples/plot_corner_reflector_raster.py +++ b/examples/plot_corner_reflector_raster.py @@ -8,14 +8,15 @@ """ - import matplotlib.pyplot as plt from act.io.armfiles import read_netcdf +from open_radar_data import DATASETS import radtraq # Read in sample data using ACT -ds = read_netcdf(radtraq.tests.sample_files.EXAMPLE_RASTER) +filename = DATASETS.fetch('sgpkasacrcrrasterC1.a1.20130419.012153.nc') +ds = read_netcdf(filename) # Process and plot raster file data = radtraq.plotting.corner_reflector.plot_cr_raster( diff --git a/examples/plot_mask_vpt.py b/examples/plot_mask_vpt.py index 50371e00..495690c3 100644 --- a/examples/plot_mask_vpt.py +++ b/examples/plot_mask_vpt.py @@ -11,17 +11,19 @@ import matplotlib.pyplot as plt import numpy as np from act.io.armfiles import read_netcdf +from open_radar_data import DATASETS import radtraq # Read in Example KAZR File using ACT -obj = read_netcdf(radtraq.tests.sample_files.EXAMPLE_KAZR) +filename = DATASETS.fetch('sgpkazrgeC1.a1.20190529.000002.cdf') +ds = read_netcdf(filename) # Resample to 1-minute to simplify processing -obj = obj.resample(time='1min').nearest() +ds = ds.resample(time='1min').nearest() # Process cloud mask in order to properly produce average VPT profiles through cloud -obj = radtraq.proc.cloud_mask.calc_cloud_mask(obj, 'reflectivity_copol') +ds = radtraq.proc.cloud_mask.calc_cloud_mask(ds, 'reflectivity_copol') # Variables to calculate average profiles variable = ['reflectivity_copol', 'mean_doppler_velocity_copol', 'reflectivity_xpol'] @@ -31,17 +33,17 @@ ygrid = np.arange(first_height, 15000, 50) # Calculate average profiles -obj = radtraq.proc.profile.calc_avg_profile( - obj, variable=variable, first_height=first_height, ygrid=ygrid +ds = radtraq.proc.profile.calc_avg_profile( + ds, variable=variable, first_height=first_height, ygrid=ygrid ) # Showing how to do this for multiple radars # Set up dictionary for profile comparison plotting rad_dict = { - 'sgpkazrgeC1.b1': {'object': obj, 'variable': variable[0]}, - 'sgpkazrge2C1.b1': {'object': obj, 'variable': variable[0]}, - 'sgpkazrmdC1.b1': {'object': obj, 'variable': 'reflectivity_xpol'}, - 'sgpkazrmd2C1.b1': {'object': obj, 'variable': 'reflectivity_xpol'}, + 'sgpkazrgeC1.b1': {'object': ds, 'variable': variable[0]}, + 'sgpkazrge2C1.b1': {'object': ds, 'variable': variable[0]}, + 'sgpkazrmdC1.b1': {'object': ds, 'variable': 'reflectivity_xpol'}, + 'sgpkazrmd2C1.b1': {'object': ds, 'variable': 'reflectivity_xpol'}, } # Plot up profiles and perform comparisons from data in dictionary @@ -51,4 +53,4 @@ plt.show() # Close out object -obj.close() +ds.close() diff --git a/examples/plot_self_consistency.py b/examples/plot_self_consistency.py index 572770eb..0db765fb 100644 --- a/examples/plot_self_consistency.py +++ b/examples/plot_self_consistency.py @@ -8,11 +8,13 @@ import matplotlib.pyplot as plt from act.io.armfiles import read_netcdf +from open_radar_data import DATASETS import radtraq # Read in example data -ds = read_netcdf(radtraq.tests.sample_files.EXAMPLE_CSAPR) +filename = DATASETS.fetch('csapr.nc') +ds = read_netcdf(filename) # Set thresholds of RhoHv > 0.99 thresh = {'copol_correlation_coeff': 0.99} diff --git a/examples/plot_zdr_check.py b/examples/plot_zdr_check.py index c215377f..ea1667bc 100644 --- a/examples/plot_zdr_check.py +++ b/examples/plot_zdr_check.py @@ -8,11 +8,13 @@ import matplotlib.pyplot as plt from act.io.armfiles import read_netcdf +from open_radar_data import DATASETS import radtraq # Read in example data -ds = read_netcdf(radtraq.tests.sample_files.EXAMPLE_XSAPR) +filename = DATASETS.fetch('sgpxsaprcfrvptI4.a1.20200205.100827.nc') +ds = read_netcdf(filename) thresh = {'cross_correlation_ratio_hv': [0.995, 1], 'reflectivity': [10, 30], 'range': [1000, 3000]} # Call RadTraQ function results = radtraq.proc.calc_zdr_offset(ds, zdr_var='differential_reflectivity', thresh=thresh) diff --git a/radtraq/tests/data/csapr.nc b/radtraq/tests/data/csapr.nc deleted file mode 100644 index b9ac5cff..00000000 Binary files a/radtraq/tests/data/csapr.nc and /dev/null differ diff --git a/radtraq/tests/data/houkasacrcfrM1.a1.20210922.150006.nc b/radtraq/tests/data/houkasacrcfrM1.a1.20210922.150006.nc deleted file mode 100644 index efb897f9..00000000 Binary files a/radtraq/tests/data/houkasacrcfrM1.a1.20210922.150006.nc and /dev/null differ diff --git a/radtraq/tests/data/houkasacrcfrM1.a1.20211122.164124.nc b/radtraq/tests/data/houkasacrcfrM1.a1.20211122.164124.nc deleted file mode 100644 index c4aec5e1..00000000 Binary files a/radtraq/tests/data/houkasacrcfrM1.a1.20211122.164124.nc and /dev/null differ diff --git a/radtraq/tests/data/sgpkasacrcrrasterC1.a1.20130419.012153.nc b/radtraq/tests/data/sgpkasacrcrrasterC1.a1.20130419.012153.nc deleted file mode 100644 index 7263cdcf..00000000 Binary files a/radtraq/tests/data/sgpkasacrcrrasterC1.a1.20130419.012153.nc and /dev/null differ diff --git a/radtraq/tests/data/sgpkazrgeC1.a1.20190529.000002.cdf b/radtraq/tests/data/sgpkazrgeC1.a1.20190529.000002.cdf deleted file mode 100644 index 0c3568ca..00000000 Binary files a/radtraq/tests/data/sgpkazrgeC1.a1.20190529.000002.cdf and /dev/null differ diff --git a/radtraq/tests/data/sgpxsaprcfrvptI4.a1.20200205.100827.nc b/radtraq/tests/data/sgpxsaprcfrvptI4.a1.20200205.100827.nc deleted file mode 100644 index ed9469d9..00000000 Binary files a/radtraq/tests/data/sgpxsaprcfrvptI4.a1.20200205.100827.nc and /dev/null differ diff --git a/radtraq/tests/sample_files.py b/radtraq/tests/sample_files.py index ef6ead7e..94f90dfd 100644 --- a/radtraq/tests/sample_files.py +++ b/radtraq/tests/sample_files.py @@ -9,14 +9,18 @@ :toctree: generated/ EXAMPLE_KAZR -""" -import os + EXAMPLE_RASTER + EXAMPLE_PPI + EXAMPLE_RHI + EXAMPLE_XSAPR + EXAMPLE_CSAPR -DATA_PATH = os.path.join(os.path.dirname(__file__), 'data') +""" +from open_radar_data import DATASETS -EXAMPLE_KAZR = os.path.join(DATA_PATH, 'sgpkazrgeC1.a1.20190529.000002.cdf') -EXAMPLE_RASTER = os.path.join(DATA_PATH, 'sgpkasacrcrrasterC1.a1.20130419.012153.nc') -EXAMPLE_PPI = os.path.join(DATA_PATH, 'houkasacrcfrM1.a1.20210922.150006.nc') -EXAMPLE_RHI = os.path.join(DATA_PATH, 'houkasacrcfrM1.a1.20211122.164124.nc') -EXAMPLE_XSAPR = os.path.join(DATA_PATH, 'sgpxsaprcfrvptI4.a1.20200205.100827.nc') -EXAMPLE_CSAPR = os.path.join(DATA_PATH, 'csapr.nc') +EXAMPLE_KAZR = DATASETS.fetch('sgpkazrgeC1.a1.20190529.000002.cdf') +EXAMPLE_RASTER = DATASETS.fetch('sgpkasacrcrrasterC1.a1.20130419.012153.nc') +EXAMPLE_PPI = DATASETS.fetch('houkasacrcfrM1.a1.20210922.150006.nc') +EXAMPLE_RHI = DATASETS.fetch('houkasacrcfrM1.a1.20211122.164124.nc') +EXAMPLE_XSAPR = DATASETS.fetch('sgpxsaprcfrvptI4.a1.20200205.100827.nc') +EXAMPLE_CSAPR = DATASETS.fetch('csapr.nc') diff --git a/radtraq/tests/test_plotting.py b/radtraq/tests/test_plotting.py index 35dd53d1..e275eb32 100644 --- a/radtraq/tests/test_plotting.py +++ b/radtraq/tests/test_plotting.py @@ -4,15 +4,15 @@ from act.io.armfiles import read_netcdf from matplotlib.figure import Figure +import radtraq from radtraq.plotting.cfad import calc_cfad, plot_cfad from radtraq.plotting.corner_reflector import plot_cr_raster from radtraq.plotting.self_consistency import plot_self_consistency -from radtraq.tests.sample_files import EXAMPLE_CSAPR, EXAMPLE_KAZR, EXAMPLE_RASTER @pytest.mark.mpl_image_compare(tolerance=10) def test_plotting(): - obj = read_netcdf(EXAMPLE_KAZR) + obj = read_netcdf(radtraq.tests.sample_files.EXAMPLE_KAZR) np.seterr(divide='ignore') data_array = calc_cfad(obj, 'reflectivity_copol') @@ -23,7 +23,7 @@ def test_plotting(): @pytest.mark.mpl_image_compare(tolerance=10) def test_corner_reflector(): - obj = read_netcdf(EXAMPLE_RASTER) + obj = read_netcdf(radtraq.tests.sample_files.EXAMPLE_RASTER) data = plot_cr_raster(obj, target_range=478.0, el_limits=[-0.5, 2.5], noplot=False) np.testing.assert_almost_equal(data['max'], 12.09, decimal=2) @@ -41,7 +41,7 @@ def test_corner_reflector(): @pytest.mark.mpl_image_compare(tolerance=10) def test_self_consistency(): - obj = read_netcdf(EXAMPLE_CSAPR) + obj = read_netcdf(radtraq.tests.sample_files.EXAMPLE_CSAPR) thresh = {'copol_correlation_coeff': 0.99} # Set up dictionary of variables to plot var_dict = { diff --git a/requirements.txt b/requirements.txt index 32a8d360..1baff51f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,3 +7,4 @@ xarray matplotlib netcdf4 pint +open_radar_data