You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@climate.apache.org by go...@apache.org on 2016/07/29 17:19:35 UTC
[05/18] climate git commit: CLIMATE-488 - Change Dataset.time_range
to Dataset.temporal_boundaries
CLIMATE-488 - Change Dataset.time_range to Dataset.temporal_boundaries
Project: http://git-wip-us.apache.org/repos/asf/climate/repo
Commit: http://git-wip-us.apache.org/repos/asf/climate/commit/e823b03c
Tree: http://git-wip-us.apache.org/repos/asf/climate/tree/e823b03c
Diff: http://git-wip-us.apache.org/repos/asf/climate/diff/e823b03c
Branch: refs/heads/CLIMATE-825
Commit: e823b03c9ba732f42909ad7b5e5b1a41fa321824
Parents: 442a9b2
Author: Ibrahim Jarif <ja...@gmail.com>
Authored: Sun Jul 24 23:19:41 2016 +0530
Committer: Ibrahim Jarif <ja...@gmail.com>
Committed: Sun Jul 24 23:19:41 2016 +0530
----------------------------------------------------------------------
RCMES/cli_app.py | 8 ++++----
RCMES/test/test.py | 2 +-
docs/source/ocw/overview.rst | 2 +-
examples/knmi_to_cru31_full_bias.py | 2 +-
examples/model_ensemble_to_rcmed.py | 2 +-
ocw-ui/backend/tests/test_processing.py | 2 +-
ocw/dataset.py | 16 ++++++++--------
ocw/dataset_processor.py | 4 ++--
ocw/tests/test_dataset.py | 18 +++++++++---------
ocw/tests/test_dataset_processor.py | 4 ++--
ocw/utils.py | 4 ++--
ocw_config_runner/configuration_parsing.py | 2 +-
ocw_config_runner/configuration_writer.py | 4 ++--
.../example/time_series_plot_example.yaml | 2 +-
ocw_config_runner/plot_generation.py | 4 ++--
ocw_config_runner/tests/test_config_writer.py | 4 ++--
16 files changed, 40 insertions(+), 40 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/RCMES/cli_app.py
----------------------------------------------------------------------
diff --git a/RCMES/cli_app.py b/RCMES/cli_app.py
index be46de8..10ea6c4 100644
--- a/RCMES/cli_app.py
+++ b/RCMES/cli_app.py
@@ -457,8 +457,8 @@ def load_esgf_obs_screen(header):
'database':"{0}".format(netCDF_path),
'dataset_id':"esgf".format(esgf_variable),
'parameter_id':"{0}".format(esgf_variable),
- 'start_date': obs_dataset.time_range()[0].strftime("%Y-%m-%d"),
- 'end_date':obs_dataset.time_range()[1].strftime("%Y-%m-%d"),
+ 'start_date': obs_dataset.temporal_boundaries()[0].strftime("%Y-%m-%d"),
+ 'end_date':obs_dataset.temporal_boundaries()[1].strftime("%Y-%m-%d"),
#'bounding_box':obs['bounding_box'],
'timestep':"monthly",
'min_lat':obs_dataset.spatial_boundaries()[0],
@@ -798,8 +798,8 @@ def get_models_temp_bound():
models_start_time = []
models_end_time = []
for model in model_datasets:
- models_start_time.append(model.time_range()[0])
- models_end_time.append(model.time_range()[1])
+ models_start_time.append(model.temporal_boundaries()[0])
+ models_end_time.append(model.temporal_boundaries()[1])
return models_start_time, models_end_time
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/RCMES/test/test.py
----------------------------------------------------------------------
diff --git a/RCMES/test/test.py b/RCMES/test/test.py
index bbb8095..5071187 100644
--- a/RCMES/test/test.py
+++ b/RCMES/test/test.py
@@ -83,7 +83,7 @@ print("Calculating the Maximum Overlap in Time for the datasets")
cru_start = datetime.datetime.strptime(cru_31['start_date'], "%Y-%m-%d")
cru_end = datetime.datetime.strptime(cru_31['end_date'], "%Y-%m-%d")
-knmi_start, knmi_end = knmi_dataset.time_range()
+knmi_start, knmi_end = knmi_dataset.temporal_boundaries()
# Grab the Max Start Time
start_time = max([cru_start, knmi_start])
# Grab the Min End Time
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/docs/source/ocw/overview.rst
----------------------------------------------------------------------
diff --git a/docs/source/ocw/overview.rst b/docs/source/ocw/overview.rst
index 9ef94da..5aa0ff8 100644
--- a/docs/source/ocw/overview.rst
+++ b/docs/source/ocw/overview.rst
@@ -12,7 +12,7 @@ The Apache Open Climate Workbench toolkit aims to provide a suit of tools to mak
Common Data Abstraction
-----------------------
-The OCW :class:`dataset.Dataset` class is the primary data abstraction used throughout OCW. It facilitates the uniform handling of data throughout the toolkit and provides a few useful helper functions such as :func:`dataset.Dataset.spatial_boundaries` and :func:`dataset.Dataset.time_range`. Creating a new dataset object is straightforward but generally you will want to use an OCW data source to load the data for you.
+The OCW :class:`dataset.Dataset` class is the primary data abstraction used throughout OCW. It facilitates the uniform handling of data throughout the toolkit and provides a few useful helper functions such as :func:`dataset.Dataset.spatial_boundaries` and :func:`dataset.Dataset.temporal_boundaries`. Creating a new dataset object is straightforward but generally you will want to use an OCW data source to load the data for you.
Data Sources
------------
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/examples/knmi_to_cru31_full_bias.py
----------------------------------------------------------------------
diff --git a/examples/knmi_to_cru31_full_bias.py b/examples/knmi_to_cru31_full_bias.py
index e37e887..c6aa327 100644
--- a/examples/knmi_to_cru31_full_bias.py
+++ b/examples/knmi_to_cru31_full_bias.py
@@ -83,7 +83,7 @@ print("Calculating the Maximum Overlap in Time for the datasets")
cru_start = datetime.datetime.strptime(cru_31['start_date'], "%Y-%m-%d")
cru_end = datetime.datetime.strptime(cru_31['end_date'], "%Y-%m-%d")
-knmi_start, knmi_end = knmi_dataset.time_range()
+knmi_start, knmi_end = knmi_dataset.temporal_boundaries()
# Grab the Max Start Time
start_time = max([cru_start, knmi_start])
# Grab the Min End Time
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/examples/model_ensemble_to_rcmed.py
----------------------------------------------------------------------
diff --git a/examples/model_ensemble_to_rcmed.py b/examples/model_ensemble_to_rcmed.py
index a9303dd..14b92b9 100644
--- a/examples/model_ensemble_to_rcmed.py
+++ b/examples/model_ensemble_to_rcmed.py
@@ -99,7 +99,7 @@ print("Calculating the Maximum Overlap in Time for the datasets")
cru_start = datetime.datetime.strptime(cru_31['start_date'], "%Y-%m-%d")
cru_end = datetime.datetime.strptime(cru_31['end_date'], "%Y-%m-%d")
-knmi_start, knmi_end = knmi_dataset.time_range()
+knmi_start, knmi_end = knmi_dataset.temporal_boundaries()
# Set the Time Range to be the year 1989
start_time = datetime.datetime(1989,1,1)
end_time = datetime.datetime(1989,12,1)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw-ui/backend/tests/test_processing.py
----------------------------------------------------------------------
diff --git a/ocw-ui/backend/tests/test_processing.py b/ocw-ui/backend/tests/test_processing.py
index cc26b26..a1234de 100644
--- a/ocw-ui/backend/tests/test_processing.py
+++ b/ocw-ui/backend/tests/test_processing.py
@@ -88,7 +88,7 @@ class TestRCMEDDatasetLoad(unittest.TestCase):
def test_valid_load(self):
dataset = bp._load_rcmed_dataset_object(self.dataset_info, self.eval_bounds)
lat_min, lat_max, lon_min, lon_max = dataset.spatial_boundaries()
- start_time, end_time = dataset.time_range()
+ start_time, end_time = dataset.temporal_boundaries()
self.assertTrue(self.eval_bounds['lat_min'] <= lat_min)
self.assertTrue(self.eval_bounds['lat_max'] >= lat_max)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw/dataset.py
----------------------------------------------------------------------
diff --git a/ocw/dataset.py b/ocw/dataset.py
index 78e6c14..f9c344e 100644
--- a/ocw/dataset.py
+++ b/ocw/dataset.py
@@ -91,7 +91,7 @@ class Dataset:
return (float(numpy.min(self.lats)), float(numpy.max(self.lats)),
float(numpy.min(self.lons)), float(numpy.max(self.lons)))
- def time_range(self):
+ def temporal_boundaries(self):
'''Calculate the temporal range
:returns: The start and end date of the Dataset's temporal range as
@@ -200,16 +200,16 @@ class Dataset:
def __str__(self):
lat_min, lat_max, lon_min, lon_max = self.spatial_boundaries()
- start, end = self.time_range()
+ start, end = self.temporal_boundaries()
lat_range = "({}, {})".format(lat_min, lon_min)
lon_range = "({}, {})".format(lon_min, lon_min)
- time_range = "({}, {})".format(start, end)
+ temporal_boundaries = "({}, {})".format(start, end)
formatted_repr = (
"<Dataset - name: {}, "
"lat-range: {}, "
"lon-range: {}, "
- "time_range: {}, "
+ "temporal_boundaries: {}, "
"var: {}, "
"units: {}>"
)
@@ -218,7 +218,7 @@ class Dataset:
self.name if self.name != "" else None,
lat_range,
lon_range,
- time_range,
+ temporal_boundaries,
self.variable,
self.units
)
@@ -363,17 +363,17 @@ class Bounds(object):
def __str__(self):
lat_range = "({}, {})".format(self._lat_min, self._lat_max)
lon_range = "({}, {})".format(self._lon_min, self._lon_max)
- time_range = "({}, {})".format(self._start, self._end)
+ temporal_boundaries = "({}, {})".format(self._start, self._end)
formatted_repr = (
"<Bounds - "
"lat-range: {}, "
"lon-range: {}, "
- "time_range: {}> "
+ "temporal_boundaries: {}> "
)
return formatted_repr.format(
lat_range,
lon_range,
- time_range,
+ temporal_boundaries,
)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw/dataset_processor.py
----------------------------------------------------------------------
diff --git a/ocw/dataset_processor.py b/ocw/dataset_processor.py
index 70323f3..bfcad00 100755
--- a/ocw/dataset_processor.py
+++ b/ocw/dataset_processor.py
@@ -504,7 +504,7 @@ def safe_subset(subregion, target_dataset, subregion_name=None):
'''
lat_min, lat_max, lon_min, lon_max = target_dataset.spatial_boundaries()
- start, end = target_dataset.time_range()
+ start, end = target_dataset.temporal_boundaries()
if subregion.lat_min < lat_min:
subregion.lat_min = lat_min
@@ -1372,7 +1372,7 @@ def _are_bounds_contained_by_dataset(bounds, dataset):
a ValueError otherwise
'''
lat_min, lat_max, lon_min, lon_max = dataset.spatial_boundaries()
- start, end = dataset.time_range()
+ start, end = dataset.temporal_boundaries()
errors = []
# TODO: THIS IS TERRIBLY inefficent and we need to use a geometry
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw/tests/test_dataset.py
----------------------------------------------------------------------
diff --git a/ocw/tests/test_dataset.py b/ocw/tests/test_dataset.py
index dcf6490..8b666c1 100644
--- a/ocw/tests/test_dataset.py
+++ b/ocw/tests/test_dataset.py
@@ -137,9 +137,9 @@ class TestDatasetFunctions(unittest.TestCase):
self.test_dataset.spatial_boundaries(),
(min(self.lat), max(self.lat), min(self.lon), max(self.lon)))
- def test_time_range(self):
+ def test_temporal_boundaries(self):
self.assertEqual(
- self.test_dataset.time_range(),
+ self.test_dataset.temporal_boundaries(),
(dt.datetime(2000, 1, 1), dt.datetime(2000, 12, 1)))
def test_spatial_resolution(self):
@@ -187,16 +187,16 @@ class TestDatasetFunctions(unittest.TestCase):
def test_str_(self):
dataset = self.test_dataset
lat_min, lat_max, lon_min, lon_max = dataset.spatial_boundaries()
- start, end = dataset.time_range()
+ start, end = dataset.temporal_boundaries()
lat_range = "({}, {})".format(lat_min, lon_min)
lon_range = "({}, {})".format(lon_min, lon_min)
- time_range = "({}, {})".format(start, end)
+ temporal_boundaries = "({}, {})".format(start, end)
formatted_repr = (
"<Dataset - name: {}, "
"lat-range: {}, "
"lon-range: {}, "
- "time_range: {}, "
+ "temporal_boundaries: {}, "
"var: {}, "
"units: {}>"
)
@@ -205,7 +205,7 @@ class TestDatasetFunctions(unittest.TestCase):
dataset.name if dataset.name != "" else None,
lat_range,
lon_range,
- time_range,
+ temporal_boundaries,
dataset.variable,
dataset.units
)
@@ -313,19 +313,19 @@ class TestBounds(unittest.TestCase):
def test__str__(self):
lat_range = "({}, {})".format(self.bounds.lat_min, self.bounds.lat_max)
lon_range = "({}, {})".format(self.bounds.lon_min, self.bounds.lon_max)
- time_range = "({}, {})".format(self.bounds.start, self.bounds.end)
+ temporal_boundaries = "({}, {})".format(self.bounds.start, self.bounds.end)
formatted_repr = (
"<Bounds - "
"lat-range: {}, "
"lon-range: {}, "
- "time_range: {}> "
+ "temporal_boundaries: {}> "
)
output = formatted_repr.format(
lat_range,
lon_range,
- time_range,
+ temporal_boundaries,
)
self.assertEqual(str(self.bounds), output)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw/tests/test_dataset_processor.py
----------------------------------------------------------------------
diff --git a/ocw/tests/test_dataset_processor.py b/ocw/tests/test_dataset_processor.py
index 9060070..cc8d6d8 100644
--- a/ocw/tests/test_dataset_processor.py
+++ b/ocw/tests/test_dataset_processor.py
@@ -556,7 +556,7 @@ class TestSafeSubset(unittest.TestCase):
def test_partial_temporal_overlap(self):
'''Ensure that safe_subset can handle out of bounds temporal values'''
ds = dp.safe_subset(self.temporal_out_of_bounds, self.target_dataset)
- temporal_bounds = ds.time_range()
+ temporal_bounds = ds.temporal_boundaries()
start = datetime.datetime(2000, 1, 1)
end = datetime.datetime(2009, 12, 1)
@@ -566,7 +566,7 @@ class TestSafeSubset(unittest.TestCase):
def test_entire_bounds_overlap(self):
ds = dp.safe_subset(self.everything_out_of_bounds, self.target_dataset)
spatial_bounds = ds.spatial_boundaries()
- temporal_bounds = ds.time_range()
+ temporal_bounds = ds.temporal_boundaries()
start = datetime.datetime(2000, 1, 1)
end = datetime.datetime(2009, 12, 1)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw/utils.py
----------------------------------------------------------------------
diff --git a/ocw/utils.py b/ocw/utils.py
index cb47efe..2fab66f 100755
--- a/ocw/utils.py
+++ b/ocw/utils.py
@@ -374,8 +374,8 @@ def get_temporal_overlap(dataset_array):
start_time = []
end_time = []
for dataset in dataset_array:
- start_time.append(dataset.time_range()[0])
- end_time.append(dataset.time_range()[1])
+ start_time.append(dataset.temporal_boundaries()[0])
+ end_time.append(dataset.temporal_boundaries()[1])
return np.max(start_time), np.min(end_time)
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw_config_runner/configuration_parsing.py
----------------------------------------------------------------------
diff --git a/ocw_config_runner/configuration_parsing.py b/ocw_config_runner/configuration_parsing.py
index 5c28249..89eab62 100644
--- a/ocw_config_runner/configuration_parsing.py
+++ b/ocw_config_runner/configuration_parsing.py
@@ -239,7 +239,7 @@ def _valid_plot_config_data(plot_config_data):
])
elif plot_type == 'time_series':
required_keys = set([
- 'time_range'
+ 'temporal_boundaries'
])
elif plot_type == 'portrait':
required_keys = set([
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw_config_runner/configuration_writer.py
----------------------------------------------------------------------
diff --git a/ocw_config_runner/configuration_writer.py b/ocw_config_runner/configuration_writer.py
index 8fc9242..5bbbb08 100644
--- a/ocw_config_runner/configuration_writer.py
+++ b/ocw_config_runner/configuration_writer.py
@@ -199,7 +199,7 @@ def _extract_rcmed_dataset_info(dataset):
dataset_info = {'optional_args': {}}
min_lat, max_lat, min_lon, max_lon = dataset.spatial_boundaries()
- start_time, end_time = dataset.time_range()
+ start_time, end_time = dataset.temporal_boundaries()
dataset_info['data_source'] = 'rcmed'
dataset_info['dataset_id'] = dataset.origin['dataset_id']
@@ -279,7 +279,7 @@ def _calc_subset_config(datasets):
for ds in datasets:
ds_lat_min, ds_lat_max, ds_lon_min, ds_lon_max = ds.spatial_boundaries()
- ds_start, ds_end = ds.time_range()
+ ds_start, ds_end = ds.temporal_boundaries()
if ds_lat_min < lat_min:
lat_min = ds_lat_min
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw_config_runner/example/time_series_plot_example.yaml
----------------------------------------------------------------------
diff --git a/ocw_config_runner/example/time_series_plot_example.yaml b/ocw_config_runner/example/time_series_plot_example.yaml
index b5599cc..5e45229 100644
--- a/ocw_config_runner/example/time_series_plot_example.yaml
+++ b/ocw_config_runner/example/time_series_plot_example.yaml
@@ -24,7 +24,7 @@ metrics:
plots:
- type: time_series
- time_range: monthly
+ temporal_boundaries: monthly
subregions:
- [-10.0, 0.0, -19.0, 19.0]
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw_config_runner/plot_generation.py
----------------------------------------------------------------------
diff --git a/ocw_config_runner/plot_generation.py b/ocw_config_runner/plot_generation.py
index 392331d..938553e 100644
--- a/ocw_config_runner/plot_generation.py
+++ b/ocw_config_runner/plot_generation.py
@@ -141,11 +141,11 @@ def _draw_portrait_diagram(evaluation, plot_config):
def _draw_time_series_plot(evaluation, plot_config):
""""""
- time_range_info = plot_config['time_range']
+ temporal_boundaries_info = plot_config['temporal_boundaries']
ref_ds = evaluation.ref_dataset
target_ds = evaluation.target_datasets
- if time_range_info == 'monthly':
+ if temporal_boundaries_info == 'monthly':
ref_ds.values, ref_ds.times = utils.calc_climatology_monthly(ref_ds)
for t in target_ds:
http://git-wip-us.apache.org/repos/asf/climate/blob/e823b03c/ocw_config_runner/tests/test_config_writer.py
----------------------------------------------------------------------
diff --git a/ocw_config_runner/tests/test_config_writer.py b/ocw_config_runner/tests/test_config_writer.py
index c961447..ed22417 100644
--- a/ocw_config_runner/tests/test_config_writer.py
+++ b/ocw_config_runner/tests/test_config_writer.py
@@ -535,7 +535,7 @@ class TestEvaluationSettingsGeneration(unittest.TestCase):
subset = out['subset']
ds_lat_min, ds_lat_max, ds_lon_min, ds_lon_max = self.dataset.spatial_boundaries()
- start, end = self.dataset.time_range()
+ start, end = self.dataset.temporal_boundaries()
self.assertEqual(ds_lat_min, subset[0])
self.assertEqual(ds_lat_max, subset[1])
@@ -557,7 +557,7 @@ class TestEvaluationSettingsGeneration(unittest.TestCase):
subset = out['subset']
ds_lat_min, ds_lat_max, ds_lon_min, ds_lon_max = self.dataset.spatial_boundaries()
- start, end = self.dataset.time_range()
+ start, end = self.dataset.temporal_boundaries()
self.assertEqual(ds_lat_min, subset[0])
# Check that we actually used the different max lat value that we