climate-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r993913 [5/16] - in /websites/staging/climate/trunk/content: ./ api/1.0.0/_sources/ api/1.0.0/_sources/config/ api/1.0.0/_sources/data_source/ api/1.0.0/_sources/ocw/ api/1.0.0/_sources/ui-backend/ api/1.0.0/_static/ api/1.0.0/config/ api/1...
Date Wed, 27 Jul 2016 17:50:57 GMT
Added: websites/staging/climate/trunk/content/api/1.0.0/ocw/overview.html
==============================================================================
--- websites/staging/climate/trunk/content/api/1.0.0/ocw/overview.html (added)
+++ websites/staging/climate/trunk/content/api/1.0.0/ocw/overview.html Wed Jul 27 17:50:56 2016
@@ -0,0 +1,305 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Overview &mdash; Apache Open Climate Workbench 1.0.0 documentation</title>
+    
+    <link rel="stylesheet" href="../_static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
+    
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '1.0.0',
+        COLLAPSE_INDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../_static/jquery.js"></script>
+    <script type="text/javascript" src="../_static/underscore.js"></script>
+    <script type="text/javascript" src="../_static/doctools.js"></script>
+    <link rel="top" title="Apache Open Climate Workbench 1.0.0 documentation" href="../index.html" />
+    <link rel="next" title="Dataset Module" href="dataset.html" />
+    <link rel="prev" title="Welcome to Apache Open Climate Workbench’s documentation!" href="../index.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../http-routingtable.html" title="HTTP Routing Table"
+             >routing table</a> |</li>
+        <li class="right" >
+          <a href="../py-modindex.html" title="Python Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="dataset.html" title="Dataset Module"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="../index.html" title="Welcome to Apache Open Climate Workbench’s documentation!"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Apache Open Climate Workbench 1.0.0 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="overview">
+<h1>Overview<a class="headerlink" href="#overview" title="Permalink to this headline">¶</a></h1>
+<p>The Apache Open Climate Workbench toolkit aims to provide a suit of tools to make Climate Scientists lives easier. It does this by providing tools for loading and manipulating datasets, running evaluations, and plotting results. Below is a breakdown of many of the OCW components with an explanation of how to use them. An OCW evaluation usually has the following steps:</p>
+<ol class="arabic simple">
+<li>Load one or more datasets</li>
+<li>Perform dataset manipulations (subset, temporal/spatial rebin, etc.)</li>
+<li>Load various metrics</li>
+<li>Instantiate and run the evaluation</li>
+<li>Plot results</li>
+</ol>
+<div class="section" id="common-data-abstraction">
+<h2>Common Data Abstraction<a class="headerlink" href="#common-data-abstraction" title="Permalink to this headline">¶</a></h2>
+<p>The OCW <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> 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 <a class="reference internal" href="dataset.html#dataset.Dataset.spatial_boundaries" title="dataset.Dataset.spatial_boundaries"><tt class="xref py py-func docutils literal"><span class="pre">dataset.Dataset.spatial_boundaries()</span></tt></a> and <a class="reference internal" href="dataset.html#dataset.Dataset.time_range" title="dataset.Dataset.time_range"><tt class="xref py py-func docutils literal"><span class="pre">dataset.Dataset.time_range()</span></tt></a>. Creating a new dataset object is straightforward but generally you will want to use an OCW data source to load the data for you.</p>
+</div>
+<div class="section" id="data-sources">
+<h2>Data Sources<a class="headerlink" href="#data-sources" title="Permalink to this headline">¶</a></h2>
+<p>OCW data sources allow users to easily load <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> objects from a number of places. These data sources help with step 1 of an evaluation above. In general the primary file format that is supported is NetCDF. For instance, the <a class="reference internal" href="../data_source/data_sources.html#module-local" title="local"><tt class="xref py py-mod docutils literal"><span class="pre">local</span></tt></a>, <a class="reference internal" href="../data_source/data_sources.html#module-dap" title="dap"><tt class="xref py py-mod docutils literal"><span class="pre">dap</span></tt></a> and <a class="reference internal" href="../data_source/data_sources.html#module-esgf" title="esgf"><tt class="xref py py-mod docutils literal"><span class="pre">esgf</span></tt></a> data sources only support loading NetCDF files fro
 m your local machine, an OpenDAP URL, and the ESGF respectively. Some data sources, such as <a class="reference internal" href="../data_source/data_sources.html#module-rcmed" title="rcmed"><tt class="xref py py-mod docutils literal"><span class="pre">rcmed</span></tt></a>, point to externally supported data sources. In the case of the RCMED data source, the Regional Climate Model Evaluation Database is run by NASA&#8217;s Jet Propulsion Laboratory.</p>
+<p>Adding additional data sources is quite simple. The only API limitation that we have on a data source is that it returns a valid <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> object. Please feel free to send patches for adding more data sources.</p>
+<p>A simple example using the <a class="reference internal" href="../data_source/data_sources.html#module-local" title="local"><tt class="xref py py-mod docutils literal"><span class="pre">local</span></tt></a> data source to load a NetCDF file from your local machine:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.data_source.local</span> <span class="kn">as</span> <span class="nn">local</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">ds</span> <span class="o">=</span> <span class="n">local</span><span class="o">.</span><span class="n">load_file</span><span class="p">(</span><span class="s">&#39;/tmp/some_dataset.nc&#39;</span><span class="p">,</span> <span class="s">&#39;SomeVarInTheDataset&#39;</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="dataset-manipulations">
+<h2>Dataset Manipulations<a class="headerlink" href="#dataset-manipulations" title="Permalink to this headline">¶</a></h2>
+<p>All <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> manipulations are handled by the <a class="reference internal" href="dataset_processor.html#module-dataset_processor" title="dataset_processor"><tt class="xref py py-mod docutils literal"><span class="pre">dataset_processor</span></tt></a> module. In general, an evaluation will include calls to <a class="reference internal" href="dataset_processor.html#dataset_processor.subset" title="dataset_processor.subset"><tt class="xref py py-func docutils literal"><span class="pre">dataset_processor.subset()</span></tt></a>, <a class="reference internal" href="dataset_processor.html#dataset_processor.spatial_regrid" title="dataset_processor.spatial_regrid"><tt class="xref py py-func docutils literal"><span class="pre">dataset_processor.spatial_regrid()</span></tt></a>, and <a class="reference internal" 
 href="dataset_processor.html#dataset_processor.temporal_rebin" title="dataset_processor.temporal_rebin"><tt class="xref py py-func docutils literal"><span class="pre">dataset_processor.temporal_rebin()</span></tt></a> to ensure that the datasets can actually be compared. <a class="reference internal" href="dataset_processor.html#module-dataset_processor" title="dataset_processor"><tt class="xref py py-mod docutils literal"><span class="pre">dataset_processor</span></tt></a> functions take a <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> object and some various parameters and return a modified <a class="reference internal" href="dataset.html#dataset.Dataset" title="dataset.Dataset"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Dataset</span></tt></a> object. The original dataset is never manipulated in the process.</p>
+<p>Subsetting is a great way to speed up your processing and keep useless data out of your plots. Notice that we&#8217;re using a <a class="reference internal" href="dataset.html#dataset.Bounds" title="dataset.Bounds"><tt class="xref py py-class docutils literal"><span class="pre">dataset.Bounds</span></tt></a> objec to represent the area of interest:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.dataset_processor</span> <span class="kn">as</span> <span class="nn">dsp</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">new_bounds</span> <span class="o">=</span> <span class="n">Bounds</span><span class="p">(</span><span class="n">min_lat</span><span class="p">,</span> <span class="n">max_lat</span><span class="p">,</span> <span class="n">min_lon</span><span class="p">,</span> <span class="n">max_lon</span><span class="p">,</span> <span class="n">start_time</span><span class="p">,</span> <span class="n">end_time</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">knmi_dataset</span> <span class="o">=</span> <span class="n">dsp</span><span class="o">.</span><span class="n">subset</span><span class="p">(</span><span class="n">new_bounds</span><span class="p">,</span> <span class="n">knmi_dataset</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>Temporally re-binning a dataset is great when the time step of the data is too fine grain for the desired use. For instance, perhaps we want to see a yearly trend but we have daily data. We would need to make the following call to adjust our dataset:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">knmi_dataset</span> <span class="o">=</span> <span class="n">dsp</span><span class="o">.</span><span class="n">temporal_rebin</span><span class="p">(</span><span class="n">knmi_dataset</span><span class="p">,</span> <span class="n">datetime</span><span class="o">.</span><span class="n">timedelta</span><span class="p">(</span><span class="n">days</span><span class="o">=</span><span class="mi">365</span><span class="p">))</span>
+</pre></div>
+</div>
+<p>It is critically necessary for our datasets to be on the same lat/lon grid before we try to compare them. That&#8217;s where spatial re-gridding comes in helpful. Here we re-grid our example dataset onto a 1-degree lat/lon grid within the range that we subsetted the dataset previously:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">new_lons</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="n">min_lon</span><span class="p">,</span> <span class="n">max_lon</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">new_lats</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="n">min_lat</span><span class="p">,</span> <span class="n">max_lat</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">knmi_dataset</span> <span class="o">=</span> <span class="n">dsp</span><span class="o">.</span><span class="n">spatial_regrid</span><span class="p">(</span><span class="n">knmi_dataset</span><span class="p">,</span> <span class="n">new_lats</span><span class="p">,</span> <span class="n">new_lons</span><span class="p">)</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="metrics">
+<h2>Metrics<a class="headerlink" href="#metrics" title="Permalink to this headline">¶</a></h2>
+<p>Metrics are the backbone of an evaluation. You&#8217;ll find a number of (hopefully) useful &#8220;default&#8221; metrics in the <a class="reference internal" href="metrics.html#module-metrics" title="metrics"><tt class="xref py py-mod docutils literal"><span class="pre">metrics</span></tt></a> module in the toolkit. In general you won&#8217;t be too likely to use a metric outside of an evaluation, however you could run a metric manually if you so desired.:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.metrics</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="c"># Load 2 datasets</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">bias</span> <span class="o">=</span> <span class="n">ocw</span><span class="o">.</span><span class="n">metrics</span><span class="o">.</span><span class="n">Bias</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span> <span class="n">bias</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">dataset1</span><span class="p">,</span> <span class="n">dataset2</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>While this might be exactly what you need to get the job done, it is far more likely that you&#8217;ll need to run a number of metrics over a number of datasets. That&#8217;s where running an evaluation comes in, but we&#8217;ll get to that shortly.</p>
+<p>There are two &#8220;types&#8221; of metrics that the toolkit supports. A unary metric acts on a single dataset and returns a result. A binary metric acts on a target and reference dataset and returns a result. This is helpful to know if you decide that the included metrics aren&#8217;t sufficient. We&#8217;ve attempted to make adding a new metric as simple as possible. You simply create a new class that inherits from either the unary or binary base classes and override the <cite>run</cite> function. At this point your metric will behave exactly like the included metrics in the toolkit. Below is an example of how one of the included metrics is implemented. If you need further assistance with your own metrics be sure to email the project&#8217;s mailing list!:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">Bias</span><span class="p">(</span><span class="n">BinaryMetric</span><span class="p">):</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="sd">&#39;&#39;&#39;Calculate the bias between a reference and target dataset.&#39;&#39;&#39;</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target_dataset</span><span class="p">):</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="s">&#39;&#39;&#39;Calculate the bias between a reference and target dataset.</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="o">..</span> <span class="n">note</span><span class="p">::</span>
+<span class="gp">&gt;&gt;&gt; </span>           <span class="n">Overrides</span> <span class="n">BinaryMetric</span><span class="o">.</span><span class="n">run</span><span class="p">()</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="n">param</span> <span class="n">ref_dataset</span><span class="p">:</span> <span class="n">The</span> <span class="n">reference</span> <span class="n">dataset</span> <span class="n">to</span> <span class="n">use</span> <span class="ow">in</span> <span class="n">this</span> <span class="n">metric</span> <span class="n">run</span><span class="o">.</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="nb">type</span> <span class="n">ref_dataset</span><span class="p">:</span> <span class="n">ocw</span><span class="o">.</span><span class="n">dataset</span><span class="o">.</span><span class="n">Dataset</span> <span class="nb">object</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="n">param</span> <span class="n">target_dataset</span><span class="p">:</span> <span class="n">The</span> <span class="n">target</span> <span class="n">dataset</span> <span class="n">to</span> <span class="n">evaluate</span> <span class="n">against</span> <span class="n">the</span>
+<span class="gp">&gt;&gt;&gt; </span>            <span class="n">reference</span> <span class="n">dataset</span> <span class="ow">in</span> <span class="n">this</span> <span class="n">metric</span> <span class="n">run</span><span class="o">.</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="nb">type</span> <span class="n">target_dataset</span><span class="p">:</span> <span class="n">ocw</span><span class="o">.</span><span class="n">dataset</span><span class="o">.</span><span class="n">Dataset</span> <span class="nb">object</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="n">returns</span><span class="p">:</span> <span class="n">The</span> <span class="n">difference</span> <span class="n">between</span> <span class="n">the</span> <span class="n">reference</span> <span class="ow">and</span> <span class="n">target</span> <span class="n">datasets</span><span class="o">.</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="p">:</span><span class="n">rtype</span><span class="p">:</span> <span class="n">Numpy</span> <span class="n">Array</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="s">&#39;&#39;&#39;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="s">        return ref_dataset.values - target_dataset.values</span>
+</pre></div>
+</div>
+<p>While this might look a bit scary at first, if we take out all the documentation you&#8217;ll see that it&#8217;s really extremely simple.:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="c"># Our new Bias metric inherits from the Binary Metric base class</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">class</span> <span class="nc">Bias</span><span class="p">(</span><span class="n">BinaryMetric</span><span class="p">):</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># Since our new metric is a binary metric we need to override</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># the run funtion in the BinaryMetric base class.</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target_dataset</span><span class="p">):</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="c"># To implement the bias metric we simply return the difference</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="c"># between the reference and target dataset&#39;s values arrays.</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="k">return</span> <span class="n">ref_dataset</span><span class="o">.</span><span class="n">values</span> <span class="o">-</span> <span class="n">target_dataset</span><span class="o">.</span><span class="n">values</span>
+</pre></div>
+</div>
+<p>It is very important to note that you shouldn&#8217;t change the datasets that are passed into the metric that you&#8217;re implementing. If you do you might cause unexpected results in future parts of the evaluation. If you need to do manipulations, copy the data first and do manipulations on the copy. Leave the original dataset alone!</p>
+</div>
+<div class="section" id="handling-an-evaluation">
+<h2>Handling an Evaluation<a class="headerlink" href="#handling-an-evaluation" title="Permalink to this headline">¶</a></h2>
+<p>We saw above that it is easy enough to run a metric over a few datasets manually. However, when we have a lot of datasets and/or a lot of metrics to run that can become tedious and error prone. This is where the <a class="reference internal" href="evaluation.html#evaluation.Evaluation" title="evaluation.Evaluation"><tt class="xref py py-class docutils literal"><span class="pre">evaluation.Evaluation</span></tt></a> class comes in handy. It ensures that all the metrics that you choose are run over all combinations of the datasets that you input. Consider the following simple example:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.evaluation</span> <span class="kn">as</span> <span class="nn">eval</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.data_source.local</span> <span class="kn">as</span> <span class="nn">local</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="kn">import</span> <span class="nn">ocw.metrics</span> <span class="kn">as</span> <span class="nn">metrics</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="c"># Load a few datasets</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">ref_dataset</span> <span class="o">=</span> <span class="n">local</span><span class="o">.</span><span class="n">load_file</span><span class="p">(</span><span class="o">...</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">target1</span> <span class="o">=</span> <span class="n">local</span><span class="o">.</span><span class="n">load_file</span><span class="p">(</span><span class="o">...</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">target2</span> <span class="o">=</span> <span class="n">local</span><span class="o">.</span><span class="n">load_file</span><span class="p">(</span><span class="o">...</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">target_datasets</span> <span class="o">=</span> <span class="p">[</span><span class="n">target1</span><span class="p">,</span> <span class="n">target2</span><span class="p">]</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="c"># Do some dataset manipulations here such as subsetting and regridding</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="c"># Load a few metrics</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">bias</span> <span class="o">=</span> <span class="n">metrics</span><span class="o">.</span><span class="n">Bias</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">tstd</span> <span class="o">=</span> <span class="n">metrics</span><span class="o">.</span><span class="n">TemporalStdDev</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">metrics</span> <span class="o">=</span> <span class="p">[</span><span class="n">bias</span><span class="p">,</span> <span class="n">tstd</span><span class="p">]</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">new_eval</span> <span class="o">=</span> <span class="nb">eval</span><span class="o">.</span><span class="n">Evaluation</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target_datasets</span><span class="p">,</span> <span class="n">metrics</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">new_eval</span><span class="o">.</span><span class="n">run</span><span class="p">()</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span> <span class="n">new_eval</span><span class="o">.</span><span class="n">results</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="k">print</span> <span class="n">new_eval</span><span class="o">.</span><span class="n">unary_results</span>
+</pre></div>
+</div>
+<p>First we load all of our datasets and do any manipulations (which we leave out for brevity). Then we load the metrics that we want to run, namely Bias and TemporalStdDev. We then load our evaluation object.:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">new_eval</span> <span class="o">=</span> <span class="nb">eval</span><span class="o">.</span><span class="n">Evaluation</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target_datasets</span><span class="p">,</span> <span class="n">metrics</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>Notice two things about this. First, we&#8217;re splitting the datasets into a reference dataset (ref_dataset) and a list of target datasets (target_datasets). Second, one of the metrics that we loaded (<a class="reference internal" href="metrics.html#metrics.TemporalStdDev" title="metrics.TemporalStdDev"><tt class="xref py py-class docutils literal"><span class="pre">metrics.TemporalStdDev</span></tt></a>) is a unary metric. The reference/target dataset split is necessary to handling binary metrics. When an evaluation is run, all the binary metrics are run against every (reference, target) dataset pair. So the above evaluation could be replaced with the following calls. Of course this wouldn&#8217;t handle the unary metric, but we&#8217;ll get to that in a second.:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">result1</span> <span class="o">=</span> <span class="n">bias</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target1</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">result2</span> <span class="o">=</span> <span class="n">bias</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target2</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>Unary metrics are handled slightly differently but they&#8217;re still simple. Each unary metric passed into the evaluation is run against <em>every</em> dataset in the evaluation. So we could replace the above evaluation with the following calls:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">unary_result1</span> <span class="o">=</span> <span class="n">tstd</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">unary_result2</span> <span class="o">=</span> <span class="n">tstd</span><span class="p">(</span><span class="n">target1</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">unary_result3</span> <span class="o">=</span> <span class="n">tstd</span><span class="p">(</span><span class="n">target2</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>The only other part that we need to explore to fully understand the <tt class="xref py py-class docutils literal"><span class="pre">evalution.Evaluation</span></tt> class is how the results are stored internally from the run. The <cite>results</cite> list is a multidimensional array holding all the binary metric results and the <cite>unary_results</cite> is a list holding all the unary metric results. To more accurately replace the above evaluation with manual calls we would write the following:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">results</span> <span class="o">=</span> <span class="p">[</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># Results for target1</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">[</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="n">bias</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target1</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="c"># If there were other binary metrics, the results would be here.</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">],</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># Results for target2</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">[</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="n">bias</span><span class="o">.</span><span class="n">run</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">,</span> <span class="n">target2</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="c"># If there were other binary metrics, the results would be here.</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">]</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="p">]</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">unary_results</span> <span class="o">=</span> <span class="p">[</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># Results for TemporalStdDev</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">[</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="n">tstd</span><span class="p">(</span><span class="n">ref_dataset</span><span class="p">),</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="n">tstd</span><span class="p">(</span><span class="n">target1</span><span class="p">),</span>
+<span class="gp">&gt;&gt;&gt; </span>        <span class="n">tstd</span><span class="p">(</span><span class="n">target2</span><span class="p">)</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="p">]</span>
+<span class="gp">&gt;&gt;&gt; </span>    <span class="c"># If there were other unary metrics, the results would be in a list here.</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="p">]</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="plotting">
+<h2>Plotting<a class="headerlink" href="#plotting" title="Permalink to this headline">¶</a></h2>
+<p>Plotting can be fairly complicated business. Luckily we have <a class="reference external" href="https://cwiki.apache.org/confluence/display/CLIMATE/Guide+to+Plotting+API">pretty good documentation</a> on the project wiki that can help you out. There are also fairly simple examples in the project&#8217;s example folder with the remainder of the code such as the following:</p>
+<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="c"># Let&#39;s grab the values returned for bias.run(ref_dataset, target1)</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">results</span> <span class="o">=</span> <span class="n">bias_evaluation</span><span class="o">.</span><span class="n">results</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">Here</span><span class="s">&#39;s the same lat/lons we used earlier when we were re-gridding</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">lats</span> <span class="o">=</span> <span class="n">new_lats</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">lons</span> <span class="o">=</span> <span class="n">new_lons</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">fname</span> <span class="o">=</span> <span class="s">&#39;My_Test_Plot&#39;</span>
+<span class="go">&gt;&gt;&gt;</span>
+<span class="gp">&gt;&gt;&gt; </span><span class="n">plotter</span><span class="o">.</span><span class="n">draw_contour_map</span><span class="p">(</span><span class="n">results</span><span class="p">,</span> <span class="n">lats</span><span class="p">,</span> <span class="n">lons</span><span class="p">,</span> <span class="n">fname</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>This would give you a contour map calls <cite>My_Test_Plot</cite> for the requested bias metric run.</p>
+</div>
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+  <h3><a href="../index.html">Table Of Contents</a></h3>
+  <ul>
+<li><a class="reference internal" href="#">Overview</a><ul>
+<li><a class="reference internal" href="#common-data-abstraction">Common Data Abstraction</a></li>
+<li><a class="reference internal" href="#data-sources">Data Sources</a></li>
+<li><a class="reference internal" href="#dataset-manipulations">Dataset Manipulations</a></li>
+<li><a class="reference internal" href="#metrics">Metrics</a></li>
+<li><a class="reference internal" href="#handling-an-evaluation">Handling an Evaluation</a></li>
+<li><a class="reference internal" href="#plotting">Plotting</a></li>
+</ul>
+</li>
+</ul>
+
+  <h4>Previous topic</h4>
+  <p class="topless"><a href="../index.html"
+                        title="previous chapter">Welcome to Apache Open Climate Workbench&#8217;s documentation!</a></p>
+  <h4>Next topic</h4>
+  <p class="topless"><a href="dataset.html"
+                        title="next chapter">Dataset Module</a></p>
+  <h3>This Page</h3>
+  <ul class="this-page-menu">
+    <li><a href="../_sources/ocw/overview.txt"
+           rel="nofollow">Show Source</a></li>
+  </ul>
+<div id="searchbox" style="display: none">
+  <h3>Quick search</h3>
+    <form class="search" action="../search.html" method="get">
+      <input type="text" name="q" />
+      <input type="submit" value="Go" />
+      <input type="hidden" name="check_keywords" value="yes" />
+      <input type="hidden" name="area" value="default" />
+    </form>
+    <p class="searchtip" style="font-size: 90%">
+    Enter search terms or a module, class or function name.
+    </p>
+</div>
+<script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../http-routingtable.html" title="HTTP Routing Table"
+             >routing table</a> |</li>
+        <li class="right" >
+          <a href="../py-modindex.html" title="Python Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="dataset.html" title="Dataset Module"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="../index.html" title="Welcome to Apache Open Climate Workbench’s documentation!"
+             >previous</a> |</li>
+        <li><a href="../index.html">Apache Open Climate Workbench 1.0.0 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+        &copy; Copyright 2013, Apache Software Foundation.
+      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.1.
+    </div>
+  </body>
+</html>
\ No newline at end of file

Added: websites/staging/climate/trunk/content/api/1.0.0/ocw/plotter.html
==============================================================================
--- websites/staging/climate/trunk/content/api/1.0.0/ocw/plotter.html (added)
+++ websites/staging/climate/trunk/content/api/1.0.0/ocw/plotter.html Wed Jul 27 17:50:56 2016
@@ -0,0 +1,416 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+    
+    <title>Plotter Module &mdash; Apache Open Climate Workbench 1.0.0 documentation</title>
+    
+    <link rel="stylesheet" href="../_static/default.css" type="text/css" />
+    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
+    
+    <script type="text/javascript">
+      var DOCUMENTATION_OPTIONS = {
+        URL_ROOT:    '../',
+        VERSION:     '1.0.0',
+        COLLAPSE_INDEX: false,
+        FILE_SUFFIX: '.html',
+        HAS_SOURCE:  true
+      };
+    </script>
+    <script type="text/javascript" src="../_static/jquery.js"></script>
+    <script type="text/javascript" src="../_static/underscore.js"></script>
+    <script type="text/javascript" src="../_static/doctools.js"></script>
+    <link rel="top" title="Apache Open Climate Workbench 1.0.0 documentation" href="../index.html" />
+    <link rel="next" title="Utils Module" href="utils.html" />
+    <link rel="prev" title="Metrics Module" href="metrics.html" /> 
+  </head>
+  <body>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             accesskey="I">index</a></li>
+        <li class="right" >
+          <a href="../http-routingtable.html" title="HTTP Routing Table"
+             >routing table</a> |</li>
+        <li class="right" >
+          <a href="../py-modindex.html" title="Python Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="utils.html" title="Utils Module"
+             accesskey="N">next</a> |</li>
+        <li class="right" >
+          <a href="metrics.html" title="Metrics Module"
+             accesskey="P">previous</a> |</li>
+        <li><a href="../index.html">Apache Open Climate Workbench 1.0.0 documentation</a> &raquo;</li> 
+      </ul>
+    </div>  
+
+    <div class="document">
+      <div class="documentwrapper">
+        <div class="bodywrapper">
+          <div class="body">
+            
+  <div class="section" id="module-plotter">
+<span id="plotter-module"></span><h1>Plotter Module<a class="headerlink" href="#module-plotter" title="Permalink to this headline">¶</a></h1>
+<dl class="class">
+<dt id="plotter.TaylorDiagram">
+<em class="property">class </em><tt class="descclassname">plotter.</tt><tt class="descname">TaylorDiagram</tt><big>(</big><em>refstd</em>, <em>radmax=1.5</em>, <em>fig=None</em>, <em>rect=111</em>, <em>label='_'</em><big>)</big><a class="headerlink" href="#plotter.TaylorDiagram" title="Permalink to this definition">¶</a></dt>
+<dd><p>Taylor diagram helper class</p>
+<p>Plot model standard deviation and correlation to reference (data)
+sample in a single-quadrant polar plot, with r=stddev and
+theta=arccos(correlation).</p>
+<p>This class was released as public domain by the original author
+Yannick Copin. You can find the original Gist where it was
+released at: <a class="reference external" href="https://gist.github.com/ycopin/3342888">https://gist.github.com/ycopin/3342888</a></p>
+<p>Set up Taylor diagram axes, i.e. single quadrant polar
+plot, using mpl_toolkits.axisartist.floating_axes. refstd is
+the reference standard deviation to be compared to.</p>
+<dl class="method">
+<dt id="plotter.TaylorDiagram.add_contours">
+<tt class="descname">add_contours</tt><big>(</big><em>std1</em>, <em>corr1</em>, <em>std2</em>, <em>corr2</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#plotter.TaylorDiagram.add_contours" title="Permalink to this definition">¶</a></dt>
+<dd><p>Add a line between two points
+[std1, corr1] and [std2, corr2]</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="plotter.TaylorDiagram.add_rms_contours">
+<tt class="descname">add_rms_contours</tt><big>(</big><em>levels=5</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#plotter.TaylorDiagram.add_rms_contours" title="Permalink to this definition">¶</a></dt>
+<dd><p>Add constant centered RMS difference contours.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="plotter.TaylorDiagram.add_sample">
+<tt class="descname">add_sample</tt><big>(</big><em>stddev</em>, <em>corrcoef</em>, <em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#plotter.TaylorDiagram.add_sample" title="Permalink to this definition">¶</a></dt>
+<dd><p>Add sample (stddev,corrcoeff) to the Taylor diagram. args
+and kwargs are directly propagated to the Figure.plot
+command.</p>
+</dd></dl>
+
+<dl class="method">
+<dt id="plotter.TaylorDiagram.add_stddev_contours">
+<tt class="descname">add_stddev_contours</tt><big>(</big><em>std</em>, <em>corr1</em>, <em>corr2</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#plotter.TaylorDiagram.add_stddev_contours" title="Permalink to this definition">¶</a></dt>
+<dd><p>Add a curved line with a radius of std between two points
+[std, corr1] and [std, corr2]</p>
+</dd></dl>
+
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_barchart">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_barchart</tt><big>(</big><em>results</em>, <em>yvalues</em>, <em>fname</em>, <em>ptitle=''</em>, <em>fmt='png'</em>, <em>xlabel=''</em>, <em>ylabel=''</em><big>)</big><a class="headerlink" href="#plotter.draw_barchart" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw a barchart.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>results</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; 1D array of  data.</li>
+<li><strong>yvalues</strong> &#8211; List of y-axis labels</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; Filename of the plot.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output.</li>
+<li><strong>xlabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) x-axis title.</li>
+<li><strong>ylabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) y-axis title.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_contour_map">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_contour_map</tt><big>(</big><em>dataset</em>, <em>lats</em>, <em>lons</em>, <em>fname</em>, <em>fmt='png'</em>, <em>gridshape=(1</em>, <em>1)</em>, <em>clabel=''</em>, <em>ptitle=''</em>, <em>subtitles=None</em>, <em>cmap=None</em>, <em>clevs=None</em>, <em>nlevs=10</em>, <em>parallels=None</em>, <em>meridians=None</em>, <em>extend='neither'</em>, <em>aspect=3.4</em><big>)</big><a class="headerlink" href="#plotter.draw_contour_map" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw a multiple panel contour map plot.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>dataset</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; 3D array of data to be plotted with shape (nT, nLat, nLon).</li>
+<li><strong>lats</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; Array of latitudes values.</li>
+<li><strong>lons</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; Array of longitudes</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; The filename of the plot.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output.</li>
+<li><strong>gridshape</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#tuple" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">tuple()</span></tt></a> of the form (num_rows, num_cols)) &#8211; (Optional) tuple denoting the desired grid shape
+(num_rows, num_cols) for arranging the subplots.</li>
+<li><strong>clabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) colorbar title.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>subtitles</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) list of titles for each subplot.</li>
+<li><strong>cmap</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a> or <a class="reference external" href="http://matplotlib.sourceforge.net/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap" title="(in Matplotlib v1.4.3)"><tt class="xref py py-class docutils literal"><span class="pre">matplotlib.colors.LinearSegmentedColormap</span></tt></a>) &#8211; (Optional) string or <a class="reference external" href="http://matplotlib.sourceforge.net/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap" title="(in Matplotlib v1.4.3)"><tt class="xref py py-class docutils literal"><span class="pre">matplotlib.colors.LinearSegmentedColormap</span></tt></a>
+instance denoting the colormap. This must be able to be recognized by
+<a class="reference external" href="http://matplotlib.org/api/cm_api.html#matplotlib.cm.get_cmap">Matplotlib&#8217;s get_cmap function</a>.</li>
+<li><strong>clevs</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) contour levels values.</li>
+<li><strong>nlevs</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a>) &#8211; (Optional) target number of contour levels if clevs is None.</li>
+<li><strong>parallels</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) list of ints or floats for the parallels to
+be drawn. See the <a class="reference external" href="http://matplotlib.org/basemap/users/graticule.html">Basemap documentation</a>
+for additional information.</li>
+<li><strong>meridians</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; <p>(Optional) list of ints or floats for the meridians to
+be drawn. See the <a class="reference external" href="http://matplotlib.org/basemap/users/graticule.html">Basemap documentation</a>
+for additional information.</p>
+</li>
+<li><strong>extend</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) flag to toggle whether to place arrows at the colorbar
+boundaries. Default is &#8216;neither&#8217;, but can also be &#8216;min&#8217;, &#8216;max&#8217;, or
+&#8216;both&#8217;. Will be automatically set to &#8216;both&#8217; if clevs is None.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_histogram">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_histogram</tt><big>(</big><em>dataset_array</em>, <em>data_names</em>, <em>fname</em>, <em>fmt='png'</em>, <em>nbins=10</em><big>)</big><a class="headerlink" href="#plotter.draw_histogram" title="Permalink to this definition">¶</a></dt>
+<dd><dl class="docutils">
+<dt>Purpose::</dt>
+<dd>Draw histograms</dd>
+<dt>Input::</dt>
+<dd>dataset_array - a list of data values [data1, data2, ....]
+data_names    - a list of data names  [&#8216;name1&#8217;,&#8217;name2&#8217;,....]
+fname  - a string specifying the filename of the plot
+bins - number of bins</dd>
+</dl>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_marker_on_map">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_marker_on_map</tt><big>(</big><em>lat</em>, <em>lon</em>, <em>fname</em>, <em>fmt='png'</em>, <em>location_name=' '</em>, <em>gridshape=(1</em>, <em>1)</em><big>)</big><a class="headerlink" href="#plotter.draw_marker_on_map" title="Permalink to this definition">¶</a></dt>
+<dd><dl class="docutils">
+<dt>Purpose::</dt>
+<dd>Draw a marker on a map</dd>
+<dt>Input::</dt>
+<dd>lat - latitude for plotting a marker
+lon - longitude for plotting a marker
+fname  - a string specifying the filename of the plot</dd>
+</dl>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_portrait_diagram">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_portrait_diagram</tt><big>(</big><em>results</em>, <em>rowlabels</em>, <em>collabels</em>, <em>fname</em>, <em>fmt='png'</em>, <em>gridshape=(1</em>, <em>1)</em>, <em>xlabel=''</em>, <em>ylabel=''</em>, <em>clabel=''</em>, <em>ptitle=''</em>, <em>subtitles=None</em>, <em>cmap=None</em>, <em>clevs=None</em>, <em>nlevs=10</em>, <em>extend='neither'</em>, <em>aspect=None</em><big>)</big><a class="headerlink" href="#plotter.draw_portrait_diagram" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw a portrait diagram plot.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>results</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; 3D array of the fields to be plotted. The second dimension
+should correspond to the number of rows in the diagram and the
+third should correspond to the number of columns.</li>
+<li><strong>rowlabels</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; Labels for each row.</li>
+<li><strong>collabels</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; Labels for each row.</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; Filename of the plot.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output.</li>
+<li><strong>gridshape</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#tuple" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">tuple()</span></tt></a> of the form (num_rows, num_cols)) &#8211; (Optional) tuple denoting the desired grid shape
+(num_rows, num_cols) for arranging the subplots.</li>
+<li><strong>xlabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) x-axis title.</li>
+<li><strong>ylabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) y-ayis title.</li>
+<li><strong>clabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) colorbar title.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>subtitles</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) list of titles for each subplot.</li>
+<li><strong>cmap</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a> or <a class="reference external" href="http://matplotlib.sourceforge.net/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap" title="(in Matplotlib v1.4.3)"><tt class="xref py py-class docutils literal"><span class="pre">matplotlib.colors.LinearSegmentedColormap</span></tt></a>) &#8211; <p>(Optional) string or <a class="reference external" href="http://matplotlib.sourceforge.net/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap" title="(in Matplotlib v1.4.3)"><tt class="xref py py-class docutils literal"><span class="pre">matplotlib.colors.LinearSegmentedColormap</span></tt></a>
+instance denoting the colormap. This must be able to be recognized by
+<a class="reference external" href="http://matplotlib.org/api/cm_api.html#matplotlib.cm.get_cmap">Matplotlib&#8217;s get_cmap function</a>.</p>
+</li>
+<li><strong>clevs</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) contour levels values.</li>
+<li><strong>nlevs</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a>) &#8211; Optional target number of contour levels if clevs is None.</li>
+<li><strong>extend</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) flag to toggle whether to place arrows at the colorbar
+boundaries. Default is &#8216;neither&#8217;, but can also be &#8216;min&#8217;, &#8216;max&#8217;, or
+&#8216;both&#8217;. Will be automatically set to &#8216;both&#8217; if clevs is None.</li>
+<li><strong>aspect</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) approximate aspect ratio of each subplot
+(width / height). Default is 8.5 / 5.5</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_subregions">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_subregions</tt><big>(</big><em>subregions</em>, <em>lats</em>, <em>lons</em>, <em>fname</em>, <em>fmt='png'</em>, <em>ptitle=''</em>, <em>parallels=None</em>, <em>meridians=None</em>, <em>subregion_masks=None</em><big>)</big><a class="headerlink" href="#plotter.draw_subregions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw subregion domain(s) on a map.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>subregions</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of subregion objects (Bounds objects)) &#8211; The subregion objects to plot on the map.</li>
+<li><strong>lats</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; Array of latitudes values.</li>
+<li><strong>lons</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; Array of longitudes values.</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; The filename of the plot.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>parallels</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; <p>(Optional) <a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py 
 py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a> for the parallels to
+be drawn. See the <a class="reference external" href="http://matplotlib.org/basemap/users/graticule.html">Basemap documentation</a>
+for additional information.</p>
+</li>
+<li><strong>meridians</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; <p>(Optional) <a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#int" title="(in Python v2.7)"><tt class="xref py 
 py-class docutils literal"><span class="pre">int</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a> for the meridians to
+be drawn. See the <a class="reference external" href="http://matplotlib.org/basemap/users/graticule.html">Basemap documentation</a>
+for additional information.</p>
+</li>
+<li><strong>subregion_masks</strong> (<a class="reference external" href="http://docs.python.org/2/library/stdtypes.html#dict" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#bool" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a> arrays) &#8211; (Optional) <a class="reference external" href="http://docs.python.org/2/library/stdtypes.html#dict" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">dict</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#bool" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a> arrays for each
+subregion for giving finer control of the domain to be drawn, by default
+the entire domain is drawn.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_taylor_diagram">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_taylor_diagram</tt><big>(</big><em>results</em>, <em>names</em>, <em>refname</em>, <em>fname</em>, <em>fmt='png'</em>, <em>gridshape=(1</em>, <em>1)</em>, <em>ptitle=''</em>, <em>subtitles=None</em>, <em>pos='upper right'</em>, <em>frameon=True</em>, <em>radmax=1.5</em><big>)</big><a class="headerlink" href="#plotter.draw_taylor_diagram" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw a Taylor diagram.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>results</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; An Nx2 array containing normalized standard deviations,
+correlation coefficients, and names of evaluation results.</li>
+<li><strong>names</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; A list of names for each evaluated dataset</li>
+<li><strong>refname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; The name of the reference dataset.</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; The filename of the plot.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output plot.</li>
+<li><strong>gridshape</strong> (A <tt class="xref py py-class docutils literal"><span class="pre">tuple</span></tt> of the form (num_rows, num_cols)) &#8211; (Optional) Tuple denoting the desired grid shape
+(num_rows, num_cols) for arranging the subplots.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>subtitles</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) list of strings specifying the title for each
+subplot.</li>
+<li><strong>pos</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a> or <a class="reference external" href="http://docs.python.org/2/library/functions.html#tuple" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">tuple()</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) string or tuple of floats used to set the position
+of the legend. Check the <a class="reference external" href="http://matplotlib.org/api/legend_api.html#matplotlib.legend.Legend">Matplotlib docs</a>
+for additional information.</li>
+<li><strong>frameon</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#bool" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a>) &#8211; (Optional) boolean specifying whether to draw a frame
+around the legend box.</li>
+<li><strong>radmax</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) float to adjust the extent of the axes in terms of
+standard deviation.</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.draw_time_series">
+<tt class="descclassname">plotter.</tt><tt class="descname">draw_time_series</tt><big>(</big><em>results</em>, <em>times</em>, <em>labels</em>, <em>fname</em>, <em>fmt='png'</em>, <em>gridshape=(1</em>, <em>1)</em>, <em>xlabel=''</em>, <em>ylabel=''</em>, <em>ptitle=''</em>, <em>subtitles=None</em>, <em>label_month=False</em>, <em>yscale='linear'</em>, <em>aspect=None</em><big>)</big><a class="headerlink" href="#plotter.draw_time_series" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draw a time series plot.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
+<li><strong>results</strong> (<a class="reference external" href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html#numpy.ndarray" title="(in NumPy v1.9)"><tt class="xref py py-class docutils literal"><span class="pre">numpy.ndarray</span></tt></a>) &#8211; 3D array of time series data.</li>
+<li><strong>times</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/datetime.html#datetime.datetime" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">datetime.datetime</span></tt></a>) &#8211; List of Python datetime objects used by Matplotlib to handle
+axis formatting.</li>
+<li><strong>labels</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; List of names for each data being plotted.</li>
+<li><strong>fname</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; Filename of the plot.</li>
+<li><strong>fmt</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) filetype for the output.</li>
+<li><strong>gridshape</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#tuple" title="(in Python v2.7)"><tt class="xref py py-func docutils literal"><span class="pre">tuple()</span></tt></a> of the form (num_rows, num_cols)) &#8211; (Optional) tuple denoting the desired grid shape
+(num_rows, num_cols) for arranging the subplots.</li>
+<li><strong>xlabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) x-axis title.</li>
+<li><strong>ylabel</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) y-axis title.</li>
+<li><strong>ptitle</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) plot title.</li>
+<li><strong>subtitles</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#list" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">list</span></tt></a> of <a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) list of titles for each subplot.</li>
+<li><strong>label_month</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#bool" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">bool</span></tt></a>) &#8211; (Optional) flag to toggle drawing month labels on the
+x-axis.</li>
+<li><strong>yscale</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; (Optional) y-axis scale value, &#8216;linear&#8217; for linear and &#8216;log&#8217;
+for log base 10.</li>
+<li><strong>aspect</strong> (<a class="reference external" href="http://docs.python.org/2/library/functions.html#float" title="(in Python v2.7)"><tt class="xref py py-class docutils literal"><span class="pre">float</span></tt></a>) &#8211; (Optional) approximate aspect ratio of each subplot
+(width / height). Default is 8.5 / 5.5</li>
+</ul>
+</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+<dl class="function">
+<dt id="plotter.set_cmap">
+<tt class="descclassname">plotter.</tt><tt class="descname">set_cmap</tt><big>(</big><em>name</em><big>)</big><a class="headerlink" href="#plotter.set_cmap" title="Permalink to this definition">¶</a></dt>
+<dd><p>Sets the default colormap (eg when setting cmap=None in a function)
+See: <a class="reference external" href="http://matplotlib.org/examples/pylab_examples/show_colormaps.html">http://matplotlib.org/examples/pylab_examples/show_colormaps.html</a>
+for a list of possible colormaps.
+Appending &#8216;_r&#8217; to a matplotlib colormap name will give you a reversed
+version of it.</p>
+<table class="docutils field-list" frame="void" rules="none">
+<col class="field-name" />
+<col class="field-body" />
+<tbody valign="top">
+<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>name</strong> (<a class="reference external" href="http://docs.python.org/2/library/string.html#module-string" title="(in Python v2.7)"><tt class="xref py py-mod docutils literal"><span class="pre">string</span></tt></a>) &#8211; The name of the colormap.</td>
+</tr>
+</tbody>
+</table>
+</dd></dl>
+
+</div>
+
+
+          </div>
+        </div>
+      </div>
+      <div class="sphinxsidebar">
+        <div class="sphinxsidebarwrapper">
+  <h4>Previous topic</h4>
+  <p class="topless"><a href="metrics.html"
+                        title="previous chapter">Metrics Module</a></p>
+  <h4>Next topic</h4>
+  <p class="topless"><a href="utils.html"
+                        title="next chapter">Utils Module</a></p>
+  <h3>This Page</h3>
+  <ul class="this-page-menu">
+    <li><a href="../_sources/ocw/plotter.txt"
+           rel="nofollow">Show Source</a></li>
+  </ul>
+<div id="searchbox" style="display: none">
+  <h3>Quick search</h3>
+    <form class="search" action="../search.html" method="get">
+      <input type="text" name="q" />
+      <input type="submit" value="Go" />
+      <input type="hidden" name="check_keywords" value="yes" />
+      <input type="hidden" name="area" value="default" />
+    </form>
+    <p class="searchtip" style="font-size: 90%">
+    Enter search terms or a module, class or function name.
+    </p>
+</div>
+<script type="text/javascript">$('#searchbox').show(0);</script>
+        </div>
+      </div>
+      <div class="clearer"></div>
+    </div>
+    <div class="related">
+      <h3>Navigation</h3>
+      <ul>
+        <li class="right" style="margin-right: 10px">
+          <a href="../genindex.html" title="General Index"
+             >index</a></li>
+        <li class="right" >
+          <a href="../http-routingtable.html" title="HTTP Routing Table"
+             >routing table</a> |</li>
+        <li class="right" >
+          <a href="../py-modindex.html" title="Python Module Index"
+             >modules</a> |</li>
+        <li class="right" >
+          <a href="utils.html" title="Utils Module"
+             >next</a> |</li>
+        <li class="right" >
+          <a href="metrics.html" title="Metrics Module"
+             >previous</a> |</li>
+        <li><a href="../index.html">Apache Open Climate Workbench 1.0.0 documentation</a> &raquo;</li> 
+      </ul>
+    </div>
+    <div class="footer">
+        &copy; Copyright 2013, Apache Software Foundation.
+      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.1.
+    </div>
+  </body>
+</html>
\ No newline at end of file



Mime
View raw message