Skip to content

Instantly share code, notes, and snippets.

@sugiki
Created September 24, 2017 03:03
Show Gist options
  • Save sugiki/c3e497390a55232cd9be532f1d9e7dd7 to your computer and use it in GitHub Desktop.
Save sugiki/c3e497390a55232cd9be532f1d9e7dd7 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import requests\n",
"import pandas as pd\n",
"import arrow\n",
"\n",
"def get_currency_data(symbol='JPY=X', data_range='1d', data_interval='5m'):\n",
" res = requests.get('https://query1.finance.yahoo.com/v8/finance/chart/{symbol}?range={data_range}&interval={data_interval}'.format(**locals()))\n",
" data = res.json()\n",
" body = data['chart']['result'][0]\n",
" dt = pd.Series(map(lambda x: arrow.get(x).to('JST').datetime.replace(tzinfo=None), body['timestamp']), name='dt')\n",
" df = pd.DataFrame(body['indicators']['quote'][0], index=dt)\n",
" return df.loc[:, ('open', 'high', 'low', 'close')]"
]
},
{
"cell_type": "code",
"execution_count": 156,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"jpy5m = get_currency_data('JPY=X', '1d', '5m')"
]
},
{
"cell_type": "code",
"execution_count": 157,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"jpy5m.dropna(inplace=True)"
]
},
{
"cell_type": "code",
"execution_count": 246,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>open</th>\n",
" <th>high</th>\n",
" <th>low</th>\n",
" <th>close</th>\n",
" </tr>\n",
" <tr>\n",
" <th>dt</th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" <th></th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>2017-09-22 08:00:00</th>\n",
" <td>112.459999</td>\n",
" <td>112.476997</td>\n",
" <td>112.430000</td>\n",
" <td>112.464996</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2017-09-22 08:05:00</th>\n",
" <td>112.468002</td>\n",
" <td>112.474998</td>\n",
" <td>112.430000</td>\n",
" <td>112.461998</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2017-09-22 08:10:00</th>\n",
" <td>112.459000</td>\n",
" <td>112.467003</td>\n",
" <td>112.440002</td>\n",
" <td>112.459000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2017-09-22 08:15:00</th>\n",
" <td>112.460999</td>\n",
" <td>112.475998</td>\n",
" <td>112.430000</td>\n",
" <td>112.462997</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2017-09-22 08:20:00</th>\n",
" <td>112.468002</td>\n",
" <td>112.475998</td>\n",
" <td>112.430000</td>\n",
" <td>112.459000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" open high low close\n",
"dt \n",
"2017-09-22 08:00:00 112.459999 112.476997 112.430000 112.464996\n",
"2017-09-22 08:05:00 112.468002 112.474998 112.430000 112.461998\n",
"2017-09-22 08:10:00 112.459000 112.467003 112.440002 112.459000\n",
"2017-09-22 08:15:00 112.460999 112.475998 112.430000 112.462997\n",
"2017-09-22 08:20:00 112.468002 112.475998 112.430000 112.459000"
]
},
"execution_count": 246,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"jpy5m.head()"
]
},
{
"cell_type": "code",
"execution_count": 183,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"from bokeh.plotting import figure,show \n",
"from bokeh.io import output_notebook\n",
"from math import pi"
]
},
{
"cell_type": "code",
"execution_count": 184,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
" <div class=\"bk-root\">\n",
" <a href=\"https://bokeh.pydata.org\" target=\"_blank\" class=\"bk-logo bk-logo-small bk-logo-notebook\"></a>\n",
" <span id=\"d31b4595-0745-4cf8-b127-c7a4c022c54d\">Loading BokehJS ...</span>\n",
" </div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/javascript": [
"\n",
"(function(root) {\n",
" function now() {\n",
" return new Date();\n",
" }\n",
"\n",
" var force = true;\n",
"\n",
" if (typeof (root._bokeh_onload_callbacks) === \"undefined\" || force === true) {\n",
" root._bokeh_onload_callbacks = [];\n",
" root._bokeh_is_loading = undefined;\n",
" }\n",
"\n",
" var JS_MIME_TYPE = 'application/javascript';\n",
" var HTML_MIME_TYPE = 'text/html';\n",
" var EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n",
" var CLASS_NAME = 'output_bokeh rendered_html';\n",
"\n",
" /**\n",
" * Render data to the DOM node\n",
" */\n",
" function render(props, node) {\n",
" var script = document.createElement(\"script\");\n",
" node.appendChild(script);\n",
" }\n",
"\n",
" /**\n",
" * Handle when an output is cleared or removed\n",
" */\n",
" function handleClearOutput(event, handle) {\n",
" var cell = handle.cell;\n",
"\n",
" var id = cell.output_area._bokeh_element_id;\n",
" var server_id = cell.output_area._bokeh_server_id;\n",
" // Clean up Bokeh references\n",
" if (id !== undefined) {\n",
" Bokeh.index[id].model.document.clear();\n",
" delete Bokeh.index[id];\n",
" }\n",
"\n",
" if (server_id !== undefined) {\n",
" // Clean up Bokeh references\n",
" var cmd = \"from bokeh.io import _state; print(_state.uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n",
" cell.notebook.kernel.execute(cmd, {\n",
" iopub: {\n",
" output: function(msg) {\n",
" var element_id = msg.content.text.trim();\n",
" Bokeh.index[element_id].model.document.clear();\n",
" delete Bokeh.index[element_id];\n",
" }\n",
" }\n",
" });\n",
" // Destroy server and session\n",
" var cmd = \"from bokeh import io; io._destroy_server('\" + server_id + \"')\";\n",
" cell.notebook.kernel.execute(cmd);\n",
" }\n",
" }\n",
"\n",
" /**\n",
" * Handle when a new output is added\n",
" */\n",
" function handleAddOutput(event, handle) {\n",
" var output_area = handle.output_area;\n",
" var output = handle.output;\n",
"\n",
" // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n",
" if ((output.output_type != \"display_data\") || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n",
" return\n",
" }\n",
"\n",
" var toinsert = output_area.element.find(`.${CLASS_NAME.split(' ')[0]}`);\n",
"\n",
" if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n",
" toinsert[0].firstChild.textContent = output.data[JS_MIME_TYPE];\n",
" // store reference to embed id on output_area\n",
" output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n",
" }\n",
" if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n",
" var bk_div = document.createElement(\"div\");\n",
" bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n",
" var script_attrs = bk_div.children[0].attributes;\n",
" for (var i = 0; i < script_attrs.length; i++) {\n",
" toinsert[0].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n",
" }\n",
" // store reference to server id on output_area\n",
" output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n",
" }\n",
" }\n",
"\n",
" function register_renderer(events, OutputArea) {\n",
"\n",
" function append_mime(data, metadata, element) {\n",
" // create a DOM node to render to\n",
" var toinsert = this.create_output_subarea(\n",
" metadata,\n",
" CLASS_NAME,\n",
" EXEC_MIME_TYPE\n",
" );\n",
" this.keyboard_manager.register_events(toinsert);\n",
" // Render to node\n",
" var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n",
" render(props, toinsert[0]);\n",
" element.append(toinsert);\n",
" return toinsert\n",
" }\n",
"\n",
" /* Handle when an output is cleared or removed */\n",
" events.on('clear_output.CodeCell', handleClearOutput);\n",
" events.on('delete.Cell', handleClearOutput);\n",
"\n",
" /* Handle when a new output is added */\n",
" events.on('output_added.OutputArea', handleAddOutput);\n",
"\n",
" /**\n",
" * Register the mime type and append_mime function with output_area\n",
" */\n",
" OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n",
" /* Is output safe? */\n",
" safe: true,\n",
" /* Index of renderer in `output_area.display_order` */\n",
" index: 0\n",
" });\n",
" }\n",
"\n",
" // register the mime type if in Jupyter Notebook environment and previously unregistered\n",
" if (root.Jupyter !== undefined) {\n",
" var events = require('base/js/events');\n",
" var OutputArea = require('notebook/js/outputarea').OutputArea;\n",
"\n",
" if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n",
" register_renderer(events, OutputArea);\n",
" }\n",
" }\n",
"\n",
" \n",
" if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
" root._bokeh_timeout = Date.now() + 5000;\n",
" root._bokeh_failed_load = false;\n",
" }\n",
"\n",
" var NB_LOAD_WARNING = {'data': {'text/html':\n",
" \"<div style='background-color: #fdd'>\\n\"+\n",
" \"<p>\\n\"+\n",
" \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n",
" \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n",
" \"</p>\\n\"+\n",
" \"<ul>\\n\"+\n",
" \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n",
" \"<li>use INLINE resources instead, as so:</li>\\n\"+\n",
" \"</ul>\\n\"+\n",
" \"<code>\\n\"+\n",
" \"from bokeh.resources import INLINE\\n\"+\n",
" \"output_notebook(resources=INLINE)\\n\"+\n",
" \"</code>\\n\"+\n",
" \"</div>\"}};\n",
"\n",
" function display_loaded() {\n",
" var el = document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\");\n",
" if (el != null) {\n",
" el.textContent = \"BokehJS is loading...\";\n",
" }\n",
" if (root.Bokeh !== undefined) {\n",
" if (el != null) {\n",
" el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n",
" }\n",
" } else if (Date.now() < root._bokeh_timeout) {\n",
" setTimeout(display_loaded, 100)\n",
" }\n",
" }\n",
"\n",
"\n",
" function run_callbacks() {\n",
" try {\n",
" root._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
" }\n",
" finally {\n",
" delete root._bokeh_onload_callbacks\n",
" }\n",
" console.info(\"Bokeh: all callbacks have finished\");\n",
" }\n",
"\n",
" function load_libs(js_urls, callback) {\n",
" root._bokeh_onload_callbacks.push(callback);\n",
" if (root._bokeh_is_loading > 0) {\n",
" console.log(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
" return null;\n",
" }\n",
" if (js_urls == null || js_urls.length === 0) {\n",
" run_callbacks();\n",
" return null;\n",
" }\n",
" console.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
" root._bokeh_is_loading = js_urls.length;\n",
" for (var i = 0; i < js_urls.length; i++) {\n",
" var url = js_urls[i];\n",
" var s = document.createElement('script');\n",
" s.src = url;\n",
" s.async = false;\n",
" s.onreadystatechange = s.onload = function() {\n",
" root._bokeh_is_loading--;\n",
" if (root._bokeh_is_loading === 0) {\n",
" console.log(\"Bokeh: all BokehJS libraries loaded\");\n",
" run_callbacks()\n",
" }\n",
" };\n",
" s.onerror = function() {\n",
" console.warn(\"failed to load library \" + url);\n",
" };\n",
" console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
" document.getElementsByTagName(\"head\")[0].appendChild(s);\n",
" }\n",
" };var element = document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\");\n",
" if (element == null) {\n",
" console.log(\"Bokeh: ERROR: autoload.js configured with elementid 'd31b4595-0745-4cf8-b127-c7a4c022c54d' but no matching script tag was found. \")\n",
" return false;\n",
" }\n",
"\n",
" var js_urls = [\"https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-gl-0.12.9.min.js\"];\n",
"\n",
" var inline_js = [\n",
" function(Bokeh) {\n",
" Bokeh.set_log_level(\"info\");\n",
" },\n",
" \n",
" function(Bokeh) {\n",
" \n",
" },\n",
" function(Bokeh) {\n",
" console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.css\");\n",
" Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.css\");\n",
" console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.css\");\n",
" Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.css\");\n",
" console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.css\");\n",
" Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.css\");\n",
" }\n",
" ];\n",
"\n",
" function run_inline_js() {\n",
" \n",
" if ((root.Bokeh !== undefined) || (force === true)) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i].call(root, root.Bokeh);\n",
" }if (force === true) {\n",
" display_loaded();\n",
" }} else if (Date.now() < root._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!root._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" root._bokeh_failed_load = true;\n",
" } else if (force !== true) {\n",
" var cell = $(document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\")).parents('.cell').data().cell;\n",
" cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
" }\n",
"\n",
" }\n",
"\n",
" if (root._bokeh_is_loading === 0) {\n",
" console.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
" run_inline_js();\n",
" } else {\n",
" load_libs(js_urls, function() {\n",
" console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n",
" run_inline_js();\n",
" });\n",
" }\n",
"}(window));"
],
"application/vnd.bokehjs_load.v0+json": "\n(function(root) {\n function now() {\n return new Date();\n }\n\n var force = true;\n\n if (typeof (root._bokeh_onload_callbacks) === \"undefined\" || force === true) {\n root._bokeh_onload_callbacks = [];\n root._bokeh_is_loading = undefined;\n }\n\n \n\n \n if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\n }\n\n var NB_LOAD_WARNING = {'data': {'text/html':\n \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\");\n if (el != null) {\n el.textContent = \"BokehJS is loading...\";\n }\n if (root.Bokeh !== undefined) {\n if (el != null) {\n el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(display_loaded, 100)\n }\n }\n\n\n function run_callbacks() {\n try {\n root._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n }\n finally {\n delete root._bokeh_onload_callbacks\n }\n console.info(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(js_urls, callback) {\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.log(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n return null;\n }\n if (js_urls == null || js_urls.length === 0) {\n run_callbacks();\n return null;\n }\n console.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = js_urls.length;\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n var s = document.createElement('script');\n s.src = url;\n s.async = false;\n s.onreadystatechange = s.onload = function() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.log(\"Bokeh: all BokehJS libraries loaded\");\n run_callbacks()\n }\n };\n s.onerror = function() {\n console.warn(\"failed to load library \" + url);\n };\n console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.getElementsByTagName(\"head\")[0].appendChild(s);\n }\n };var element = document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\");\n if (element == null) {\n console.log(\"Bokeh: ERROR: autoload.js configured with elementid 'd31b4595-0745-4cf8-b127-c7a4c022c54d' but no matching script tag was found. \")\n return false;\n }\n\n var js_urls = [\"https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-gl-0.12.9.min.js\"];\n\n var inline_js = [\n function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\n \n function(Bokeh) {\n \n },\n function(Bokeh) {\n console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-0.12.9.min.css\");\n console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.9.min.css\");\n console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-tables-0.12.9.min.css\");\n }\n ];\n\n function run_inline_js() {\n \n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }if (force === true) {\n display_loaded();\n }} else if (Date.now() < root._bokeh_timeout) {\n setTimeout(run_inline_js, 100);\n } else if (!root._bokeh_failed_load) {\n console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n root._bokeh_failed_load = true;\n } else if (force !== true) {\n var cell = $(document.getElementById(\"d31b4595-0745-4cf8-b127-c7a4c022c54d\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\n\n }\n\n if (root._bokeh_is_loading === 0) {\n console.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(js_urls, function() {\n console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));"
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"output_notebook()"
]
},
{
"cell_type": "code",
"execution_count": 197,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"df = jpy5m.reset_index()"
]
},
{
"cell_type": "code",
"execution_count": 218,
"metadata": {},
"outputs": [],
"source": [
"# pd.ewma(df.close, span=10, ignore_na=True)\n",
"ewm10 = pd.Series.ewm(df.close, span=10).mean()\n",
"ewm25 = pd.Series.ewm(df.close, span=25).mean()\n",
"ewm75 = pd.Series.ewm(df.close, span=75).mean()"
]
},
{
"cell_type": "code",
"execution_count": 243,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"inc = df.close <= df.open"
]
},
{
"cell_type": "code",
"execution_count": 244,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"w = 3 * 60*1000 # half day in ms"
]
},
{
"cell_type": "code",
"execution_count": 245,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"<div class=\"bk-root\">\n",
" <div class=\"bk-plotdiv\" id=\"311d1475-be24-450e-898b-b7a588f1d5c0\"></div>\n",
"</div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/javascript": [
"(function(root) {\n",
" function embed_document(root) {\n",
" var docs_json = {\"cc93c106-1b51-4386-a567-246079af2817\":{\"roots\":{\"references\":[{\"attributes\":{\"callback\":null,\"column_names\":[\"x0\",\"y0\",\"x1\",\"y1\"],\"data\":{\"x0\":{\"__ndarray__\":\"AAC+5InqdUIAAPwtiup1QgAAeMCK6nVCAAD0UovqdUIAADKci+p1QgAAcOWL6nVCAACuLozqdUIAAOx3jOp1QgAA5JyN6nVCAAAi5o3qdUIAAGAvjup1QgAAGguP6nVCAABYVI/qdUIAANTmj+p1QgAAUHmQ6nVCAACOwpDqdUIAAMwLkep1QgAAClWR6nVCAABInpHqdUIAAH4Mk+p1QgAAvFWT6nVCAAD6npPqdUIAAHYxlOp1QgAAtHqU6nVCAADyw5TqdUIAAG5Wlep1QgAArJ+V6nVCAADq6JXqdUIAACgylup1QgAAZnuW6nVCAACkxJbqdUIAAF6gl+p1QgAA2jKY6nVCAAAYfJjqdUIAAJQOmep1QgAATuqZ6nVCAABGD5vqdUIAAADrm+p1QgAAfH2c6nVCAAC6xpzqdUIAAPgPnep1QgAAdKKd6nVCAAAufp7qdUIAAGzHnup1QgAAqhCf6nVCAAAeyKDqdUIAAJpaoep1QgAA2KOh6nVCAABUNqLqdUIAANDIoup1QgAADhKj6nVCAADI7aPqdUIAAESApOp1QgAA/lul6nVCAAA8paXqdUIAAHrupep1QgAAuDem6nVCAADupafqdUIAAGo4qOp1QgAAJBSp6nVCAACgpqnqdUIAANYUq+p1QgAAUqer6nVCAACQ8KvqdUIAAAyDrOp1QgAASsys6nVCAACIFa3qdUIAAMZerep1QgAABKit6nVCAABC8a3qdUIAAIA6rup1QgAAOhav6nVCAAB4X6/qdUIAADI7sOp1QgAArs2w6nVCAACm8rHqdUIAACKFsup1QgAA3GCz6nVCAABY87PqdUIAAJY8tOp1QgAA1IW06nVCAACOYbXqdUIAAMyqtep1QgAASD226nVCAAD6PbjqdUIAADiHuOp1QgAAdtC46nVCAAC0GbnqdUIAAPJiuep1QgAAMKy56nVCAABu9bnqdUIAAOqHuup1QgAA4qy76nVCAABeP7zqdUIAAJyIvOp1QgAAGBu96nVCAAAQQL7qdUIAAE6Jvup1QgAAjNK+6nVCAADKG7/qdUIAAAhlv+p1QgAARq6/6nVCAAC6ZcHqdUIAAHRBwup1QgAAsorC6nVCAABsZsPqdUIAAGSLxOp1QgAAXLDF6nVCAACa+cXqdUIAAFTVxup1QgAAkh7H6nVCAAAOscfqdUIAAEz6x+p1QgAABtbI6nVCAABEH8nqdUIAAIJoyep1QgAAPETK6nVCAAC41srqdUIAADRpy+p1QgAALI7M6nVCAABq18zqdUIAAOZpzep1QgAAJLPN6nVCAACgRc7qdUIAANazz+p1QgAAFP3P6nVCAABSRtDqdUIAAM7Y0Op1QgAADCLR6nVCAABKa9HqdUIAAARH0up1QgAAQpDS6nVCAAC+ItPqdUIAAPxr0+p1QgAAOrXT6nVCAAC2R9TqdUIAAPSQ1Op1QgAAMtrU6nVC\",\"dtype\":\"float64\",\"shape\":[138]},\"x1\":{\"__ndarray__\":\"AAC+5InqdUIAAPwtiup1QgAAeMCK6nVCAAD0UovqdUIAADKci+p1QgAAcOWL6nVCAACuLozqdUIAAOx3jOp1QgAA5JyN6nVCAAAi5o3qdUIAAGAvjup1QgAAGguP6nVCAABYVI/qdUIAANTmj+p1QgAAUHmQ6nVCAACOwpDqdUIAAMwLkep1QgAAClWR6nVCAABInpHqdUIAAH4Mk+p1QgAAvFWT6nVCAAD6npPqdUIAAHYxlOp1QgAAtHqU6nVCAADyw5TqdUIAAG5Wlep1QgAArJ+V6nVCAADq6JXqdUIAACgylup1QgAAZnuW6nVCAACkxJbqdUIAAF6gl+p1QgAA2jKY6nVCAAAYfJjqdUIAAJQOmep1QgAATuqZ6nVCAABGD5vqdUIAAADrm+p1QgAAfH2c6nVCAAC6xpzqdUIAAPgPnep1QgAAdKKd6nVCAAAufp7qdUIAAGzHnup1QgAAqhCf6nVCAAAeyKDqdUIAAJpaoep1QgAA2KOh6nVCAABUNqLqdUIAANDIoup1QgAADhKj6nVCAADI7aPqdUIAAESApOp1QgAA/lul6nVCAAA8paXqdUIAAHrupep1QgAAuDem6nVCAADupafqdUIAAGo4qOp1QgAAJBSp6nVCAACgpqnqdUIAANYUq+p1QgAAUqer6nVCAACQ8KvqdUIAAAyDrOp1QgAASsys6nVCAACIFa3qdUIAAMZerep1QgAABKit6nVCAABC8a3qdUIAAIA6rup1QgAAOhav6nVCAAB4X6/qdUIAADI7sOp1QgAArs2w6nVCAACm8rHqdUIAACKFsup1QgAA3GCz6nVCAABY87PqdUIAAJY8tOp1QgAA1IW06nVCAACOYbXqdUIAAMyqtep1QgAASD226nVCAAD6PbjqdUIAADiHuOp1QgAAdtC46nVCAAC0GbnqdUIAAPJiuep1QgAAMKy56nVCAABu9bnqdUIAAOqHuup1QgAA4qy76nVCAABeP7zqdUIAAJyIvOp1QgAAGBu96nVCAAAQQL7qdUIAAE6Jvup1QgAAjNK+6nVCAADKG7/qdUIAAAhlv+p1QgAARq6/6nVCAAC6ZcHqdUIAAHRBwup1QgAAsorC6nVCAABsZsPqdUIAAGSLxOp1QgAAXLDF6nVCAACa+cXqdUIAAFTVxup1QgAAkh7H6nVCAAAOscfqdUIAAEz6x+p1QgAABtbI6nVCAABEH8nqdUIAAIJoyep1QgAAPETK6nVCAAC41srqdUIAADRpy+p1QgAALI7M6nVCAABq18zqdUIAAOZpzep1QgAAJLPN6nVCAACgRc7qdUIAANazz+p1QgAAFP3P6nVCAABSRtDqdUIAAM7Y0Op1QgAADCLR6nVCAABKa9HqdUIAAARH0up1QgAAQpDS6nVCAAC+ItPqdUIAAPxr0+p1QgAAOrXT6nVCAAC2R9TqdUIAAPSQ1Op1QgAAMtrU6nVC\",\"dtype\":\"float64\",\"shape\":[138]},\"y0\":{\"__ndarray__\":\"AAAAYGYeXEAAAABg4x1cQAAAAMB2HlxAAAAAoBofXEAAAACgGh9cQAAAAKAaH1xAAAAAACsfXEAAAACgcB1cQAAAAKBDI1xAAAAAIDEgXEAAAAAgXB9cQAAAAEA1HlxAAAAAwB4dXEAAAACAFBZcQAAAAEA3EVxAAAAAAKoRXEAAAACAvg9cQAAAAEAKD1xAAAAAgGgJXEAAAADAnQdcQAAAAACqCVxAAAAAoO8HXEAAAACgxAhcQAAAAOBRCFxAAAAAoBoHXEAAAADAHv1bQAAAAMB0+1tAAAAAQF76W0AAAAAgL/VbQAAAAIDA8ltAAAAAQN/vW0AAAABgEvNbQAAAACCw8ltAAAAAwHTzW0AAAABguvFbQAAAAMBy8FtAAAAAoHD1W0AAAADgT/VbQAAAAECL9FtAAAAA4KXzW0AAAABgEvNbQAAAACCw8ltAAAAAgBT2W0AAAABg4/VbQAAAAMCh9VtAAAAAIIf+W0AAAADAS/9bQAAAACCH/ltAAAAAIIUDXEAAAABAYAVcQAAAAICVA1xAAAAAwCAAXEAAAAAAVPtbQAAAAGAOBVxAAAAA4PsBXEAAAAAAK/9bQAAAAGBm/ltAAAAAQAgEXEAAAABADAJcQAAAACCwAlxAAAAA4Pn+W0AAAACg8QJcQAAAAOClA1xAAAAAANMFXEAAAABAtgNcQAAAAEBeAlxAAAAAoJkBXEAAAAAgrv9bQAAAAAAAAFxAAAAAYOP9W0AAAAAgsv1bQAAAAKAa/1tAAAAAgML9W0AAAABACv9bQAAAAACB/VtAAAAAANUAXEAAAABA4QJcQAAAAGAOBVxAAAAAQLYDXEAAAACgHAJcQAAAACBYAVxAAAAAgL7/W0AAAACAbP9bQAAAAMCfAlxAAAAAQOEKXEAAAADgowhcQAAAAAArB1xAAAAAwKEFXEAAAABACgdcQAAAAMD3A1xAAAAAQLQAXEAAAADg+f5bQAAAAOClA1xAAAAAIK7/W0AAAAAghftbQAAAAOAk/ltAAAAA4Kf+W0AAAADgevxbQAAAAGBk+1tAAAAAILD6W0AAAABgj/pbQAAAAKBH+VtAAAAAAKoBXEAAAADgpQNcQAAAAEBeAlxAAAAAANUAXEAAAADgJAZcQAAAAOD7CVxAAAAAIFgJXEAAAACgRwlcQAAAAOBRCFxAAAAA4KMIXEAAAACg7wdcQAAAAMAgCFxAAAAAgJcGXEAAAABAYAVcQAAAAIDCBVxAAAAAIC8FXEAAAAAgWAFcQAAAAAACA1xAAAAAQOECXEAAAABADAJcQAAAAMD1AFxAAAAAoEMDXEAAAABgZgZcQAAAAMB2BlxAAAAAgMIFXEAAAADAyAZcQAAAACCyBVxAAAAAAP4EXEAAAADAHgVcQAAAAKCbBFxAAAAAYDkEXEAAAABgjwJcQAAAAEBeAlxAAAAAILACXEAAAABAYgBcQAAAAMAgAFxA\",\"dtype\":\"float64\",\"shape\":[138]},\"y1\":{\"__ndarray__\":\"AAAAIIUbXEAAAAAAKRxcQAAAACCFG1xAAAAAACkcXEAAAAAAKRxcQAAAAAApHFxAAAAAgD0aXEAAAACAPRpcQAAAAGC4HlxAAAAAwMwcXEAAAABA4RpcQAAAAKCbHFxAAAAAQDMTXEAAAADAzAxcQAAAAAApDFxAAAAAQGANXEAAAAAghQtcQAAAAECNB1xAAAAAIC/9W0AAAAAAKQRcQAAAAMAeBVxAAAAAAKwEXEAAAADAHgVcQAAAAOB6BFxAAAAAAC36W0AAAAAAAPhbQAAAACCu91tAAAAAwPXwW0AAAAAgXO9bQAAAAEAz61tAAAAA4FHoW0AAAACAvu9bQAAAAAAA8FtAAAAAgBTuW0AAAAAAKexbQAAAAAAp7FtAAAAAgD3yW0AAAACgR/FbQAAAAGAS81tAAAAAAADwW0AAAACgR/FbQAAAAMB27ltAAAAAwJ/yW0AAAACA6/FbQAAAAEAz81tAAAAAgD36W0AAAABA4fpbQAAAAOBR+FtAAAAAYLj+W0AAAAAAAABcQAAAAKDt/FtAAAAAACv3W0AAAADAHvVbQAAAACBc/1tAAAAAwMz8W0AAAAAAVPtbQAAAAAAt+ltAAAAAwMj+W0AAAACgcP1bQAAAACCF+1tAAAAAACn8W0AAAABguP5bQAAAAOB4AVxAAAAAoEcBXEAAAADgowBcQAAAAKBw/VtAAAAAwEv/W0AAAAAAKfxbQAAAAMBJ/FtAAAAAQOH6W0AAAAAAVPtbQAAAAMDM/FtAAAAAQDf5W0AAAACAPfpbQAAAAEDh+ltAAAAAwMz8W0AAAABguP5bQAAAACAxAFxAAAAAgBYBXEAAAABgkf1bQAAAAIAU/ltAAAAAwMz8W0AAAAAghftbQAAAAAAAAFxAAAAAgMIFXEAAAADAHgVcQAAAAGCPAlxAAAAAQDMDXEAAAAAAAABcQAAAAGC4/ltAAAAAACn8W0AAAABA4fpbQAAAACDZ/ltAAAAA4Hz3W0AAAADgUfhbQAAAAOD59ltAAAAAQDP7W0AAAACgmflbQAAAAIBs91tAAAAAIK73W0AAAABACvdbQAAAAIDC9VtAAAAAIFz/W0AAAAAAAABcQAAAAIAU/ltAAAAAoHD9W0AAAAAA1wNcQAAAAIDCBVxAAAAAwKEFXEAAAABguAZcQAAAAGBmBlxAAAAAYGYGXEAAAADgTwVcQAAAAMAeBVxAAAAAQDMDXEAAAABgjwJcQAAAAGCPAlxAAAAAgJf+W0AAAABANf5bQAAAACBc/1tAAAAAAAAAXEAAAAAAAABcQAAAAAAr/1tAAAAAIFz/W0AAAABAMwNcQAAAAGCPAlxAAAAA4HoEXEAAAAAA1wNcQAAAAKDGA1xAAAAAQF4CXEAAAACA6wFcQAAAAGCPAlxAAAAAoEcBXEAAAAAAAABcQAAAAIAU/ltAAAAAwMz8W0AAAADA8/1bQAAAAACs/FtA\",\"dtype\":\"float64\",\"shape\":[138]}}},\"id\":\"11b54eda-3df2-4b2c-8ce4-5fff036d7cdd\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":{\"value\":\"#75a6cf\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"22a8f330-c4b2-400c-aeff-d28245a0b89a\",\"type\":\"Segment\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"321203b0-60e8-4d9c-b57a-22f7934b0dd4\",\"type\":\"Segment\"},{\"attributes\":{\"data_source\":{\"id\":\"11b54eda-3df2-4b2c-8ce4-5fff036d7cdd\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"22a8f330-c4b2-400c-aeff-d28245a0b89a\",\"type\":\"Segment\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"321203b0-60e8-4d9c-b57a-22f7934b0dd4\",\"type\":\"Segment\"},\"selection_glyph\":null,\"view\":{\"id\":\"b2be2dce-aae3-4a2b-8669-7a1b32474111\",\"type\":\"CDSView\"}},\"id\":\"49a1bf13-2d89-43c2-b03e-0822b5a47a1f\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"11b54eda-3df2-4b2c-8ce4-5fff036d7cdd\",\"type\":\"ColumnDataSource\"}},\"id\":\"b2be2dce-aae3-4a2b-8669-7a1b32474111\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"c3d3625d-ee5a-4b6c-a8f4-50f957c82dee\",\"type\":\"ResetTool\"},{\"attributes\":{\"mantissas\":[1,2,5],\"max_interval\":500.0,\"num_minor_ticks\":0},\"id\":\"ea26d100-9129-48cd-bfa8-abf12e9864d6\",\"type\":\"AdaptiveTicker\"},{\"attributes\":{\"days\":[1,15]},\"id\":\"8f08fe0d-ca95-4614-91af-c49b3bbc39a0\",\"type\":\"DaysTicker\"},{\"attributes\":{\"base\":60,\"mantissas\":[1,2,5,10,15,20,30],\"max_interval\":1800000.0,\"min_interval\":1000.0,\"num_minor_ticks\":0},\"id\":\"e46b56c2-359a-487e-9319-e6175cf232cb\",\"type\":\"AdaptiveTicker\"},{\"attributes\":{\"days\":[1,8,15,22]},\"id\":\"7fd0f5c2-9de8-48f8-920d-789aef2d9265\",\"type\":\"DaysTicker\"},{\"attributes\":{\"base\":24,\"mantissas\":[1,2,4,6,8,12],\"max_interval\":43200000.0,\"min_interval\":3600000.0,\"num_minor_ticks\":0},\"id\":\"8b81c9b5-c3a7-4dd3-a11a-32194b91b425\",\"type\":\"AdaptiveTicker\"},{\"attributes\":{\"days\":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]},\"id\":\"6de45c87-7a74-432b-820c-c15b89a2890e\",\"type\":\"DaysTicker\"},{\"attributes\":{},\"id\":\"a00b74a9-9c88-44a2-9ed7-d5ccc55cf3a3\",\"type\":\"BasicTicker\"},{\"attributes\":{\"days\":[1,4,7,10,13,16,19,22,25,28]},\"id\":\"5acef456-fd01-412c-a0a0-244547f84dd1\",\"type\":\"DaysTicker\"},{\"attributes\":{\"months\":[0,1,2,3,4,5,6,7,8,9,10,11]},\"id\":\"2122527d-98bf-482d-a5d6-e92845b80311\",\"type\":\"MonthsTicker\"},{\"attributes\":{\"months\":[0,2,4,6,8,10]},\"id\":\"c290371a-eb6b-45a9-8c25-bb47cb9767ac\",\"type\":\"MonthsTicker\"},{\"attributes\":{\"months\":[0,4,8]},\"id\":\"86d9177a-2995-4d9f-896d-52a8d8b5df38\",\"type\":\"MonthsTicker\"},{\"attributes\":{\"months\":[0,6]},\"id\":\"a00629e8-5e69-4b6f-81e4-8c0bea91419a\",\"type\":\"MonthsTicker\"},{\"attributes\":{},\"id\":\"66ba1a10-f602-4b19-99b8-090c8f513c11\",\"type\":\"YearsTicker\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x0\",\"y0\",\"x1\",\"y1\"],\"data\":{\"x0\":{\"__ndarray__\":\"AACAm4nqdUIAADp3iup1QgAAtgmL6nVCAAAqwYzqdUIAAGgKjep1QgAAplON6nVCAACeeI7qdUIAANzBjup1QgAAlp2P6nVCAAASMJDqdUIAAIbnkep1QgAAxDCS6nVCAAACepLqdUIAAEDDkup1QgAAOOiT6nVCAAAwDZXqdUIAAOINl+p1QgAAIFeX6nVCAACc6ZfqdUIAAFbFmOp1QgAA0leZ6nVCAAAQoZnqdUIAAIwzmup1QgAAynya6nVCAAAIxprqdUIAAIRYm+p1QgAAwqGb6nVCAAA+NJzqdUIAADZZnep1QgAAsuud6nVCAADwNJ7qdUIAAOhZn+p1QgAAJqOf6nVCAABk7J/qdUIAAKI1oOp1QgAA4H6g6nVCAABcEaHqdUIAABbtoep1QgAAkn+i6nVCAABMW6PqdUIAAIqko+p1QgAABjek6nVCAACCyaTqdUIAAMASpep1QgAA9oCm6nVCAAA0yqbqdUIAAHITp+p1QgAAsFyn6nVCAAAs76fqdUIAAKiBqOp1QgAA5sqo6nVCAABiXanqdUIAAN7vqep1QgAAHDmq6nVCAABagqrqdUIAAJjLqup1QgAAFF6r6nVCAADOOazqdUIAAL6Drup1QgAA/Myu6nVCAAC2qK/qdUIAAPTxr+p1QgAAcISw6nVCAADsFrHqdUIAACpgsep1QgAAaKmx6nVCAADkO7LqdUIAAGDOsup1QgAAnhez6nVCAAAaqrPqdUIAABLPtOp1QgAAUBi16nVCAAAK9LXqdUIAAIaGtup1QgAAxM+26nVCAAACGbfqdUIAAEBit+p1QgAAfqu36nVCAAC89LfqdUIAAKw+uup1QgAAKNG66nVCAABmGrvqdUIAAKRju+p1QgAAIPa76nVCAADa0bzqdUIAAFZkvep1QgAAlK296nVCAADS9r3qdUIAAIT3v+p1QgAAwkDA6nVCAAAAisDqdUIAAD7TwOp1QgAAfBzB6nVCAAD4rsHqdUIAADb4wep1QgAA8NPC6nVCAAAuHcPqdUIAAKqvw+p1QgAA6PjD6nVCAAAmQsTqdUIAAKLUxOp1QgAA4B3F6nVCAAAeZ8XqdUIAANhCxup1QgAAFozG6nVCAADQZ8fqdUIAAIpDyOp1QgAAyIzI6nVCAADAscnqdUIAAP76yep1QgAAeo3K6nVCAAD2H8vqdUIAAHKyy+p1QgAAsPvL6nVCAADuRMzqdUIAAKggzep1QgAAYvzN6nVCAADejs7qdUIAABzYzup1QgAAWiHP6nVCAACYas/qdUIAAJCP0Op1QgAAiLTR6nVCAADG/dHqdUIAAIDZ0up1QgAAeP7T6nVC\",\"dtype\":\"float64\",\"shape\":[126]},\"x1\":{\"__ndarray__\":\"AACAm4nqdUIAADp3iup1QgAAtgmL6nVCAAAqwYzqdUIAAGgKjep1QgAAplON6nVCAACeeI7qdUIAANzBjup1QgAAlp2P6nVCAAASMJDqdUIAAIbnkep1QgAAxDCS6nVCAAACepLqdUIAAEDDkup1QgAAOOiT6nVCAAAwDZXqdUIAAOINl+p1QgAAIFeX6nVCAACc6ZfqdUIAAFbFmOp1QgAA0leZ6nVCAAAQoZnqdUIAAIwzmup1QgAAynya6nVCAAAIxprqdUIAAIRYm+p1QgAAwqGb6nVCAAA+NJzqdUIAADZZnep1QgAAsuud6nVCAADwNJ7qdUIAAOhZn+p1QgAAJqOf6nVCAABk7J/qdUIAAKI1oOp1QgAA4H6g6nVCAABcEaHqdUIAABbtoep1QgAAkn+i6nVCAABMW6PqdUIAAIqko+p1QgAABjek6nVCAACCyaTqdUIAAMASpep1QgAA9oCm6nVCAAA0yqbqdUIAAHITp+p1QgAAsFyn6nVCAAAs76fqdUIAAKiBqOp1QgAA5sqo6nVCAABiXanqdUIAAN7vqep1QgAAHDmq6nVCAABagqrqdUIAAJjLqup1QgAAFF6r6nVCAADOOazqdUIAAL6Drup1QgAA/Myu6nVCAAC2qK/qdUIAAPTxr+p1QgAAcISw6nVCAADsFrHqdUIAACpgsep1QgAAaKmx6nVCAADkO7LqdUIAAGDOsup1QgAAnhez6nVCAAAaqrPqdUIAABLPtOp1QgAAUBi16nVCAAAK9LXqdUIAAIaGtup1QgAAxM+26nVCAAACGbfqdUIAAEBit+p1QgAAfqu36nVCAAC89LfqdUIAAKw+uup1QgAAKNG66nVCAABmGrvqdUIAAKRju+p1QgAAIPa76nVCAADa0bzqdUIAAFZkvep1QgAAlK296nVCAADS9r3qdUIAAIT3v+p1QgAAwkDA6nVCAAAAisDqdUIAAD7TwOp1QgAAfBzB6nVCAAD4rsHqdUIAADb4wep1QgAA8NPC6nVCAAAuHcPqdUIAAKqvw+p1QgAA6PjD6nVCAAAmQsTqdUIAAKLUxOp1QgAA4B3F6nVCAAAeZ8XqdUIAANhCxup1QgAAFozG6nVCAADQZ8fqdUIAAIpDyOp1QgAAyIzI6nVCAADAscnqdUIAAP76yep1QgAAeo3K6nVCAAD2H8vqdUIAAHKyy+p1QgAAsPvL6nVCAADuRMzqdUIAAKggzep1QgAAYvzN6nVCAADejs7qdUIAABzYzup1QgAAWiHP6nVCAACYas/qdUIAAJCP0Op1QgAAiLTR6nVCAADG/dHqdUIAAIDZ0up1QgAAeP7T6nVC\",\"dtype\":\"float64\",\"shape\":[126]},\"y0\":{\"__ndarray__\":\"AAAAIIceXEAAAADAdh5cQAAAAAArH1xAAAAAoHAdXEAAAAAg2R5cQAAAACCFI1xAAAAAYGYeXEAAAABguB5cQAAAAGA7F1xAAAAAQOESXEAAAABAMwNcQAAAAIA/BVxAAAAAwHYGXEAAAADgeAlcQAAAAKBHCVxAAAAAAIH9W0AAAAAgh+5bQAAAAIDA8ltAAAAAYI/yW0AAAABADPJbQAAAAKDE8FtAAAAAIFjxW0AAAACAvu9bQAAAACAv9VtAAAAAAIH1W0AAAACAavRbQAAAAABW9ltAAAAAQIv0W0AAAADAn/JbQAAAACCF81tAAAAAQDX2W0AAAADAofVbQAAAAADT9VtAAAAAwPX4W0AAAAAA/vxbQAAAAMDM/FtAAAAAACv/W0AAAADAdANcQAAAAEAIBFxAAAAAIFz/W0AAAAAA1QBcQAAAAICV+1tAAAAAwPX4W0AAAABgEgNcQAAAAGDn+1tAAAAA4Hz/W0AAAADAIABcQAAAAGASA1xAAAAAoEMDXEAAAAAg2wFcQAAAAICVA1xAAAAAgOn+W0AAAABACv9bQAAAAEBiAFxAAAAAIDEAXEAAAACgHAJcQAAAAKBDA1xAAAAAYDkEXEAAAAAgL/1bQAAAAMAgAFxAAAAAQGD9W0AAAACAbP9bQAAAAMBJ/FtAAAAAIFz/W0AAAACgRwFcQAAAAADVAFxAAAAA4NACXEAAAACgQwNcQAAAAOClA1xAAAAAQLYDXEAAAADA9QBcQAAAACCDAFxAAAAAwJ8CXEAAAADAygFcQAAAAMCfAlxAAAAAYBIDXEAAAABAYAVcQAAAACAEBlxAAAAAYBAIXEAAAABgO/9bQAAAAMCd/1tAAAAAINsBXEAAAABg5wNcQAAAAACqAVxAAAAAYJH9W0AAAACAavxbQAAAAMDM/FtAAAAAgBT+W0AAAABAXvpbQAAAAKDG+1tAAAAAQIv8W0AAAAAgMQBcQAAAAAB/AlxAAAAAAKoBXEAAAADgTQJcQAAAAGDlAFxAAAAAgGgBXEAAAADA9QBcQAAAAKAcAlxAAAAAgJcGXEAAAADAyAZcQAAAAMCdB1xAAAAAwHIIXEAAAAAg2QZcQAAAAODOB1xAAAAAINsJXEAAAAAgrgdcQAAAAMAgCFxAAAAAYLwEXEAAAACgcAVcQAAAAEBgBVxAAAAAoEcBXEAAAACgRwFcQAAAAIDrAVxAAAAA4KUDXEAAAADgTQJcQAAAAMBJBFxAAAAAYGQDXEAAAAAA1wNcQAAAAIAUBlxAAAAAgJcGXEAAAACgRQZcQAAAAADTBVxAAAAAwB4FXEAAAADgegRcQAAAACCwAlxA\",\"dtype\":\"float64\",\"shape\":[126]},\"y1\":{\"__ndarray__\":\"AAAAIIUbXEAAAAAghRtcQAAAAAApHFxAAAAAoJkZXEAAAABA4RpcQAAAAAApHFxAAAAAQOEaXEAAAAAghRtcQAAAAGASE1xAAAAAYLgOXEAAAAAAKfxbQAAAACBc/1tAAAAAYI8CXEAAAABgjwJcQAAAAAD+BFxAAAAAwPX4W0AAAACgmelbQAAAAMCf6ltAAAAAYLjuW0AAAACg7+9bQAAAAMB27ltAAAAAoHDtW0AAAAAAKexbQAAAAKBF7ltAAAAAgD3yW0AAAACgR/FbQAAAAGCP8ltAAAAAgOvxW0AAAAAgXO9bQAAAAAAA8FtAAAAAgOvxW0AAAAAgWvRbQAAAAIDr8VtAAAAAoO30W0AAAACA6fZbQAAAAKCZ+VtAAAAAIIX7W0AAAAAgsPpbQAAAAIAU/ltAAAAAIIX7W0AAAABA4fpbQAAAAEAK91tAAAAAwB71W0AAAAAgMfhbQAAAACCu91tAAAAAwPX4W0AAAAAghftbQAAAAADX+1tAAAAAgBT+W0AAAACAFP5bQAAAAOCjAFxAAAAAIIX7W0AAAAAgL/1bQAAAAMDM/FtAAAAAoHD9W0AAAADAzPxbQAAAAAAAAFxAAAAAgOsBXEAAAABAM/tbQAAAAKAY/FtAAAAAwJ/6W0AAAAAghftbQAAAAKCZ+VtAAAAAQLb7W0AAAABg4/1bQAAAAGC4/ltAAAAAAAAAXEAAAABguP5bQAAAACBc/1tAAAAAAAAAXEAAAACAFP5bQAAAAKBw/VtAAAAAACn8W0AAAABguP5bQAAAAGC4/ltAAAAAIFz/W0AAAADgowBcQAAAAGCPAlxAAAAAgOsBXEAAAAAghftbQAAAAMDM/FtAAAAAoHD9W0AAAAAAAABcQAAAAMDM/FtAAAAAgGj5W0AAAACgxPhbQAAAAAB/+ltAAAAAoJn5W0AAAABgZvZbQAAAACCu91tAAAAAgMD6W0AAAACgmflbQAAAAEA1/ltAAAAAgGz/W0AAAAAgXP9bQAAAACBc/1tAAAAAgBT+W0AAAACAFP5bQAAAAGA7/1tAAAAA4KMAXEAAAAAA1wNcQAAAAOB6BFxAAAAAgBQGXEAAAAAA/gRcQAAAAOB6BFxAAAAAoEUGXEAAAADAzARcQAAAAIDCBVxAAAAAgOsBXEAAAABAMwNcQAAAAGCPAlxAAAAA4M7/W0AAAACgcP1bQAAAAIAU/ltAAAAAoEcBXEAAAADgowBcQAAAAIAU/ltAAAAA4KMAXEAAAAAg2wFcQAAAAGASA1xAAAAAwMwEXEAAAAAA1wNcQAAAAIDrAVxAAAAAYI8CXEAAAACA6wFcQAAAAOCjAFxA\",\"dtype\":\"float64\",\"shape\":[126]}}},\"id\":\"4c0085ba-1875-47b4-bb3c-dc0ca347a30b\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"top\",\"bottom\"],\"data\":{\"bottom\":{\"__ndarray__\":\"AAAAYJEdXEAAAABAYB1cQAAAAEBgHVxAAAAA4KceXEAAAACAlx5cQAAAAOAkHlxAAAAA4E8dXEAAAADAzBxcQAAAAAAAIFxAAAAAwHYeXEAAAABgDh1cQAAAAGAOHVxAAAAAQAgUXEAAAACgGg9cQAAAAIC+D1xAAAAAIAQOXEAAAADgJA5cQAAAAKBHCVxAAAAAwMj+W0AAAADAdgZcQAAAAEA1BlxAAAAAgD8FXEAAAACg7wdcQAAAAIDpBlxAAAAA4CL7W0AAAABg5fhbQAAAAOCj+FtAAAAAACn0W0AAAACAaPFbQAAAACBc71tAAAAA4KXrW0AAAABAN/FbQAAAAGC68VtAAAAAgGjxW0AAAADgp+5bQAAAAIDC7VtAAAAAAALzW0AAAABgZPNbQAAAAMB081tAAAAAQF7yW0AAAABguvFbQAAAAEAM8ltAAAAAIC/1W0AAAAAg3fRbQAAAACDd9FtAAAAAYLz8W0AAAACgcP1bQAAAACCF+1tAAAAA4FEAXEAAAACgmQFcQAAAAKBw/VtAAAAAQGL4W0AAAAAAK/dbQAAAAKDEAFxAAAAAwMj+W0AAAABgDv1bQAAAAEAz+1tAAAAAgGz/W0AAAACAkwBcQAAAACCy/VtAAAAA4E/9W0AAAACgRwFcQAAAAKBuAlxAAAAAAH8CXEAAAABADAJcQAAAAICTAFxAAAAAIFz/W0AAAADg+f5bQAAAACDd/FtAAAAA4Hr8W0AAAACgxvtbQAAAAGCR/VtAAAAAYBL7W0AAAABgZPtbQAAAAKDG+1tAAAAAQGIAXEAAAADgeAFcQAAAAKAcAlxAAAAAQAwCXEAAAACAvv9bQAAAAIC+/1tAAAAA4Pn+W0AAAADgJP5bQAAAAMD1AFxAAAAAQI0HXEAAAABgOwdcQAAAAMChBVxAAAAAoHAFXEAAAABAXgJcQAAAAEDf/1tAAAAAwKH9W0AAAAAAVv5bQAAAACDZ/ltAAAAAgMD6W0AAAABADPpbQAAAAIBo+VtAAAAAANf7W0AAAADg0PpbQAAAAAAt+ltAAAAAoBz6W0AAAADA9fhbQAAAAKAa91tAAAAAIDEAXEAAAADgTQJcQAAAAAAAAFxAAAAAQAr/W0AAAAAA/gRcQAAAAGAQCFxAAAAAYOMFXEAAAABAjQdcQAAAACDZBlxAAAAAQN8HXEAAAAAgsgVcQAAAAOAkBlxAAAAAoO0EXEAAAACAlQNcQAAAAEAzA1xAAAAAAAAAXEAAAACA6f5bQAAAAAAtAlxAAAAAoEcBXEAAAACAFgFcQAAAAOB8/1tAAAAAoEcBXEAAAACAwgVcQAAAAOBPBVxAAAAAoO0EXEAAAABAYAVcQAAAAMBJBFxAAAAAQF4CXEAAAABAiwRcQAAAAAApBFxAAAAAQF4CXEAAAABgugFcQAAAAKBHAVxAAAAA4Kf+W0AAAADA8/1bQAAAAACs/FtA\",\"dtype\":\"float64\",\"shape\":[138]},\"top\":{\"__ndarray__\":\"AAAAwPMdXEAAAABAYB1cQAAAAMDzHVxAAAAAYLgeXEAAAABACh9cQAAAAMB2HlxAAAAAwPMdXEAAAADAHh1cQAAAAAB/IlxAAAAAIDEgXEAAAADAdh5cQAAAAMDzHVxAAAAAAP4cXEAAAAAAgRVcQAAAAEBiEFxAAAAAQN8PXEAAAACgRQ5cQAAAAOCnDlxAAAAAQDcJXEAAAADAnQdcQAAAAMB2BlxAAAAAwPMFXEAAAACgxAhcQAAAAOD5BlxAAAAA4PkGXEAAAACgm/xbQAAAAKBH+VtAAAAA4FH4W0AAAADgevRbQAAAAIBo8VtAAAAA4PnuW0AAAACgmfFbQAAAAOD78VtAAAAAAKrxW0AAAABguvFbQAAAAMBL71tAAAAAANfzW0AAAACAP/VbQAAAAECL9FtAAAAAwHTzW0AAAACgbvJbQAAAAAB/8ltAAAAAwKH1W0AAAACAP/VbQAAAACDd9FtAAAAAYLz8W0AAAAAg2f5bQAAAAMCh/VtAAAAAAFQDXEAAAACA6wFcQAAAAACqAVxAAAAAwCAAXEAAAAAg2/lbQAAAAGC6AVxAAAAAoMQAXEAAAADAyP5bQAAAACAv/VtAAAAAQIkBXEAAAABADAJcQAAAACCwAlxAAAAA4Pn+W0AAAADAygFcQAAAAEDhAlxAAAAAwJ8CXEAAAADgIgNcQAAAAIA9AlxAAAAA4KMAXEAAAABgO/9bQAAAAAAr/1tAAAAAwMz8W0AAAABgvPxbQAAAAIAU/ltAAAAAgML9W0AAAADAyP5bQAAAAGDn+1tAAAAA4KMAXEAAAABAiQFcQAAAAAAtAlxAAAAAgMACXEAAAABADAJcQAAAAIC+/1tAAAAAgL7/W0AAAACA6f5bQAAAAOB4AVxAAAAAwJ0HXEAAAACAvgdcQAAAAAArB1xAAAAAoHAFXEAAAADgTwVcQAAAAIA9AlxAAAAA4M7/W0AAAADAyP5bQAAAAIA9AlxAAAAAwEv/W0AAAABAXvpbQAAAAEBg/VtAAAAAYOP9W0AAAACgGPxbQAAAAGAS+1tAAAAAAC36W0AAAABgj/pbQAAAAADV+FtAAAAAwPUAXEAAAABgjwJcQAAAAAAtAlxAAAAAQGIAXEAAAAAA/gRcQAAAAOBRCFxAAAAAIK4HXEAAAAAgrgdcQAAAAAAACFxAAAAAYBAIXEAAAAAgrgdcQAAAAECNB1xAAAAAIAQGXEAAAACg7QRcQAAAAAD+BFxAAAAAYA4FXEAAAACgRwFcQAAAAODQAlxAAAAAwMoBXEAAAADAygFcQAAAAMD1AFxAAAAAwJ8CXEAAAAAgBAZcQAAAACCyBVxAAAAAIC8FXEAAAACAFAZcQAAAAEBgBVxAAAAAoJsEXEAAAAAA/gRcQAAAAECLBFxAAAAA4CIDXEAAAAAALQJcQAAAAGC6AVxAAAAAQAwCXEAAAAAgXP9bQAAAAOAk/ltA\",\"dtype\":\"float64\",\"shape\":[138]},\"x\":{\"__ndarray__\":\"AAC+5InqdUIAAPwtiup1QgAAeMCK6nVCAAD0UovqdUIAADKci+p1QgAAcOWL6nVCAACuLozqdUIAAOx3jOp1QgAA5JyN6nVCAAAi5o3qdUIAAGAvjup1QgAAGguP6nVCAABYVI/qdUIAANTmj+p1QgAAUHmQ6nVCAACOwpDqdUIAAMwLkep1QgAAClWR6nVCAABInpHqdUIAAH4Mk+p1QgAAvFWT6nVCAAD6npPqdUIAAHYxlOp1QgAAtHqU6nVCAADyw5TqdUIAAG5Wlep1QgAArJ+V6nVCAADq6JXqdUIAACgylup1QgAAZnuW6nVCAACkxJbqdUIAAF6gl+p1QgAA2jKY6nVCAAAYfJjqdUIAAJQOmep1QgAATuqZ6nVCAABGD5vqdUIAAADrm+p1QgAAfH2c6nVCAAC6xpzqdUIAAPgPnep1QgAAdKKd6nVCAAAufp7qdUIAAGzHnup1QgAAqhCf6nVCAAAeyKDqdUIAAJpaoep1QgAA2KOh6nVCAABUNqLqdUIAANDIoup1QgAADhKj6nVCAADI7aPqdUIAAESApOp1QgAA/lul6nVCAAA8paXqdUIAAHrupep1QgAAuDem6nVCAADupafqdUIAAGo4qOp1QgAAJBSp6nVCAACgpqnqdUIAANYUq+p1QgAAUqer6nVCAACQ8KvqdUIAAAyDrOp1QgAASsys6nVCAACIFa3qdUIAAMZerep1QgAABKit6nVCAABC8a3qdUIAAIA6rup1QgAAOhav6nVCAAB4X6/qdUIAADI7sOp1QgAArs2w6nVCAACm8rHqdUIAACKFsup1QgAA3GCz6nVCAABY87PqdUIAAJY8tOp1QgAA1IW06nVCAACOYbXqdUIAAMyqtep1QgAASD226nVCAAD6PbjqdUIAADiHuOp1QgAAdtC46nVCAAC0GbnqdUIAAPJiuep1QgAAMKy56nVCAABu9bnqdUIAAOqHuup1QgAA4qy76nVCAABeP7zqdUIAAJyIvOp1QgAAGBu96nVCAAAQQL7qdUIAAE6Jvup1QgAAjNK+6nVCAADKG7/qdUIAAAhlv+p1QgAARq6/6nVCAAC6ZcHqdUIAAHRBwup1QgAAsorC6nVCAABsZsPqdUIAAGSLxOp1QgAAXLDF6nVCAACa+cXqdUIAAFTVxup1QgAAkh7H6nVCAAAOscfqdUIAAEz6x+p1QgAABtbI6nVCAABEH8nqdUIAAIJoyep1QgAAPETK6nVCAAC41srqdUIAADRpy+p1QgAALI7M6nVCAABq18zqdUIAAOZpzep1QgAAJLPN6nVCAACgRc7qdUIAANazz+p1QgAAFP3P6nVCAABSRtDqdUIAAM7Y0Op1QgAADCLR6nVCAABKa9HqdUIAAARH0up1QgAAQpDS6nVCAAC+ItPqdUIAAPxr0+p1QgAAOrXT6nVCAAC2R9TqdUIAAPSQ1Op1QgAAMtrU6nVC\",\"dtype\":\"float64\",\"shape\":[138]}}},\"id\":\"00598507-7707-430c-b7c4-84076e96bf11\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"#75a6cf\"},\"line_color\":{\"value\":\"#75a6cf\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":180000},\"x\":{\"field\":\"x\"}},\"id\":\"5d3fb4b3-68fa-40dd-8fb0-658afb6bdf76\",\"type\":\"VBar\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":180000},\"x\":{\"field\":\"x\"}},\"id\":\"b8b2aeba-594a-4684-91e8-c59e05fc15f0\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"00598507-7707-430c-b7c4-84076e96bf11\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"5d3fb4b3-68fa-40dd-8fb0-658afb6bdf76\",\"type\":\"VBar\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"b8b2aeba-594a-4684-91e8-c59e05fc15f0\",\"type\":\"VBar\"},\"selection_glyph\":null,\"view\":{\"id\":\"9a9455b0-fbcc-4f0f-8547-114b25a3337e\",\"type\":\"CDSView\"}},\"id\":\"bc0c396f-91d4-46b9-a1f9-c24fcac1da20\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"00598507-7707-430c-b7c4-84076e96bf11\",\"type\":\"ColumnDataSource\"}},\"id\":\"9a9455b0-fbcc-4f0f-8547-114b25a3337e\",\"type\":\"CDSView\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"top\",\"bottom\"],\"data\":{\"bottom\":{\"__ndarray__\":\"AAAAgMIdXEAAAADAoR1cQAAAAGC4HlxAAAAAYA4dXEAAAAAgsh1cQAAAAOBNIlxAAAAAILIdXEAAAADA8x1cQAAAAGDjFVxAAAAAQGIQXEAAAACAPQJcQAAAAMDMBFxAAAAA4E8FXEAAAACAbAdcQAAAACCDCFxAAAAAwB79W0AAAAAgBO5bQAAAAKCZ8VtAAAAAAKrxW0AAAACAaPFbQAAAAGAQ8FtAAAAAwEvvW0AAAABguO5bQAAAAGDn81tAAAAAwB71W0AAAABg5/NbQAAAAOBP9VtAAAAAgGr0W0AAAABgj/JbQAAAACCF81tAAAAAAIH1W0AAAAAg3fRbQAAAAGAO9VtAAAAAIFz3W0AAAAAAKfxbQAAAAGC8/FtAAAAAoBr/W0AAAABgZANcQAAAAOBNAlxAAAAAACn8W0AAAADAIABcQAAAAOAm+VtAAAAAoMT4W0AAAACgmQFcQAAAACCF+1tAAAAAAKz8W0AAAABgDv1bQAAAAACqAVxAAAAAgOsBXEAAAACgRwFcQAAAAIDAAlxAAAAAwMj+W0AAAADgp/5bQAAAAGC4/ltAAAAAQN//W0AAAAAg2wFcQAAAAKDxAlxAAAAAQDMDXEAAAABAi/xbQAAAACAE/ltAAAAAAP78W0AAAACAl/5bQAAAAOCl+1tAAAAAgBT+W0AAAABAjf9bQAAAAEC0AFxAAAAAQIkBXEAAAABAXgJcQAAAAOBNAlxAAAAAYBIDXEAAAABA3/9bQAAAAIC+/1tAAAAAgBYBXEAAAAAgBgFcQAAAAMDKAVxAAAAAYBIDXEAAAAAgsAJcQAAAAADTBVxAAAAA4HwHXEAAAAAg2f5bQAAAACCH/ltAAAAAYLoBXEAAAAAALQJcQAAAACBc/1tAAAAAAIH9W0AAAACgQ/tbQAAAAEC2+1tAAAAAIAT+W0AAAADgePlbQAAAAKBD+1tAAAAAYGT7W0AAAABANf5bQAAAACBYAVxAAAAAgJMAXEAAAADgTQJcQAAAAEBiAFxAAAAA4FEAXEAAAADgowBcQAAAAOD7AVxAAAAAACkEXEAAAADAyAZcQAAAAGA7B1xAAAAAwHIIXEAAAADgpwZcQAAAACCuB1xAAAAAIDEIXEAAAABgZgZcQAAAAECNB1xAAAAAAKwEXEAAAADAzARcQAAAAMDMBFxAAAAA4CYBXEAAAAAAAABcQAAAACDbAVxAAAAAQOECXEAAAABgugFcQAAAAEDhAlxAAAAAQAwCXEAAAAAA1wNcQAAAAIAUBlxAAAAAAFYGXEAAAACgRQZcQAAAAKCbBFxAAAAAwB4FXEAAAACgGARcQAAAAAAtAlxA\",\"dtype\":\"float64\",\"shape\":[126]},\"top\":{\"__ndarray__\":\"AAAAoHAdXEAAAAAAgR1cQAAAAEBgHVxAAAAAIN0cXEAAAADAHh1cQAAAAMDMHFxAAAAAoO0cXEAAAADAoR1cQAAAACCFE1xAAAAAYDsPXEAAAAAgXP9bQAAAAEAMAlxAAAAAwMwEXEAAAADAHgVcQAAAAACBBVxAAAAAIIX7W0AAAABAtutbQAAAAIAU7ltAAAAAIAbxW0AAAACAFvFbQAAAACDZ7ltAAAAAYLjuW0AAAACAwu1bQAAAAKAa71tAAAAAwPfzW0AAAABAtvNbQAAAAAAp9FtAAAAAQDPzW0AAAACgmfFbQAAAAACq8VtAAAAAIIXzW0AAAACgm/RbQAAAAACs9FtAAAAAYA71W0AAAABACvdbQAAAAKAY/FtAAAAAwMz8W0AAAAAghftbQAAAACAxAFxAAAAAIIX7W0AAAACAavxbQAAAAKDE+FtAAAAAACv3W0AAAACgxPhbQAAAAKDx+ltAAAAAgJX7W0AAAAAg3fxbQAAAAMAe/VtAAAAAwJ3/W0AAAABAtABcQAAAAOAmAVxAAAAAQGD9W0AAAADAof1bQAAAAMDM/FtAAAAAYLj+W0AAAACAvv9bQAAAAKCZAVxAAAAAYI8CXEAAAABg5/tbQAAAAKCb/FtAAAAA4CL7W0AAAADgT/1bQAAAAKBD+1tAAAAAYOf7W0AAAACAFP5bQAAAAECN/1tAAAAAAAAAXEAAAADgJgFcQAAAAEAMAlxAAAAA4PsBXEAAAAAgrv9bQAAAAOB8/1tAAAAAwHb+W0AAAAAA1QBcQAAAACBYAVxAAAAAYI8CXEAAAADgowBcQAAAAIDAAlxAAAAAQGAFXEAAAAAgsv1bQAAAAABW/ltAAAAAINn+W0AAAABAiQFcQAAAAKAa/1tAAAAAYLr5W0AAAABAiflbQAAAAGBk+1tAAAAAIIX7W0AAAADgzvdbQAAAAIBo+VtAAAAA4CL7W0AAAAAghftbQAAAAABW/ltAAAAAAAAAXEAAAACAkwBcQAAAAMAgAFxAAAAAgBT+W0AAAABgO/9bQAAAAKDEAFxAAAAAwMoBXEAAAABgDgVcQAAAAGC4BlxAAAAAACsHXEAAAAAgBAZcQAAAAOCnBlxAAAAAAFYGXEAAAAAgsgVcQAAAAICXBlxAAAAAQDMDXEAAAAAArARcQAAAAAApBFxAAAAA4FEAXEAAAACA6f5bQAAAAKDv/1tAAAAAYLoBXEAAAADgowBcQAAAAIBs/1tAAAAAQIkBXEAAAACAPQJcQAAAAADXA1xAAAAAANMFXEAAAACg7QRcQAAAAKBuAlxAAAAAQIsEXEAAAADA9wNcQAAAAEA3AVxA\",\"dtype\":\"float64\",\"shape\":[126]},\"x\":{\"__ndarray__\":\"AACAm4nqdUIAADp3iup1QgAAtgmL6nVCAAAqwYzqdUIAAGgKjep1QgAAplON6nVCAACeeI7qdUIAANzBjup1QgAAlp2P6nVCAAASMJDqdUIAAIbnkep1QgAAxDCS6nVCAAACepLqdUIAAEDDkup1QgAAOOiT6nVCAAAwDZXqdUIAAOINl+p1QgAAIFeX6nVCAACc6ZfqdUIAAFbFmOp1QgAA0leZ6nVCAAAQoZnqdUIAAIwzmup1QgAAynya6nVCAAAIxprqdUIAAIRYm+p1QgAAwqGb6nVCAAA+NJzqdUIAADZZnep1QgAAsuud6nVCAADwNJ7qdUIAAOhZn+p1QgAAJqOf6nVCAABk7J/qdUIAAKI1oOp1QgAA4H6g6nVCAABcEaHqdUIAABbtoep1QgAAkn+i6nVCAABMW6PqdUIAAIqko+p1QgAABjek6nVCAACCyaTqdUIAAMASpep1QgAA9oCm6nVCAAA0yqbqdUIAAHITp+p1QgAAsFyn6nVCAAAs76fqdUIAAKiBqOp1QgAA5sqo6nVCAABiXanqdUIAAN7vqep1QgAAHDmq6nVCAABagqrqdUIAAJjLqup1QgAAFF6r6nVCAADOOazqdUIAAL6Drup1QgAA/Myu6nVCAAC2qK/qdUIAAPTxr+p1QgAAcISw6nVCAADsFrHqdUIAACpgsep1QgAAaKmx6nVCAADkO7LqdUIAAGDOsup1QgAAnhez6nVCAAAaqrPqdUIAABLPtOp1QgAAUBi16nVCAAAK9LXqdUIAAIaGtup1QgAAxM+26nVCAAACGbfqdUIAAEBit+p1QgAAfqu36nVCAAC89LfqdUIAAKw+uup1QgAAKNG66nVCAABmGrvqdUIAAKRju+p1QgAAIPa76nVCAADa0bzqdUIAAFZkvep1QgAAlK296nVCAADS9r3qdUIAAIT3v+p1QgAAwkDA6nVCAAAAisDqdUIAAD7TwOp1QgAAfBzB6nVCAAD4rsHqdUIAADb4wep1QgAA8NPC6nVCAAAuHcPqdUIAAKqvw+p1QgAA6PjD6nVCAAAmQsTqdUIAAKLUxOp1QgAA4B3F6nVCAAAeZ8XqdUIAANhCxup1QgAAFozG6nVCAADQZ8fqdUIAAIpDyOp1QgAAyIzI6nVCAADAscnqdUIAAP76yep1QgAAeo3K6nVCAAD2H8vqdUIAAHKyy+p1QgAAsPvL6nVCAADuRMzqdUIAAKggzep1QgAAYvzN6nVCAADejs7qdUIAABzYzup1QgAAWiHP6nVCAACYas/qdUIAAJCP0Op1QgAAiLTR6nVCAADG/dHqdUIAAIDZ0up1QgAAeP7T6nVC\",\"dtype\":\"float64\",\"shape\":[126]}}},\"id\":\"0afb80b5-98e1-448f-9a51-c4fe3c1ee9de\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"num_minor_ticks\":5,\"tickers\":[{\"id\":\"ea26d100-9129-48cd-bfa8-abf12e9864d6\",\"type\":\"AdaptiveTicker\"},{\"id\":\"e46b56c2-359a-487e-9319-e6175cf232cb\",\"type\":\"AdaptiveTicker\"},{\"id\":\"8b81c9b5-c3a7-4dd3-a11a-32194b91b425\",\"type\":\"AdaptiveTicker\"},{\"id\":\"6de45c87-7a74-432b-820c-c15b89a2890e\",\"type\":\"DaysTicker\"},{\"id\":\"5acef456-fd01-412c-a0a0-244547f84dd1\",\"type\":\"DaysTicker\"},{\"id\":\"7fd0f5c2-9de8-48f8-920d-789aef2d9265\",\"type\":\"DaysTicker\"},{\"id\":\"8f08fe0d-ca95-4614-91af-c49b3bbc39a0\",\"type\":\"DaysTicker\"},{\"id\":\"2122527d-98bf-482d-a5d6-e92845b80311\",\"type\":\"MonthsTicker\"},{\"id\":\"c290371a-eb6b-45a9-8c25-bb47cb9767ac\",\"type\":\"MonthsTicker\"},{\"id\":\"86d9177a-2995-4d9f-896d-52a8d8b5df38\",\"type\":\"MonthsTicker\"},{\"id\":\"a00629e8-5e69-4b6f-81e4-8c0bea91419a\",\"type\":\"MonthsTicker\"},{\"id\":\"66ba1a10-f602-4b19-99b8-090c8f513c11\",\"type\":\"YearsTicker\"}]},\"id\":\"42a896fd-b02f-4887-a516-63390b60cdbc\",\"type\":\"DatetimeTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"de90bb61-621d-4caf-a921-0ff4ef0a6669\",\"type\":\"DatetimeTickFormatter\"},\"major_label_orientation\":0.7853981633974483,\"plot\":{\"id\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"42a896fd-b02f-4887-a516-63390b60cdbc\",\"type\":\"DatetimeTicker\"}},\"id\":\"e7e7764f-995b-4dc4-852e-1191c37850f6\",\"type\":\"DatetimeAxis\"},{\"attributes\":{},\"id\":\"de90bb61-621d-4caf-a921-0ff4ef0a6669\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"plot\":null,\"text\":\"candlestick\"},\"id\":\"a915aa56-743a-419b-a878-37b3e8610ca6\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"904f7aef-1f91-4b33-acde-5ee57a89b8da\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"line_color\":{\"value\":\"#ff7878\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"9aab8f90-8a54-44e5-b959-e8ae5e32ee33\",\"type\":\"Segment\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_scroll\":{\"id\":\"904f7aef-1f91-4b33-acde-5ee57a89b8da\",\"type\":\"WheelZoomTool\"},\"active_tap\":\"auto\",\"tools\":[{\"id\":\"c1bbd40a-6e5e-45df-bed1-078a3a0ae7b8\",\"type\":\"PanTool\"},{\"id\":\"904f7aef-1f91-4b33-acde-5ee57a89b8da\",\"type\":\"WheelZoomTool\"},{\"id\":\"c784d107-b05a-4922-bc02-760fe48e06e0\",\"type\":\"BoxZoomTool\"},{\"id\":\"c3d3625d-ee5a-4b6c-a8f4-50f957c82dee\",\"type\":\"ResetTool\"}]},\"id\":\"6a6ec09a-1012-4990-9328-fd01ba42cbb8\",\"type\":\"Toolbar\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"edea29f7-c5b3-4f1c-8772-1c3e77400d1f\",\"type\":\"Segment\"},{\"attributes\":{\"data_source\":{\"id\":\"4c0085ba-1875-47b4-bb3c-dc0ca347a30b\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"9aab8f90-8a54-44e5-b959-e8ae5e32ee33\",\"type\":\"Segment\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"edea29f7-c5b3-4f1c-8772-1c3e77400d1f\",\"type\":\"Segment\"},\"selection_glyph\":null,\"view\":{\"id\":\"7425c46b-4080-4594-a947-45eedcb6fb69\",\"type\":\"CDSView\"}},\"id\":\"b1442eec-49cd-4947-ad23-64a1ef9bfd9b\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"overlay\":{\"id\":\"75251e5d-09e5-4671-92ce-61daf1f5650c\",\"type\":\"BoxAnnotation\"}},\"id\":\"c784d107-b05a-4922-bc02-760fe48e06e0\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"4c0085ba-1875-47b4-bb3c-dc0ca347a30b\",\"type\":\"ColumnDataSource\"}},\"id\":\"7425c46b-4080-4594-a947-45eedcb6fb69\",\"type\":\"CDSView\"},{\"attributes\":{\"formatter\":{\"id\":\"6656b608-4e75-4fb3-b648-f80fc8f8c7ce\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"a00b74a9-9c88-44a2-9ed7-d5ccc55cf3a3\",\"type\":\"BasicTicker\"}},\"id\":\"72ee8f89-acf5-4835-b806-f9d8d637c6db\",\"type\":\"LinearAxis\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"y\"],\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[264]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[264]}}},\"id\":\"842b4f1e-3dbe-4322-bca0-b77fdca944fa\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"d9abf125-4da8-425b-84ae-d7460efb2e29\",\"type\":\"ColumnDataSource\"}},\"id\":\"50fc9be5-b946-41e3-b79d-d2f2ed189cb4\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":{\"value\":0.6},\"line_color\":{\"value\":\"#cccc00\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"b5f4cbf1-856c-4c12-beb8-d972127e7999\",\"type\":\"Line\"},{\"attributes\":{\"callback\":null},\"id\":\"a70dff08-d3cd-4f42-bad6-8c9d391d18b7\",\"type\":\"DataRange1d\"},{\"attributes\":{\"background_fill_color\":{\"value\":\"#333333\"},\"below\":[{\"id\":\"e7e7764f-995b-4dc4-852e-1191c37850f6\",\"type\":\"DatetimeAxis\"}],\"left\":[{\"id\":\"72ee8f89-acf5-4835-b806-f9d8d637c6db\",\"type\":\"LinearAxis\"}],\"plot_height\":800,\"plot_width\":1500,\"renderers\":[{\"id\":\"e7e7764f-995b-4dc4-852e-1191c37850f6\",\"type\":\"DatetimeAxis\"},{\"id\":\"cb61650e-ba43-43f1-b257-d31481296dd3\",\"type\":\"Grid\"},{\"id\":\"72ee8f89-acf5-4835-b806-f9d8d637c6db\",\"type\":\"LinearAxis\"},{\"id\":\"9fbb3d67-a1a1-4618-92ff-1c5a7d84562b\",\"type\":\"Grid\"},{\"id\":\"75251e5d-09e5-4671-92ce-61daf1f5650c\",\"type\":\"BoxAnnotation\"},{\"id\":\"49a1bf13-2d89-43c2-b03e-0822b5a47a1f\",\"type\":\"GlyphRenderer\"},{\"id\":\"bc0c396f-91d4-46b9-a1f9-c24fcac1da20\",\"type\":\"GlyphRenderer\"},{\"id\":\"b1442eec-49cd-4947-ad23-64a1ef9bfd9b\",\"type\":\"GlyphRenderer\"},{\"id\":\"5bf04a91-ae42-4532-b5bf-b6dbc3ef1fca\",\"type\":\"GlyphRenderer\"},{\"id\":\"fc6c8219-3916-43f2-9139-f2042aa44695\",\"type\":\"GlyphRenderer\"},{\"id\":\"748d386d-5c51-4c5f-b549-4f8000f7bf0b\",\"type\":\"GlyphRenderer\"},{\"id\":\"97de1f7c-d817-496c-b7c6-9934dffae64e\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"a915aa56-743a-419b-a878-37b3e8610ca6\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"6a6ec09a-1012-4990-9328-fd01ba42cbb8\",\"type\":\"Toolbar\"},\"toolbar_location\":\"above\",\"x_range\":{\"id\":\"a70dff08-d3cd-4f42-bad6-8c9d391d18b7\",\"type\":\"DataRange1d\"},\"x_scale\":{\"id\":\"33c5e57f-1751-47e2-a30b-fd0d93b2607f\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"afe1f93e-2ae8-4189-ae20-916ffa3a4940\",\"type\":\"DataRange1d\"},\"y_scale\":{\"id\":\"4c314a46-9a77-4f04-a11a-020f1ed26625\",\"type\":\"LinearScale\"}},\"id\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"#ff7878\"},\"line_color\":{\"value\":\"#ff7878\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":180000},\"x\":{\"field\":\"x\"}},\"id\":\"f3c647a2-d614-457d-9bad-279fe083be00\",\"type\":\"VBar\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":180000},\"x\":{\"field\":\"x\"}},\"id\":\"ba19c3df-df0d-4c1a-b851-38fcbe661ee4\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"0afb80b5-98e1-448f-9a51-c4fe3c1ee9de\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"f3c647a2-d614-457d-9bad-279fe083be00\",\"type\":\"VBar\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"ba19c3df-df0d-4c1a-b851-38fcbe661ee4\",\"type\":\"VBar\"},\"selection_glyph\":null,\"view\":{\"id\":\"ee9bab0d-664c-4b66-89e7-3b808bdf7a20\",\"type\":\"CDSView\"}},\"id\":\"5bf04a91-ae42-4532-b5bf-b6dbc3ef1fca\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"0afb80b5-98e1-448f-9a51-c4fe3c1ee9de\",\"type\":\"ColumnDataSource\"}},\"id\":\"ee9bab0d-664c-4b66-89e7-3b808bdf7a20\",\"type\":\"CDSView\"},{\"attributes\":{\"grid_line_alpha\":{\"value\":0.2},\"grid_line_color\":{\"value\":\"#666666\"},\"plot\":{\"id\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"42a896fd-b02f-4887-a516-63390b60cdbc\",\"type\":\"DatetimeTicker\"}},\"id\":\"cb61650e-ba43-43f1-b257-d31481296dd3\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"842b4f1e-3dbe-4322-bca0-b77fdca944fa\",\"type\":\"ColumnDataSource\"}},\"id\":\"920e3ccd-66f3-434a-966a-0ea7312881b9\",\"type\":\"CDSView\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"y\"],\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[264]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[264]}}},\"id\":\"85bd9f9d-2e13-429e-9073-386b24223e1c\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"842b4f1e-3dbe-4322-bca0-b77fdca944fa\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"b5f4cbf1-856c-4c12-beb8-d972127e7999\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"29565617-8c64-41e2-893a-182ab5567e72\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"920e3ccd-66f3-434a-966a-0ea7312881b9\",\"type\":\"CDSView\"}},\"id\":\"fc6c8219-3916-43f2-9139-f2042aa44695\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"4c314a46-9a77-4f04-a11a-020f1ed26625\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":{\"value\":0.6},\"line_color\":{\"value\":\"#0066af\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"ff0efd7f-6b70-474b-9b56-0a6dd436e0d1\",\"type\":\"Line\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"75251e5d-09e5-4671-92ce-61daf1f5650c\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"y\"],\"data\":{\"x\":{\"__ndarray__\":\"AACAm4nqdUIAAL7kiep1QgAA/C2K6nVCAAA6d4rqdUIAAHjAiup1QgAAtgmL6nVCAAD0UovqdUIAADKci+p1QgAAcOWL6nVCAACuLozqdUIAAOx3jOp1QgAAKsGM6nVCAABoCo3qdUIAAKZTjep1QgAA5JyN6nVCAAAi5o3qdUIAAGAvjup1QgAAnniO6nVCAADcwY7qdUIAABoLj+p1QgAAWFSP6nVCAACWnY/qdUIAANTmj+p1QgAAEjCQ6nVCAABQeZDqdUIAAI7CkOp1QgAAzAuR6nVCAAAKVZHqdUIAAEiekep1QgAAhueR6nVCAADEMJLqdUIAAAJ6kup1QgAAQMOS6nVCAAB+DJPqdUIAALxVk+p1QgAA+p6T6nVCAAA46JPqdUIAAHYxlOp1QgAAtHqU6nVCAADyw5TqdUIAADANlep1QgAAblaV6nVCAACsn5XqdUIAAOrolep1QgAAKDKW6nVCAABme5bqdUIAAKTElup1QgAA4g2X6nVCAAAgV5fqdUIAAF6gl+p1QgAAnOmX6nVCAADaMpjqdUIAABh8mOp1QgAAVsWY6nVCAACUDpnqdUIAANJXmep1QgAAEKGZ6nVCAABO6pnqdUIAAIwzmup1QgAAynya6nVCAAAIxprqdUIAAEYPm+p1QgAAhFib6nVCAADCoZvqdUIAAADrm+p1QgAAPjSc6nVCAAB8fZzqdUIAALrGnOp1QgAA+A+d6nVCAAA2WZ3qdUIAAHSinep1QgAAsuud6nVCAADwNJ7qdUIAAC5+nup1QgAAbMee6nVCAACqEJ/qdUIAAOhZn+p1QgAAJqOf6nVCAABk7J/qdUIAAKI1oOp1QgAA4H6g6nVCAAAeyKDqdUIAAFwRoep1QgAAmlqh6nVCAADYo6HqdUIAABbtoep1QgAAVDai6nVCAACSf6LqdUIAANDIoup1QgAADhKj6nVCAABMW6PqdUIAAIqko+p1QgAAyO2j6nVCAAAGN6TqdUIAAESApOp1QgAAgsmk6nVCAADAEqXqdUIAAP5bpep1QgAAPKWl6nVCAAB67qXqdUIAALg3pup1QgAA9oCm6nVCAAA0yqbqdUIAAHITp+p1QgAAsFyn6nVCAADupafqdUIAACzvp+p1QgAAajio6nVCAACogajqdUIAAObKqOp1QgAAJBSp6nVCAABiXanqdUIAAKCmqep1QgAA3u+p6nVCAAAcOarqdUIAAFqCqup1QgAAmMuq6nVCAADWFKvqdUIAABReq+p1QgAAUqer6nVCAACQ8KvqdUIAAM45rOp1QgAADIOs6nVCAABKzKzqdUIAAIgVrep1QgAAxl6t6nVCAAAEqK3qdUIAAELxrep1QgAAgDqu6nVCAAC+g67qdUIAAPzMrup1QgAAOhav6nVCAAB4X6/qdUIAALaor+p1QgAA9PGv6nVCAAAyO7DqdUIAAHCEsOp1QgAArs2w6nVCAADsFrHqdUIAACpgsep1QgAAaKmx6nVCAACm8rHqdUIAAOQ7sup1QgAAIoWy6nVCAABgzrLqdUIAAJ4Xs+p1QgAA3GCz6nVCAAAaqrPqdUIAAFjzs+p1QgAAljy06nVCAADUhbTqdUIAABLPtOp1QgAAUBi16nVCAACOYbXqdUIAAMyqtep1QgAACvS16nVCAABIPbbqdUIAAIaGtup1QgAAxM+26nVCAAACGbfqdUIAAEBit+p1QgAAfqu36nVCAAC89LfqdUIAAPo9uOp1QgAAOIe46nVCAAB20LjqdUIAALQZuep1QgAA8mK56nVCAAAwrLnqdUIAAG71uep1QgAArD666nVCAADqh7rqdUIAACjRuup1QgAAZhq76nVCAACkY7vqdUIAAOKsu+p1QgAAIPa76nVCAABeP7zqdUIAAJyIvOp1QgAA2tG86nVCAAAYG73qdUIAAFZkvep1QgAAlK296nVCAADS9r3qdUIAABBAvup1QgAATom+6nVCAACM0r7qdUIAAMobv+p1QgAACGW/6nVCAABGrr/qdUIAAIT3v+p1QgAAwkDA6nVCAAAAisDqdUIAAD7TwOp1QgAAfBzB6nVCAAC6ZcHqdUIAAPiuwep1QgAANvjB6nVCAAB0QcLqdUIAALKKwup1QgAA8NPC6nVCAAAuHcPqdUIAAGxmw+p1QgAAqq/D6nVCAADo+MPqdUIAACZCxOp1QgAAZIvE6nVCAACi1MTqdUIAAOAdxep1QgAAHmfF6nVCAABcsMXqdUIAAJr5xep1QgAA2ELG6nVCAAAWjMbqdUIAAFTVxup1QgAAkh7H6nVCAADQZ8fqdUIAAA6xx+p1QgAATPrH6nVCAACKQ8jqdUIAAMiMyOp1QgAABtbI6nVCAABEH8nqdUIAAIJoyep1QgAAwLHJ6nVCAAD++snqdUIAADxEyup1QgAAeo3K6nVCAAC41srqdUIAAPYfy+p1QgAANGnL6nVCAAByssvqdUIAALD7y+p1QgAA7kTM6nVCAAAsjszqdUIAAGrXzOp1QgAAqCDN6nVCAADmac3qdUIAACSzzep1QgAAYvzN6nVCAACgRc7qdUIAAN6Ozup1QgAAHNjO6nVCAABaIc/qdUIAAJhqz+p1QgAA1rPP6nVCAAAU/c/qdUIAAFJG0Op1QgAAkI/Q6nVCAADO2NDqdUIAAAwi0ep1QgAASmvR6nVCAACItNHqdUIAAMb90ep1QgAABEfS6nVCAABCkNLqdUIAAIDZ0up1QgAAviLT6nVCAAD8a9PqdUIAADq10+p1QgAAeP7T6nVCAAC2R9TqdUIAAPSQ1Op1QgAAMtrU6nVC\",\"dtype\":\"float64\",\"shape\":[264]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[264]}}},\"id\":\"d9abf125-4da8-425b-84ae-d7460efb2e29\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"6656b608-4e75-4fb3-b648-f80fc8f8c7ce\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"source\":{\"id\":\"85bd9f9d-2e13-429e-9073-386b24223e1c\",\"type\":\"ColumnDataSource\"}},\"id\":\"0fde8bc5-48a6-4826-a784-7e5f1593c0fc\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"c1bbd40a-6e5e-45df-bed1-078a3a0ae7b8\",\"type\":\"PanTool\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"29565617-8c64-41e2-893a-182ab5567e72\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":{\"value\":0.6},\"line_color\":{\"value\":\"#33cc00\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"4b20c487-6c39-4e5d-ae2d-d44ffaf47ce9\",\"type\":\"Line\"},{\"attributes\":{\"dimension\":1,\"grid_line_alpha\":{\"value\":0.2},\"grid_line_color\":{\"value\":\"#666666\"},\"plot\":{\"id\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"a00b74a9-9c88-44a2-9ed7-d5ccc55cf3a3\",\"type\":\"BasicTicker\"}},\"id\":\"9fbb3d67-a1a1-4618-92ff-1c5a7d84562b\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"85bd9f9d-2e13-429e-9073-386b24223e1c\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"4b20c487-6c39-4e5d-ae2d-d44ffaf47ce9\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"b86874a5-e39b-4053-87ad-c08dd5f2db50\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"0fde8bc5-48a6-4826-a784-7e5f1593c0fc\",\"type\":\"CDSView\"}},\"id\":\"748d386d-5c51-4c5f-b549-4f8000f7bf0b\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"callback\":null},\"id\":\"afe1f93e-2ae8-4189-ae20-916ffa3a4940\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"33c5e57f-1751-47e2-a30b-fd0d93b2607f\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"d9abf125-4da8-425b-84ae-d7460efb2e29\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"ff0efd7f-6b70-474b-9b56-0a6dd436e0d1\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"a33ffdbc-26e8-457c-b5bd-96e174563c37\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"50fc9be5-b946-41e3-b79d-d2f2ed189cb4\",\"type\":\"CDSView\"}},\"id\":\"97de1f7c-d817-496c-b7c6-9934dffae64e\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"a33ffdbc-26e8-457c-b5bd-96e174563c37\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"b86874a5-e39b-4053-87ad-c08dd5f2db50\",\"type\":\"Line\"}],\"root_ids\":[\"961790fb-455e-4b0d-827e-5be1dd4f704f\"]},\"title\":\"Bokeh Application\",\"version\":\"0.12.9\"}};\n",
" var render_items = [{\"docid\":\"cc93c106-1b51-4386-a567-246079af2817\",\"elementid\":\"311d1475-be24-450e-898b-b7a588f1d5c0\",\"modelid\":\"961790fb-455e-4b0d-827e-5be1dd4f704f\"}];\n",
"\n",
" root.Bokeh.embed.embed_items(docs_json, render_items);\n",
" }\n",
"\n",
" if (root.Bokeh !== undefined) {\n",
" embed_document(root);\n",
" } else {\n",
" var attempts = 0;\n",
" var timer = setInterval(function(root) {\n",
" if (root.Bokeh !== undefined) {\n",
" embed_document(root);\n",
" clearInterval(timer);\n",
" }\n",
" attempts++;\n",
" if (attempts > 100) {\n",
" console.log(\"Bokeh: ERROR: Unable to embed document because BokehJS library is missing\")\n",
" clearInterval(timer);\n",
" }\n",
" }, 10, root)\n",
" }\n",
"})(window);"
],
"application/vnd.bokehjs_exec.v0+json": ""
},
"metadata": {
"application/vnd.bokehjs_exec.v0+json": {
"id": "961790fb-455e-4b0d-827e-5be1dd4f704f"
}
},
"output_type": "display_data"
}
],
"source": [
"p = figure(x_axis_type='datetime', plot_width=1500, plot_height=800, title='candlestick', toolbar_location='above', tools='pan,wheel_zoom,box_zoom,reset', active_scroll='wheel_zoom')\n",
"\n",
"p.background_fill_color = \"#333333\"\n",
"\n",
"p.xaxis.major_label_orientation = pi/4\n",
"p.grid.grid_line_alpha=0.2\n",
"p.grid.grid_line_color = '#666666'\n",
"\n",
"p.segment(df.dt[inc], df.high[inc], df.dt[inc], df.low[inc], color='#75a6cf')\n",
"p.vbar(df.dt[inc], w, df.open[inc], df.close[inc], fill_color='#75a6cf', line_color='#75a6cf')\n",
"\n",
"p.segment(df.dt[~inc], df.high[~inc], df.dt[~inc], df.low[~inc], color='#ff7878')\n",
"p.vbar(df.dt[~inc], w, df.open[~inc], df.close[~inc], fill_color='#ff7878', line_color='#ff7878')\n",
"\n",
"p.line(df.dt, ewm10, color='#cccc00', line_alpha=0.6)\n",
"p.line(df.dt, ewm25, color='#33cc00', line_alpha=0.6)\n",
"p.line(df.dt, ewm75, color='#0066af', line_alpha=0.6)\n",
"\n",
"show(p)\n"
]
},
{
"cell_type": "code",
"execution_count": 181,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n",
"<div class=\"bk-root\">\n",
" <div class=\"bk-plotdiv\" id=\"41ad2749-1a9f-49da-a996-e34ec29cb5f9\"></div>\n",
"</div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/javascript": [
"(function(root) {\n",
" function embed_document(root) {\n",
" var docs_json = {\"8df28edf-9b27-459a-8e17-55f18b15952d\":{\"roots\":{\"references\":[{\"attributes\":{\"source\":{\"id\":\"e1a9083c-fc0f-4bbb-bf1f-795b4d493858\",\"type\":\"ColumnDataSource\"}},\"id\":\"8b22d70d-815e-4b1e-b1b8-c2c5b31ae139\",\"type\":\"CDSView\"},{\"attributes\":{\"above\":[{\"id\":\"25f98b4f-bbad-4ed7-9ce9-35137da40e19\",\"type\":\"CategoricalAxis\"}],\"left\":[{\"id\":\"4105c2c6-c90f-4714-a3da-14f35f6980e8\",\"type\":\"CategoricalAxis\"}],\"plot_height\":400,\"plot_width\":900,\"renderers\":[{\"id\":\"25f98b4f-bbad-4ed7-9ce9-35137da40e19\",\"type\":\"CategoricalAxis\"},{\"id\":\"905b7c16-61f0-4c7b-8f31-10da041fa4ca\",\"type\":\"Grid\"},{\"id\":\"4105c2c6-c90f-4714-a3da-14f35f6980e8\",\"type\":\"CategoricalAxis\"},{\"id\":\"da0ff33d-5a92-4895-9078-b6d6ed69d013\",\"type\":\"Grid\"},{\"id\":\"33250a62-38bb-49e9-9515-623db6e6a12f\",\"type\":\"BoxAnnotation\"},{\"id\":\"04e0db3d-f8a5-4296-b4ae-b59067e1c9c4\",\"type\":\"GlyphRenderer\"},{\"id\":\"7c381264-5219-493b-932b-d0f30a0e81bf\",\"type\":\"ColorBar\"}],\"right\":[{\"id\":\"7c381264-5219-493b-932b-d0f30a0e81bf\",\"type\":\"ColorBar\"}],\"title\":{\"id\":\"bf6c44b3-d8a2-4463-9388-f70e53e6c49b\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"d26e6df3-47dc-4a9f-8097-124ad24f57f4\",\"type\":\"Toolbar\"},\"toolbar_location\":\"below\",\"x_range\":{\"id\":\"d2951210-155a-4bd2-93e8-1671395951b0\",\"type\":\"FactorRange\"},\"x_scale\":{\"id\":\"511bd068-bc5d-4822-9291-cb89c02ef843\",\"type\":\"CategoricalScale\"},\"y_range\":{\"id\":\"e1f22ba1-c1a9-4b45-8776-a0ea5f0f8f38\",\"type\":\"FactorRange\"},\"y_scale\":{\"id\":\"8d290c79-2008-4531-a50e-68e8c82b643e\",\"type\":\"CategoricalScale\"}},\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"7eaaad17-6306-4ed2-a985-d24e94ef3443\",\"type\":\"CategoricalTickFormatter\"},{\"attributes\":{\"axis_line_color\":{\"value\":null},\"formatter\":{\"id\":\"7eaaad17-6306-4ed2-a985-d24e94ef3443\",\"type\":\"CategoricalTickFormatter\"},\"major_label_orientation\":1.0471975511965976,\"major_label_standoff\":0,\"major_label_text_font_size\":{\"value\":\"5pt\"},\"major_tick_line_color\":{\"value\":null},\"plot\":{\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"aec9a7dc-7852-4311-96cb-de38b79d2512\",\"type\":\"CategoricalTicker\"}},\"id\":\"25f98b4f-bbad-4ed7-9ce9-35137da40e19\",\"type\":\"CategoricalAxis\"},{\"attributes\":{\"color_mapper\":{\"id\":\"c1f87b3a-7cfc-4f52-a76f-87c51db379b9\",\"type\":\"LinearColorMapper\"},\"formatter\":{\"id\":\"67aa829c-03bc-4579-9350-ef7989f6f87d\",\"type\":\"PrintfTickFormatter\"},\"label_standoff\":6,\"location\":[0,0],\"major_label_text_font_size\":{\"value\":\"5pt\"},\"plot\":{\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"68843ab1-9e84-4fac-b6aa-746685d2ebb8\",\"type\":\"BasicTicker\"}},\"id\":\"7c381264-5219-493b-932b-d0f30a0e81bf\",\"type\":\"ColorBar\"},{\"attributes\":{},\"id\":\"aec9a7dc-7852-4311-96cb-de38b79d2512\",\"type\":\"CategoricalTicker\"},{\"attributes\":{\"data_source\":{\"id\":\"e1a9083c-fc0f-4bbb-bf1f-795b4d493858\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"00811caa-04a2-4ff3-ba74-f256defcf26f\",\"type\":\"Rect\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"a9e0e4f8-c286-4577-a35b-291a1eb12264\",\"type\":\"Rect\"},\"selection_glyph\":null,\"view\":{\"id\":\"8b22d70d-815e-4b1e-b1b8-c2c5b31ae139\",\"type\":\"CDSView\"}},\"id\":\"04e0db3d-f8a5-4296-b4ae-b59067e1c9c4\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2e96340c-cc8a-4291-b5f2-6eb0dea74693\",\"type\":\"CategoricalTicker\"},{\"attributes\":{\"plot\":null,\"text\":\"US Unemployment (1948 - 2016)\"},\"id\":\"bf6c44b3-d8a2-4463-9388-f70e53e6c49b\",\"type\":\"Title\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"2e96340c-cc8a-4291-b5f2-6eb0dea74693\",\"type\":\"CategoricalTicker\"}},\"id\":\"da0ff33d-5a92-4895-9078-b6d6ed69d013\",\"type\":\"Grid\"},{\"attributes\":{\"callback\":null,\"factors\":[\"1948\",\"1949\",\"1950\",\"1951\",\"1952\",\"1953\",\"1954\",\"1955\",\"1956\",\"1957\",\"1958\",\"1959\",\"1960\",\"1961\",\"1962\",\"1963\",\"1964\",\"1965\",\"1966\",\"1967\",\"1968\",\"1969\",\"1970\",\"1971\",\"1972\",\"1973\",\"1974\",\"1975\",\"1976\",\"1977\",\"1978\",\"1979\",\"1980\",\"1981\",\"1982\",\"1983\",\"1984\",\"1985\",\"1986\",\"1987\",\"1988\",\"1989\",\"1990\",\"1991\",\"1992\",\"1993\",\"1994\",\"1995\",\"1996\",\"1997\",\"1998\",\"1999\",\"2000\",\"2001\",\"2002\",\"2003\",\"2004\",\"2005\",\"2006\",\"2007\",\"2008\",\"2009\",\"2010\",\"2011\",\"2012\",\"2013\",\"2014\",\"2015\",\"2016\"]},\"id\":\"d2951210-155a-4bd2-93e8-1671395951b0\",\"type\":\"FactorRange\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"height\":{\"units\":\"data\",\"value\":1},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"width\":{\"units\":\"data\",\"value\":1},\"x\":{\"field\":\"Year\"},\"y\":{\"field\":\"Month\"}},\"id\":\"a9e0e4f8-c286-4577-a35b-291a1eb12264\",\"type\":\"Rect\"},{\"attributes\":{\"fill_color\":{\"field\":\"rate\",\"transform\":{\"id\":\"c1f87b3a-7cfc-4f52-a76f-87c51db379b9\",\"type\":\"LinearColorMapper\"}},\"height\":{\"units\":\"data\",\"value\":1},\"line_color\":{\"value\":null},\"width\":{\"units\":\"data\",\"value\":1},\"x\":{\"field\":\"Year\"},\"y\":{\"field\":\"Month\"}},\"id\":\"00811caa-04a2-4ff3-ba74-f256defcf26f\",\"type\":\"Rect\"},{\"attributes\":{},\"id\":\"30914d42-c4cf-43c5-b9db-07a56ae63cb7\",\"type\":\"CategoricalTickFormatter\"},{\"attributes\":{\"high\":11.4,\"low\":2.4,\"palette\":[\"#75968f\",\"#a5bab7\",\"#c9d9d3\",\"#e2e2e2\",\"#dfccce\",\"#ddb7b1\",\"#cc7878\",\"#933b41\",\"#550b1d\"]},\"id\":\"c1f87b3a-7cfc-4f52-a76f-87c51db379b9\",\"type\":\"LinearColorMapper\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"33250a62-38bb-49e9-9515-623db6e6a12f\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"callback\":null,\"tooltips\":[[\"date\",\"@Month @Year\"],[\"rate\",\"@rate%\"]]},\"id\":\"50dc1f3a-9d55-4f73-8a0c-21d32957d23e\",\"type\":\"HoverTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"50dc1f3a-9d55-4f73-8a0c-21d32957d23e\",\"type\":\"HoverTool\"},{\"id\":\"37716208-6247-4cc9-9e94-019fbc87865b\",\"type\":\"SaveTool\"},{\"id\":\"981e51d2-7b92-4c48-b7bc-3d114018e143\",\"type\":\"PanTool\"},{\"id\":\"f596419e-d7e3-4704-9534-6dd6c42eda89\",\"type\":\"BoxZoomTool\"},{\"id\":\"305f3a7a-eaee-4d06-8b2d-8d37378339b7\",\"type\":\"ResetTool\"},{\"id\":\"055931cd-ad9c-40ad-a86c-30768c892fcd\",\"type\":\"WheelZoomTool\"}]},\"id\":\"d26e6df3-47dc-4a9f-8097-124ad24f57f4\",\"type\":\"Toolbar\"},{\"attributes\":{\"format\":\"%d%%\"},\"id\":\"67aa829c-03bc-4579-9350-ef7989f6f87d\",\"type\":\"PrintfTickFormatter\"},{\"attributes\":{\"axis_line_color\":{\"value\":null},\"formatter\":{\"id\":\"30914d42-c4cf-43c5-b9db-07a56ae63cb7\",\"type\":\"CategoricalTickFormatter\"},\"major_label_standoff\":0,\"major_label_text_font_size\":{\"value\":\"5pt\"},\"major_tick_line_color\":{\"value\":null},\"plot\":{\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"2e96340c-cc8a-4291-b5f2-6eb0dea74693\",\"type\":\"CategoricalTicker\"}},\"id\":\"4105c2c6-c90f-4714-a3da-14f35f6980e8\",\"type\":\"CategoricalAxis\"},{\"attributes\":{},\"id\":\"37716208-6247-4cc9-9e94-019fbc87865b\",\"type\":\"SaveTool\"},{\"attributes\":{\"callback\":null,\"factors\":[\"Dec\",\"Nov\",\"Oct\",\"Sep\",\"Aug\",\"Jul\",\"Jun\",\"May\",\"Apr\",\"Mar\",\"Feb\",\"Jan\"]},\"id\":\"e1f22ba1-c1a9-4b45-8776-a0ea5f0f8f38\",\"type\":\"FactorRange\"},{\"attributes\":{\"desired_num_ticks\":9},\"id\":\"68843ab1-9e84-4fac-b6aa-746685d2ebb8\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"981e51d2-7b92-4c48-b7bc-3d114018e143\",\"type\":\"PanTool\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"Year\",\"Month\",\"rate\",\"index\"],\"data\":{\"Month\":[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\",\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],\"Year\":[\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1948\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1949\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1950\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1951\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1952\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1953\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1954\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1955\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1956\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1957\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1958\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1959\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1960\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1961\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1962\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1963\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1964\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1965\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1966\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1967\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1968\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1969\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1970\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1971\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1972\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1973\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1974\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1975\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1976\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1977\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1978\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1979\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1980\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1981\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1982\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1983\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1984\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1985\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1986\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1987\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1988\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1989\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1990\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1991\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1992\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1993\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1994\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1995\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1996\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1997\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1998\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"1999\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2000\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2001\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2002\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2003\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2004\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2005\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2006\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2007\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2008\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2009\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2010\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2011\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2012\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2013\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2014\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2015\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\",\"2016\"],\"index\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827],\"rate\":{\"__ndarray__\":\"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MzMVQGZmZmZmZhRAzczMzMzMGECamZmZmZkXQM3MzMzMzBZAZmZmZmZmFkAAAAAAAAAWQDMzMzMzMxdAmpmZmZmZF0BmZmZmZmYWQJqZmZmZmRVAzczMzMzMFEAzMzMzMzMVQM3MzMzMzBRAMzMzMzMzGUAAAAAAAAAYQDMzMzMzMxdAmpmZmZmZFUCamZmZmZkVQAAAAAAAABZAZmZmZmZmFkBmZmZmZmYUQAAAAAAAABRAmpmZmZmZE0AAAAAAAAAUQAAAAAAAABRAmpmZmZmZF0DNzMzMzMwWQAAAAAAAABZAMzMzMzMzE0DNzMzMzMwSQM3MzMzMzBRAAAAAAAAAFEAzMzMzMzMTQM3MzMzMzBJAmpmZmZmZEUAzMzMzMzMRQJqZmZmZmRFAzczMzMzMFEAAAAAAAAAUQAAAAAAAABRAZmZmZmZmEEDNzMzMzMwQQM3MzMzMzBJAzczMzMzMEkAAAAAAAAASQJqZmZmZmRFAzczMzMzMEEBmZmZmZmYQQAAAAAAAABBAMzMzMzMzE0DNzMzMzMwSQJqZmZmZmRFAZmZmZmZmEEAAAAAAAAAQQAAAAAAAABJAAAAAAAAAEkDNzMzMzMwQQGZmZmZmZhBAZmZmZmZmDkBmZmZmZmYOQJqZmZmZmQ1AAAAAAAAAEkCamZmZmZkRQDMzMzMzMxFAmpmZmZmZDUBmZmZmZmYOQGZmZmZmZhBAzczMzMzMEEBmZmZmZmYQQGZmZmZmZg5AzczMzMzMDECamZmZmZkNQJqZmZmZmQ1AzczMzMzMEkBmZmZmZmYSQAAAAAAAABJAzczMzMzMEEBmZmZmZmYQQM3MzMzMzBJAzczMzMzMEkCamZmZmZkTQM3MzMzMzBJAAAAAAAAAFEAzMzMzMzMVQJqZmZmZmRVAMzMzMzMzGUBmZmZmZmYYQGZmZmZmZhhAzczMzMzMFkAAAAAAAAAWQAAAAAAAABhAmpmZmZmZF0DNzMzMzMwWQJqZmZmZmRVAMzMzMzMzFUBmZmZmZmYWQM3MzMzMzBZAAAAAAAAAGkCamZmZmZkZQM3MzMzMzBhAMzMzMzMzF0AzMzMzMzMXQAAAAAAAABpAMzMzMzMzGUAAAAAAAAAYQDMzMzMzMxdAZmZmZmZmFkBmZmZmZmYWQJqZmZmZmRVAMzMzMzMzGUAAAAAAAAAYQAAAAAAAABhAmpmZmZmZFUAzMzMzMzMVQDMzMzMzMxdAzczMzMzMFkCamZmZmZkVQGZmZmZmZhRAZmZmZmZmFEDNzMzMzMwUQGZmZmZmZhRAzczMzMzMFkAzMzMzMzMXQJqZmZmZmRVAmpmZmZmZE0CamZmZmZkTQM3MzMzMzBRAzczMzMzMFECamZmZmZkTQDMzMzMzMxNAZmZmZmZmEkAzMzMzMzMTQGZmZmZmZhJAZmZmZmZmFEBmZmZmZmYUQDMzMzMzMxNAAAAAAAAAEkCamZmZmZkRQDMzMzMzMxNAAAAAAAAAFEBmZmZmZmYSQJqZmZmZmRFAZmZmZmZmEEAzMzMzMzMRQDMzMzMzMxFAAAAAAAAAFECamZmZmZkTQAAAAAAAABJAMzMzMzMzEUAzMzMzMzMRQM3MzMzMzBJAmpmZmZmZE0BmZmZmZmYSQAAAAAAAABJAmpmZmZmZEUAAAAAAAAASQDMzMzMzMxNAmpmZmZmZFUDNzMzMzMwUQM3MzMzMzBRAMzMzMzMzE0DNzMzMzMwUQM3MzMzMzBZAAAAAAAAAGEBmZmZmZmYYQAAAAAAAABhAZmZmZmZmGEAAAAAAAAAaQGZmZmZmZhxAAAAAAAAAIUDNzMzMzMwhQAAAAAAAACJAMzMzMzMzIUAzMzMzMzMiQGZmZmZmZiNAZmZmZmZmI0AzMzMzMzMjQAAAAAAAACNAAAAAAAAAI0DNzMzMzMwiQGZmZmZmZiNAMzMzMzMzJUDNzMzMzMwkQGZmZmZmZiRAAAAAAAAAI0CamZmZmZkiQDMzMzMzMyNAZmZmZmZmI0AAAAAAAAAjQGZmZmZmZiJAAAAAAAAAIkCamZmZmZkiQDMzMzMzMyJAmpmZmZmZI0AAAAAAAAAjQGZmZmZmZiJAZmZmZmZmIUBmZmZmZmYhQJqZmZmZmSJAmpmZmZmZIkAzMzMzMzMiQJqZmZmZmSFAAAAAAAAAIUBmZmZmZmYgQJqZmZmZmSBAmpmZmZmZIUBmZmZmZmYhQM3MzMzMzCBAzczMzMzMHkCamZmZmZkfQM3MzMzMzCBAMzMzMzMzIUBmZmZmZmYgQGZmZmZmZh5AAAAAAAAAHkCamZmZmZkdQGZmZmZmZh5AAAAAAAAAIUAzMzMzMzMgQGZmZmZmZh5AZmZmZmZmHEAzMzMzMzMdQDMzMzMzMx9AzczMzMzMHkAzMzMzMzMdQAAAAAAAABxAAAAAAAAAHEBmZmZmZmYaQAAAAAAAABpAAAAAAAAAHEAAAAAAAAAcQDMzMzMzMxtAmpmZmZmZF0BmZmZmZmYYQDMzMzMzMxlAAAAAAAAAGkAzMzMzMzMZQM3MzMzMzBZAAAAAAAAAFkAAAAAAAAAWQJqZmZmZmRVAZmZmZmZmGEAzMzMzMzMXQGZmZmZmZhZAZmZmZmZmFEAzMzMzMzMVQAAAAAAAABZAZmZmZmZmFkDNzMzMzMwUQJqZmZmZmRNAMzMzMzMzE0AzMzMzMzMTQDMzMzMzMxNAMzMzMzMzFUDNzMzMzMwUQGZmZmZmZhRAzczMzMzMEkAAAAAAAAASQGZmZmZmZhRAZmZmZmZmFEAAAAAAAAAUQDMzMzMzMxNAzczMzMzMEkCamZmZmZkRQAAAAAAAABJA\",\"dtype\":\"float64\",\"shape\":[828]}}},\"id\":\"e1a9083c-fc0f-4bbb-bf1f-795b4d493858\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"overlay\":{\"id\":\"33250a62-38bb-49e9-9515-623db6e6a12f\",\"type\":\"BoxAnnotation\"}},\"id\":\"f596419e-d7e3-4704-9534-6dd6c42eda89\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"8d290c79-2008-4531-a50e-68e8c82b643e\",\"type\":\"CategoricalScale\"},{\"attributes\":{},\"id\":\"305f3a7a-eaee-4d06-8b2d-8d37378339b7\",\"type\":\"ResetTool\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"aec9a7dc-7852-4311-96cb-de38b79d2512\",\"type\":\"CategoricalTicker\"}},\"id\":\"905b7c16-61f0-4c7b-8f31-10da041fa4ca\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"055931cd-ad9c-40ad-a86c-30768c892fcd\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"511bd068-bc5d-4822-9291-cb89c02ef843\",\"type\":\"CategoricalScale\"}],\"root_ids\":[\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\"]},\"title\":\"Bokeh Application\",\"version\":\"0.12.9\"}};\n",
" var render_items = [{\"docid\":\"8df28edf-9b27-459a-8e17-55f18b15952d\",\"elementid\":\"41ad2749-1a9f-49da-a996-e34ec29cb5f9\",\"modelid\":\"46c9c7c3-1bc7-4479-ac6b-013ee194fd07\"}];\n",
"\n",
" root.Bokeh.embed.embed_items(docs_json, render_items);\n",
" }\n",
"\n",
" if (root.Bokeh !== undefined) {\n",
" embed_document(root);\n",
" } else {\n",
" var attempts = 0;\n",
" var timer = setInterval(function(root) {\n",
" if (root.Bokeh !== undefined) {\n",
" embed_document(root);\n",
" clearInterval(timer);\n",
" }\n",
" attempts++;\n",
" if (attempts > 100) {\n",
" console.log(\"Bokeh: ERROR: Unable to embed document because BokehJS library is missing\")\n",
" clearInterval(timer);\n",
" }\n",
" }, 10, root)\n",
" }\n",
"})(window);"
],
"application/vnd.bokehjs_exec.v0+json": ""
},
"metadata": {
"application/vnd.bokehjs_exec.v0+json": {
"id": "46c9c7c3-1bc7-4479-ac6b-013ee194fd07"
}
},
"output_type": "display_data"
}
],
"source": [
"# https://bokeh.pydata.org/en/latest/docs/gallery/unemployment.html\n",
"from math import pi\n",
"import pandas as pd\n",
"\n",
"from bokeh.io import show\n",
"from bokeh.models import (\n",
" ColumnDataSource,\n",
" HoverTool,\n",
" LinearColorMapper,\n",
" BasicTicker,\n",
" PrintfTickFormatter,\n",
" ColorBar,\n",
")\n",
"from bokeh.plotting import figure\n",
"from bokeh.sampledata.unemployment1948 import data\n",
"\n",
"data['Year'] = data['Year'].astype(str)\n",
"data = data.set_index('Year')\n",
"data.drop('Annual', axis=1, inplace=True)\n",
"data.columns.name = 'Month'\n",
"\n",
"years = list(data.index)\n",
"months = list(data.columns)\n",
"\n",
"# reshape to 1D array or rates with a month and year for each row.\n",
"df = pd.DataFrame(data.stack(), columns=['rate']).reset_index()\n",
"\n",
"# this is the colormap from the original NYTimes plot\n",
"colors = [\"#75968f\", \"#a5bab7\", \"#c9d9d3\", \"#e2e2e2\", \"#dfccce\", \"#ddb7b1\", \"#cc7878\", \"#933b41\", \"#550b1d\"]\n",
"mapper = LinearColorMapper(palette=colors, low=df.rate.min(), high=df.rate.max())\n",
"\n",
"source = ColumnDataSource(df)\n",
"\n",
"TOOLS = \"hover,save,pan,box_zoom,reset,wheel_zoom\"\n",
"\n",
"p = figure(title=\"US Unemployment ({0} - {1})\".format(years[0], years[-1]),\n",
" x_range=years, y_range=list(reversed(months)),\n",
" x_axis_location=\"above\", plot_width=900, plot_height=400,\n",
" tools=TOOLS, toolbar_location='below')\n",
"\n",
"p.grid.grid_line_color = None\n",
"p.axis.axis_line_color = None\n",
"p.axis.major_tick_line_color = None\n",
"p.axis.major_label_text_font_size = \"5pt\"\n",
"p.axis.major_label_standoff = 0\n",
"p.xaxis.major_label_orientation = pi / 3\n",
"\n",
"p.rect(x=\"Year\", y=\"Month\", width=1, height=1,\n",
" source=source,\n",
" fill_color={'field': 'rate', 'transform': mapper},\n",
" line_color=None)\n",
"\n",
"color_bar = ColorBar(color_mapper=mapper, major_label_text_font_size=\"5pt\",\n",
" ticker=BasicTicker(desired_num_ticks=len(colors)),\n",
" formatter=PrintfTickFormatter(format=\"%d%%\"),\n",
" label_standoff=6, border_line_color=None, location=(0, 0))\n",
"p.add_layout(color_bar, 'right')\n",
"\n",
"p.select_one(HoverTool).tooltips = [\n",
" ('date', '@Month @Year'),\n",
" ('rate', '@rate%'),\n",
"]\n",
"\n",
"show(p) # show the plot"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment