You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@climate.apache.org by le...@apache.org on 2017/08/05 16:28:03 UTC
[3/3] climate git commit: CLIMATE-920 Make examples Python 3
compatible
CLIMATE-920 Make examples Python 3 compatible
Project: http://git-wip-us.apache.org/repos/asf/climate/repo
Commit: http://git-wip-us.apache.org/repos/asf/climate/commit/9bb21700
Tree: http://git-wip-us.apache.org/repos/asf/climate/tree/9bb21700
Diff: http://git-wip-us.apache.org/repos/asf/climate/diff/9bb21700
Branch: refs/heads/master
Commit: 9bb2170084ec61cee178c3742cb5a1be709966fe
Parents: ec3fdb4
Author: Lewis John McGibbney <le...@gmail.com>
Authored: Sat Jul 29 13:36:05 2017 -0700
Committer: Lewis John McGibbney <le...@gmail.com>
Committed: Sat Jul 29 13:36:05 2017 -0700
----------------------------------------------------------------------
examples/esgf_integration_example.py | 17 +-
examples/podaac_integration_example.py | 7 +-
examples/simple_model_to_model_bias.py | 14 +-
examples/taylor_diagram_example.py | 13 +-
examples/time_series_with_regions.py | 21 +-
mccsearch/code/mccSearch.py | 6292 +++++++++++++--------------
ocw/data_source/esgf.py | 11 +-
ocw/esgf/download.py | 28 +-
8 files changed, 3227 insertions(+), 3176 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/climate/blob/9bb21700/examples/esgf_integration_example.py
----------------------------------------------------------------------
diff --git a/examples/esgf_integration_example.py b/examples/esgf_integration_example.py
index 7a02632..8247435 100644
--- a/examples/esgf_integration_example.py
+++ b/examples/esgf_integration_example.py
@@ -18,14 +18,19 @@
import ocw.data_source.esgf as esgf
from getpass import getpass
import ssl
+import sys
if hasattr(ssl, '_create_unverified_context'):
ssl._create_default_https_context = ssl._create_unverified_context
-dataset_id = 'obs4MIPs.CNES.AVISO.zos.mon.v20110829|esgf-data.jpl.nasa.gov'
+dataset_id = 'obs4mips.CNES.AVISO.zos.mon.v20110829|esgf-data.jpl.nasa.gov'
variable = 'zosStderr'
-username = raw_input('Enter your ESGF OpenID:\n')
+if sys.version_info[0] >= 3:
+ username = input('Enter your ESGF OpenID:\n')
+else:
+ username = raw_input('Enter your ESGF OpenID:\n')
+
password = getpass(prompt='Enter your ESGF Password:\n')
# Multiple datasets are returned in a list if the ESGF dataset is
@@ -39,7 +44,7 @@ datasets = esgf.load_dataset(dataset_id,
# we only need to look at the 0-th value in the returned list.
ds = datasets[0]
-print '\n--------\n'
-print 'Variable: ', ds.variable
-print 'Shape: ', ds.values.shape
-print 'A Value: ', ds.values[100][100][100]
+print('\n--------\n')
+print('Variable: ', ds.variable)
+print('Shape: ', ds.values.shape)
+print('A Value: ', ds.values[100][100][100])
http://git-wip-us.apache.org/repos/asf/climate/blob/9bb21700/examples/podaac_integration_example.py
----------------------------------------------------------------------
diff --git a/examples/podaac_integration_example.py b/examples/podaac_integration_example.py
index 7b8bb10..61663d7 100644
--- a/examples/podaac_integration_example.py
+++ b/examples/podaac_integration_example.py
@@ -24,8 +24,9 @@ datasetId = 'PODAAC-CCF30-01XXX'
variable = 'uwnd'
name = 'PO.DAAC_test_dataset'
OUTPUT_PLOT = "ccmp_temporal_std"
-""" Step 1: Load Local NetCDF Files into OCW Dataset Objects """
-print("Extracting Level4 granule %s and converting it into a OCW dataset object." % datasetId)
+""" Step 1: Download remote PO.DAAC Dataset and read it into an OCW Dataset Object"""
+print("Available Level4 PO.DAAC Granules: %s" % podaac.list_available_extract_granule_dataset_ids())
+print("Extracting variable '%s' from Level4 granule '%s' and converting it into a OCW dataset object." % (variable, datasetId))
ccmp_dataset = podaac.extract_l4_granule(
variable=variable, dataset_id=datasetId, name=name)
print("CCMP_Dataset.values shape: (times, lats, lons) - %s \n" %
@@ -67,7 +68,7 @@ print("Generating a contour map using ocw.plotter.draw_contour_map()")
fname = OUTPUT_PLOT
gridshape = (4, 5) # 20 Years worth of plots. 20 rows in 1 column
-plot_title = "CCMP Temporal Standard Deviation"
+plot_title = "Cross-Calibrated Multi-Platform Temporal Standard Deviation"
sub_titles = range(2002, 2010, 1)
plotter.draw_contour_map(results, lats, lons, fname,
http://git-wip-us.apache.org/repos/asf/climate/blob/9bb21700/examples/simple_model_to_model_bias.py
----------------------------------------------------------------------
diff --git a/examples/simple_model_to_model_bias.py b/examples/simple_model_to_model_bias.py
index ffa5cda..8e834b6 100644
--- a/examples/simple_model_to_model_bias.py
+++ b/examples/simple_model_to_model_bias.py
@@ -17,7 +17,15 @@
import datetime
from os import path
-import urllib
+import sys
+
+if sys.version_info[0] >= 3:
+ from urllib.request import urlretrieve
+else:
+ # Not Python 3 - today, it is most likely to be Python 2
+ # But note that this might need an update when Python 4
+ # might be around one day
+ from urllib import urlretrieve
import numpy as np
@@ -39,9 +47,9 @@ FILE_1_PATH = path.join('/tmp', FILE_1)
FILE_2_PATH = path.join('/tmp', FILE_2)
if not path.exists(FILE_1_PATH):
- urllib.urlretrieve(FILE_LEADER + FILE_1, FILE_1_PATH)
+ urlretrieve(FILE_LEADER + FILE_1, FILE_1_PATH)
if not path.exists(FILE_2_PATH):
- urllib.urlretrieve(FILE_LEADER + FILE_2, FILE_2_PATH)
+ urlretrieve(FILE_LEADER + FILE_2, FILE_2_PATH)
""" Step 1: Load Local NetCDF Files into OCW Dataset Objects """
print("Loading %s into an OCW Dataset Object" % (FILE_1_PATH,))
http://git-wip-us.apache.org/repos/asf/climate/blob/9bb21700/examples/taylor_diagram_example.py
----------------------------------------------------------------------
diff --git a/examples/taylor_diagram_example.py b/examples/taylor_diagram_example.py
index 86236c8..8d5bbf0 100644
--- a/examples/taylor_diagram_example.py
+++ b/examples/taylor_diagram_example.py
@@ -18,7 +18,14 @@
import datetime
import sys
from os import path
-import urllib
+
+if sys.version_info[0] >= 3:
+ from urllib.request import urlretrieve
+else:
+ # Not Python 3 - today, it is most likely to be Python 2
+ # But note that this might need an update when Python 4
+ # might be around one day
+ from urllib import urlretrieve
import numpy
@@ -36,10 +43,10 @@ FILE_2 = "AFRICA_UC-WRF311_CTL_ERAINT_MM_50km-rg_1989-2008_tasmax.nc"
# Download some example NetCDF files for the evaluation
##########################################################################
if not path.exists(FILE_1):
- urllib.urlretrieve(FILE_LEADER + FILE_1, FILE_1)
+ urlretrieve(FILE_LEADER + FILE_1, FILE_1)
if not path.exists(FILE_2):
- urllib.urlretrieve(FILE_LEADER + FILE_2, FILE_2)
+ urlretrieve(FILE_LEADER + FILE_2, FILE_2)
# Load the example datasets into OCW Dataset objects. We want to load
# the 'tasmax' variable values. We'll also name the datasets for use
http://git-wip-us.apache.org/repos/asf/climate/blob/9bb21700/examples/time_series_with_regions.py
----------------------------------------------------------------------
diff --git a/examples/time_series_with_regions.py b/examples/time_series_with_regions.py
index 05c4721..3bb133c 100644
--- a/examples/time_series_with_regions.py
+++ b/examples/time_series_with_regions.py
@@ -12,7 +12,15 @@ import datetime
import numpy as np
import numpy.ma as ma
from os import path
-import urllib
+import sys
+
+if sys.version_info[0] >= 3:
+ from urllib.request import urlretrieve
+else:
+ # Not Python 3 - today, it is most likely to be Python 2
+ # But note that this might need an update when Python 4
+ # might be around one day
+ from urllib import urlretrieve
import ssl
if hasattr(ssl, '_create_unverified_context'):
ssl._create_default_https_context = ssl._create_unverified_context
@@ -29,7 +37,7 @@ LAT_MIN = -45.0
LAT_MAX = 42.24
LON_MIN = -24.0
LON_MAX = 60.0
-START = datetime.datetime(2000, 01, 1)
+START = datetime.datetime(2000, 1, 1)
END = datetime.datetime(2007, 12, 31)
EVAL_BOUNDS = Bounds(lat_min=LAT_MIN, lat_max=LAT_MAX,
@@ -48,13 +56,16 @@ region_counter = 0
# Download necessary NetCDF file if not present
if not path.exists(FILE_1):
- urllib.urlretrieve(FILE_LEADER + FILE_1, FILE_1)
+ print("Downloading %s" % (FILE_LEADER + FILE_1))
+ urlretrieve(FILE_LEADER + FILE_1, FILE_1)
if not path.exists(FILE_2):
- urllib.urlretrieve(FILE_LEADER + FILE_2, FILE_2)
+ print("Downloading %s" % (FILE_LEADER + FILE_2))
+ urlretrieve(FILE_LEADER + FILE_2, FILE_2)
if not path.exists(FILE_3):
- urllib.urlretrieve(FILE_LEADER + FILE_3, FILE_3)
+ print("Downloading %s" % (FILE_LEADER + FILE_3))
+ urlretrieve(FILE_LEADER + FILE_3, FILE_3)
""" Step 1: Load Local NetCDF File into OCW Dataset Objects and store in list"""
target_datasets.append(local.load_file(FILE_1, varName, name="KNMI"))