diff --git a/capabilitytests.ipynb b/capabilitytests.ipynb
index bc4d13e..279ad1d 100644
--- a/capabilitytests.ipynb
+++ b/capabilitytests.ipynb
@@ -18,20 +18,9 @@
},
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "5"
- ]
- },
- "execution_count": 2,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
+ "outputs": [],
"source": [
"2+3"
]
@@ -45,24 +34,9 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "4c6b50beacfa4429977d6237c2164ad5",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "interactive(children=(IntSlider(value=10, description='x', max=30, min=-10), Output()), _dom_classes=('widget-…"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
+ "outputs": [],
"source": [
"from __future__ import print_function\n",
"from ipywidgets import interact, interactive, fixed, interact_manual\n",
@@ -84,29 +58,14 @@
},
{
"cell_type": "code",
- "execution_count": 4,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "application/vnd.jupyter.widget-view+json": {
- "model_id": "2ffcd6061fd44bba9170266ffb07876d",
- "version_major": 2,
- "version_minor": 0
- },
- "text/plain": [
- "Figure(layout=FigureLayout(height='420px'))"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- }
- ],
+ "outputs": [],
"source": [
"import gmaps\n",
"import gmaps.datasets\n",
- "key = \"\api key here\"\n",
- "gmaps.configure(api_key='google api key here')\n",
+ "key = \"your_key_here\"\n",
+ "gmaps.configure(api_key='your_gmap_key_here')\n",
"earthquake_df = gmaps.datasets.load_dataset_as_df('earthquakes')\n",
"earthquake_df.head()\n",
"locations = earthquake_df[['latitude', 'longitude']]\n",
@@ -125,133 +84,9 @@
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "
\n",
- "\n",
- "
\n",
- " \n",
- " \n",
- " \n",
- " name \n",
- " salary \n",
- " surname \n",
- " \n",
- " \n",
- " \n",
- " \n",
- " 0 \n",
- " Richard \n",
- " 5000 \n",
- " Black \n",
- " \n",
- " \n",
- " 1 \n",
- " Henry \n",
- " 8000 \n",
- " Green \n",
- " \n",
- " \n",
- " 2 \n",
- " William \n",
- " 12500 \n",
- " Goodman \n",
- " \n",
- " \n",
- " 3 \n",
- " Henry \n",
- " 8000 \n",
- " Green \n",
- " \n",
- " \n",
- " 4 \n",
- " Richard \n",
- " 14000 \n",
- " Black \n",
- " \n",
- " \n",
- " 5 \n",
- " Richard \n",
- " 12500 \n",
- " Goodman \n",
- " \n",
- " \n",
- " 6 \n",
- " Albert \n",
- " 12000 \n",
- " Joneson \n",
- " \n",
- " \n",
- " 7 \n",
- " William \n",
- " 8000 \n",
- " Black \n",
- " \n",
- " \n",
- " 8 \n",
- " Albert \n",
- " 12500 \n",
- " White \n",
- " \n",
- " \n",
- " 9 \n",
- " Henry \n",
- " 13500 \n",
- " Green \n",
- " \n",
- " \n",
- " 10 \n",
- " John \n",
- " 12000 \n",
- " White \n",
- " \n",
- " \n",
- " 11 \n",
- " Richard \n",
- " 13500 \n",
- " Black \n",
- " \n",
- " \n",
- "
\n",
- "
"
- ],
- "text/plain": [
- " name salary surname\n",
- "0 Richard 5000 Black\n",
- "1 Henry 8000 Green\n",
- "2 William 12500 Goodman\n",
- "3 Henry 8000 Green\n",
- "4 Richard 14000 Black\n",
- "5 Richard 12500 Goodman\n",
- "6 Albert 12000 Joneson\n",
- "7 William 8000 Black\n",
- "8 Albert 12500 White\n",
- "9 Henry 13500 Green\n",
- "10 John 12000 White\n",
- "11 Richard 13500 Black"
- ]
- },
- "execution_count": 5,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
+ "outputs": [],
"source": [
"import random\n",
"import pandas\n",
@@ -280,47 +115,9 @@
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/plain": [
- "{'PATH': '/opt/conda/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',\n",
- " 'HOSTNAME': 'jupyter-lab',\n",
- " 'DEBIAN_FRONTEND': 'noninteractive',\n",
- " 'CONDA_DIR': '/opt/conda',\n",
- " 'SHELL': '/bin/bash',\n",
- " 'NB_USER': 'jovyan',\n",
- " 'NB_UID': '1000',\n",
- " 'NB_GID': '100',\n",
- " 'LC_ALL': 'en_US.UTF-8',\n",
- " 'LANG': 'en_US.UTF-8',\n",
- " 'LANGUAGE': 'en_US.UTF-8',\n",
- " 'HOME': '/home/jovyan',\n",
- " 'MINICONDA_VERSION': '4.5.12',\n",
- " 'CONDA_VERSION': '4.6.7',\n",
- " 'XDG_CACHE_HOME': '/home/jovyan/.cache/',\n",
- " 'APACHE_SPARK_VERSION': '2.4.3',\n",
- " 'HADOOP_VERSION': '2.7',\n",
- " 'SPARK_HOME': '/usr/local/spark',\n",
- " 'PYTHONPATH': '/usr/local/spark/python:/usr/local/spark/python/lib/py4j-0.10.7-src.zip',\n",
- " 'MESOS_NATIVE_LIBRARY': '/usr/local/lib/libmesos.so',\n",
- " 'SPARK_OPTS': '--driver-java-options=-Xms1024M --driver-java-options=-Xmx4096M --driver-java-options=-Dlog4j.logLevel=info',\n",
- " 'R_LIBS_USER': '/usr/local/spark/R/lib',\n",
- " 'JPY_PARENT_PID': '6',\n",
- " 'TERM': 'xterm-color',\n",
- " 'CLICOLOR': '1',\n",
- " 'PAGER': 'cat',\n",
- " 'GIT_PAGER': 'cat',\n",
- " 'MPLBACKEND': 'module://ipykernel.pylab.backend_inline'}"
- ]
- },
- "execution_count": 6,
- "metadata": {},
- "output_type": "execute_result"
- }
- ],
+ "outputs": [],
"source": [
"%env"
]
@@ -334,58 +131,9 @@
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "name": "stdout",
- "output_type": "stream",
- "text": [
- "Requirement already satisfied: ipywidgets in /opt/conda/lib/python3.7/site-packages (7.4.2)\n",
- "Requirement already satisfied: traitlets>=4.3.1 in /opt/conda/lib/python3.7/site-packages (from ipywidgets) (4.3.2)\n",
- "Requirement already satisfied: nbformat>=4.2.0 in /opt/conda/lib/python3.7/site-packages (from ipywidgets) (4.4.0)\n",
- "Requirement already satisfied: ipykernel>=4.5.1 in /opt/conda/lib/python3.7/site-packages (from ipywidgets) (4.10.0)\n",
- "Requirement already satisfied: widgetsnbextension~=3.4.0 in /opt/conda/lib/python3.7/site-packages (from ipywidgets) (3.4.2)\n",
- "Requirement already satisfied: ipython>=4.0.0; python_version >= \"3.3\" in /opt/conda/lib/python3.7/site-packages (from ipywidgets) (6.5.0)\n",
- "Requirement already satisfied: ipython_genutils in /opt/conda/lib/python3.7/site-packages (from traitlets>=4.3.1->ipywidgets) (0.2.0)\n",
- "Requirement already satisfied: six in /opt/conda/lib/python3.7/site-packages (from traitlets>=4.3.1->ipywidgets) (1.12.0)\n",
- "Requirement already satisfied: decorator in /opt/conda/lib/python3.7/site-packages (from traitlets>=4.3.1->ipywidgets) (4.4.0)\n",
- "Requirement already satisfied: jsonschema!=2.5.0,>=2.4 in /opt/conda/lib/python3.7/site-packages (from nbformat>=4.2.0->ipywidgets) (3.0.1)\n",
- "Requirement already satisfied: jupyter_core in /opt/conda/lib/python3.7/site-packages (from nbformat>=4.2.0->ipywidgets) (4.4.0)\n",
- "Requirement already satisfied: tornado>=4.0 in /opt/conda/lib/python3.7/site-packages (from ipykernel>=4.5.1->ipywidgets) (6.0.2)\n",
- "Requirement already satisfied: jupyter-client in /opt/conda/lib/python3.7/site-packages (from ipykernel>=4.5.1->ipywidgets) (5.2.4)\n",
- "Requirement already satisfied: notebook>=4.4.1 in /opt/conda/lib/python3.7/site-packages (from widgetsnbextension~=3.4.0->ipywidgets) (5.7.8)\n",
- "Requirement already satisfied: jedi>=0.10 in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.13.3)\n",
- "Requirement already satisfied: pygments in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (2.4.0)\n",
- "Requirement already satisfied: prompt-toolkit<2.0.0,>=1.0.15 in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (1.0.16)\n",
- "Requirement already satisfied: setuptools>=18.5 in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (41.0.1)\n",
- "Requirement already satisfied: simplegeneric>0.8 in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.8.1)\n",
- "Requirement already satisfied: pickleshare in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.7.5)\n",
- "Requirement already satisfied: pexpect; sys_platform != \"win32\" in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (4.7.0)\n",
- "Requirement already satisfied: backcall in /opt/conda/lib/python3.7/site-packages (from ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.1.0)\n",
- "Requirement already satisfied: attrs>=17.4.0 in /opt/conda/lib/python3.7/site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (19.1.0)\n",
- "Requirement already satisfied: pyrsistent>=0.14.0 in /opt/conda/lib/python3.7/site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (0.15.2)\n",
- "Requirement already satisfied: pyzmq>=13 in /opt/conda/lib/python3.7/site-packages (from jupyter-client->ipykernel>=4.5.1->ipywidgets) (18.0.1)\n",
- "Requirement already satisfied: python-dateutil>=2.1 in /opt/conda/lib/python3.7/site-packages (from jupyter-client->ipykernel>=4.5.1->ipywidgets) (2.8.0)\n",
- "Requirement already satisfied: jinja2 in /opt/conda/lib/python3.7/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (2.10.1)\n",
- "Requirement already satisfied: nbconvert in /opt/conda/lib/python3.7/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (5.5.0)\n",
- "Requirement already satisfied: terminado>=0.8.1 in /opt/conda/lib/python3.7/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.8.2)\n",
- "Requirement already satisfied: Send2Trash in /opt/conda/lib/python3.7/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (1.5.0)\n",
- "Requirement already satisfied: prometheus-client in /opt/conda/lib/python3.7/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.6.0)\n",
- "Requirement already satisfied: parso>=0.3.0 in /opt/conda/lib/python3.7/site-packages (from jedi>=0.10->ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.4.0)\n",
- "Requirement already satisfied: wcwidth in /opt/conda/lib/python3.7/site-packages (from prompt-toolkit<2.0.0,>=1.0.15->ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.1.7)\n",
- "Requirement already satisfied: ptyprocess>=0.5 in /opt/conda/lib/python3.7/site-packages (from pexpect; sys_platform != \"win32\"->ipython>=4.0.0; python_version >= \"3.3\"->ipywidgets) (0.6.0)\n",
- "Requirement already satisfied: MarkupSafe>=0.23 in /opt/conda/lib/python3.7/site-packages (from jinja2->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (1.1.1)\n",
- "Requirement already satisfied: defusedxml in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.5.0)\n",
- "Requirement already satisfied: entrypoints>=0.2.2 in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.3)\n",
- "Requirement already satisfied: pandocfilters>=1.4.1 in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (1.4.2)\n",
- "Requirement already satisfied: testpath in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.4.2)\n",
- "Requirement already satisfied: mistune>=0.8.1 in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.8.4)\n",
- "Requirement already satisfied: bleach in /opt/conda/lib/python3.7/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (3.1.0)\n",
- "Requirement already satisfied: webencodings in /opt/conda/lib/python3.7/site-packages (from bleach->nbconvert->notebook>=4.4.1->widgetsnbextension~=3.4.0->ipywidgets) (0.5.1)\n"
- ]
- }
- ],
+ "outputs": [],
"source": [
"import sys\n",
"!{sys.executable} -m pip install ipywidgets"
@@ -400,22 +148,9 @@
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "image/png": "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\n",
- "text/plain": [
- ""
- ]
- },
- "metadata": {
- "needs_background": "light"
- },
- "output_type": "display_data"
- }
- ],
+ "outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
@@ -451,353 +186,9 @@
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": null,
"metadata": {},
- "outputs": [
- {
- "data": {
- "text/html": [
- "\n",
- " \n",
- "
\n",
- "
Loading BokehJS ... \n",
- "
"
- ]
- },
- "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 != null && id in Bokeh.index) {\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.state import curstate; print(curstate().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 id = msg.content.text.trim();\n",
- " if (id in Bokeh.index) {\n",
- " Bokeh.index[id].model.document.clear();\n",
- " delete Bokeh.index[id];\n",
- " }\n",
- " }\n",
- " }\n",
- " });\n",
- " // Destroy server and session\n",
- " var cmd = \"import bokeh.io.notebook as ion; ion.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[toinsert.length - 1].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[toinsert.length - 1].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[toinsert.length - 1]);\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",
- " \"\\n\"+\n",
- " \"
\\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",
- " \"
\\n\"+\n",
- " \"
\\n\"+\n",
- " \"re-rerun `output_notebook()` to attempt to load from CDN again, or \\n\"+\n",
- " \"use INLINE resources instead, as so: \\n\"+\n",
- " \" \\n\"+\n",
- " \"
\\n\"+\n",
- " \"from bokeh.resources import INLINE\\n\"+\n",
- " \"output_notebook(resources=INLINE)\\n\"+\n",
- " \"\\n\"+\n",
- " \"
\"}};\n",
- "\n",
- " function display_loaded() {\n",
- " var el = document.getElementById(\"1105\");\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(\"1105\");\n",
- " if (element == null) {\n",
- " console.log(\"Bokeh: ERROR: autoload.js configured with elementid '1105' but no matching script tag was found. \")\n",
- " return false;\n",
- " }\n",
- "\n",
- " var js_urls = [\"https://cdn.pydata.org/bokeh/release/bokeh-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-gl-1.0.4.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-1.0.4.min.css\");\n",
- " Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-1.0.4.min.css\");\n",
- " console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.css\");\n",
- " Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.css\");\n",
- " console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.min.css\");\n",
- " Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.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(\"1105\")).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 \"\\n\"+\n \"
\\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 \"
\\n\"+\n \"
\\n\"+\n \"re-rerun `output_notebook()` to attempt to load from CDN again, or \\n\"+\n \"use INLINE resources instead, as so: \\n\"+\n \" \\n\"+\n \"
\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"\\n\"+\n \"
\"}};\n\n function display_loaded() {\n var el = document.getElementById(\"1105\");\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(\"1105\");\n if (element == null) {\n console.log(\"Bokeh: ERROR: autoload.js configured with elementid '1105' but no matching script tag was found. \")\n return false;\n }\n\n var js_urls = [\"https://cdn.pydata.org/bokeh/release/bokeh-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.min.js\", \"https://cdn.pydata.org/bokeh/release/bokeh-gl-1.0.4.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-1.0.4.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-1.0.4.min.css\");\n console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-widgets-1.0.4.min.css\");\n console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.min.css\");\n Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-tables-1.0.4.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(\"1105\")).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"
- },
- {
- "data": {
- "text/html": [
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "\n",
- "
\n"
- ]
- },
- "metadata": {},
- "output_type": "display_data"
- },
- {
- "data": {
- "application/javascript": [
- "(function(root) {\n",
- " function embed_document(root) {\n",
- " \n",
- " var docs_json = {\"127cce1b-e973-4c68-8f10-226fdd1d94cc\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1116\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1121\",\"type\":\"LinearAxis\"}],\"renderers\":[{\"id\":\"1116\",\"type\":\"LinearAxis\"},{\"id\":\"1120\",\"type\":\"Grid\"},{\"id\":\"1121\",\"type\":\"LinearAxis\"},{\"id\":\"1125\",\"type\":\"Grid\"},{\"id\":\"1134\",\"type\":\"BoxAnnotation\"},{\"id\":\"1144\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1156\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1132\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1108\",\"type\":\"DataRange1d\"},\"x_scale\":{\"id\":\"1112\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1110\",\"type\":\"DataRange1d\"},\"y_scale\":{\"id\":\"1114\",\"type\":\"LinearScale\"}},\"id\":\"1107\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"overlay\":{\"id\":\"1134\",\"type\":\"BoxAnnotation\"}},\"id\":\"1128\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"callback\":null,\"data\":{\"x0\":[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],\"x1\":{\"__ndarray__\":\"fDCpKCrK3z8qBd4FpbLBv2heJFDdueQ/K6oBjlRe+D9AplffvPjNvzvbcCYz+M2/CHRAqHRE+T/z1/BG047oP4ueeUveC96/fS1q4aZc4T9wG8Guoqjdv+fvFiuEzt2/cPmepZ74zj++Ne6+y5z+vxLk7nBDmfu/YzyhakL+4b95UaNnjjTwvx+GFtigHNQ/+QOLgYgO7b/HExTEy5j2v0ENnx9Mc/c/2Zhm4TzmzL/GNbFGh0mxP2InDcHEy/a/KPrKUZVr4b81BjE/bGW8PxX1zj14avK/6N19s28L2D/SOz2hbjjjv6DS80Icq9K/p/2pOS5B479X9hhz7qL9P4aDsNZupIu/RsyHS2Ls8L83Lh+1SVLqPxx64lmTiPO/tWnv0gq8yj/DMFAPz1r/v/9asANAQPW/QDr0vL8yyT++nUiqhKHnPwwupFVl78U/XzGyNiCbvb/hr1BvSEXTvwa4sKwGqPe/J6aouPYI57/ZriIKG3vdv2LC1/746fA/iEEAkdf91T9OFQ2YaTX8vzhYbbDKvdQ/QA8qJjCl2L9NOahTWKnlv/nsCSfakuM/1Pz0Wvl+8D8enOD2C83tP1MVD7Xe2uq/zylztCLK07+KTA+JazPVPwBoGGqqN+8/VWYobMqq3r8Tbn1grMPHvzBuPE2Ms/G/9PWajqkj87+w1UonNgDqP/3Ng74os/U/+iMrXUFvsr9qgA6DeA7wP0KkKG0LJdc/rwoBL9Kk5L+P6aQIGyHXPyBgEDvMm/g/UhmlZMpXor8x1znJxwj5P19fz+s89QTAv1gZewZN6j8grkt3t0i2P7/t4LnvItO/OIpGXqJ9tz/iHOwPFc3/v8FsDls1Hsy/04nor+7a1j8349E5dKX3PzA8v2yrleC/S3Lu+S3f6b+hdpfJZA7gv5AGx2H5Su0/gMUgGEIK1T/02ryry/PgvwNc6tKvbOA/OiugAxPauD9TvHjHI//uP3hIyAw4d+a/l5Lxpmr41L8apYzLTBjZvxD0dqaOave/IzBrdqLz0j8UgR0sIbXQPw06yBDZ8XQ/hE70gPMGzr8=\",\"dtype\":\"float64\",\"shape\":[100]},\"x2\":[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],\"x3\":{\"__ndarray__\":\"BCaNylul9r90hh9c2uvavws0Ft4I79W/fDE0YUGs6b/Ac3WcAqXEvzMc/B/429k/GwJ+RNEt/j+RJ1zWkFjGP517TqK0e9A/YFWJNeMOs7/tciNySbP+vzhGxw90Jpu/rRjbe37Wrj+4CNpHuLQDQOSGYbpIn8i/cjBhOY1M0z8IMle3vcWhv88R8r3nsvK/XG9XkwBJ8j9WfwXd1Q/oP9CD1DoiUOk//I03uLMZ7b80xIdy2HH2PxrkSGH7bfa/S4cph4jH4j9pi2GZDYYBQGn2PTx5su+/syyOahwf4r/knA16wIK5P29cmPl4HOC/2oM4dYTP+L/WI4LWV42xP6z3zS0y//C/LYVNoFZP3j+P4yVf7Gvtv8btxwSIzPg/3zBiNWkQ6b/G09nnp5zUv6+9akJVCOo/EVsOyJ6x879VNCM6aB3NP9OKTYUO6vQ/uPAUV0C4+b9xtRAQFaLHP87DhXHrodA/FIwxZrEE6T/Ywx/UjMrzvwa+Dx2XIPW/c+xXzL6z4D81ybwAzAHTP9yCByoTCNA/bQZjHDUs1j8B1nQ0w8Llv50+1zh9us0/Kj4LDLPB0j9/yEiB99vmv987sV822v0/4GTFUEdT3j9piIFBlA/zvwzmpLZ8AuU/U2I0nZcw779TSQgNzC/pPyEIkoSbifI/3Du3kAdD6r/tPhst+tPuP3e1ZrEAa9o/56rQG1FO6j/5fjyZQ1n+P92Zh7bgaM+/8kr3TZse6L+U+RH35nbsvwxYtSseG+q/vzZmCPC8s79JabMXb9XVP3p/jlNNtdE/chRNAUl46j/EwjZjvKCKPwoy0PKsQfc/auDaNiPw0L9MuFAN6MIFQKFsmod3BeQ/fngKr9Vt6799RAssYCLxv2JDLPvT4N4/Gn5stW2azL8Pgm6QF9nmPy3tMXaGSd4/qoMQZuqksr9D/LEj7xjrv/pkh3HQPPi/HGITc7OT3L8ogL5xnmfrPyehqH5sZ8s/3tQeyYvu87+mMWnmyirGP1UCIToKqdg/we3ZY49I7L9MGk6nQ63DP+ihInyIza0/47UXOZtJ8r8=\",\"dtype\":\"float64\",\"shape\":[100]}},\"selected\":{\"id\":\"1162\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1163\",\"type\":\"UnionRenderers\"}},\"id\":\"1106\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1129\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1130\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1131\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1160\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1126\",\"type\":\"PanTool\"},{\"id\":\"1127\",\"type\":\"WheelZoomTool\"},{\"id\":\"1128\",\"type\":\"BoxZoomTool\"},{\"id\":\"1129\",\"type\":\"SaveTool\"},{\"id\":\"1130\",\"type\":\"ResetTool\"},{\"id\":\"1131\",\"type\":\"HelpTool\"}]},\"id\":\"1132\",\"type\":\"Toolbar\"},{\"attributes\":{\"callback\":null},\"id\":\"1108\",\"type\":\"DataRange1d\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x0\"},\"y\":{\"field\":\"x1\"}},\"id\":\"1143\",\"type\":\"Line\"},{\"attributes\":{\"callback\":null},\"id\":\"1110\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"1163\",\"type\":\"UnionRenderers\"},{\"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\":\"1134\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1112\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"1106\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1142\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1143\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"1145\",\"type\":\"CDSView\"}},\"id\":\"1144\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1114\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"1106\",\"type\":\"ColumnDataSource\"}},\"id\":\"1145\",\"type\":\"CDSView\"},{\"attributes\":{\"formatter\":{\"id\":\"1158\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"1107\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1117\",\"type\":\"BasicTicker\"}},\"id\":\"1116\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1117\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1158\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"plot\":{\"id\":\"1107\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1117\",\"type\":\"BasicTicker\"}},\"id\":\"1120\",\"type\":\"Grid\"},{\"attributes\":{\"formatter\":{\"id\":\"1160\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"1107\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1122\",\"type\":\"BasicTicker\"}},\"id\":\"1121\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1122\",\"type\":\"BasicTicker\"},{\"attributes\":{\"dimension\":1,\"plot\":{\"id\":\"1107\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1122\",\"type\":\"BasicTicker\"}},\"id\":\"1125\",\"type\":\"Grid\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x0\"},\"y\":{\"field\":\"x1\"}},\"id\":\"1142\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1162\",\"type\":\"Selection\"},{\"attributes\":{\"plot\":null,\"text\":\"\"},\"id\":\"1156\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1126\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1127\",\"type\":\"WheelZoomTool\"}],\"root_ids\":[\"1107\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.4\"}};\n",
- " var render_items = [{\"docid\":\"127cce1b-e973-4c68-8f10-226fdd1d94cc\",\"roots\":{\"1107\":\"200e8973-d458-4820-916d-c5b915f865e3\"}}];\n",
- " root.Bokeh.embed.embed_items_notebook(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 run BokehJS code 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": "1107"
- }
- },
- "output_type": "display_data"
- }
- ],
+ "outputs": [],
"source": [
"import bokeh\n",
"import numpy as np\n",