Skip to content

Instantly share code, notes, and snippets.

@rutj3
Created November 24, 2016 07:50
Show Gist options
  • Save rutj3/da6044708e57d0d80e956b3e90fc308c to your computer and use it in GitHub Desktop.
Save rutj3/da6044708e57d0d80e956b3e90fc308c to your computer and use it in GitHub Desktop.
bokeh_rects.ipynb
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
" <div class=\"bk-root\">\n",
" <a href=\"http://bokeh.pydata.org\" target=\"_blank\" class=\"bk-logo bk-logo-small bk-logo-notebook\"></a>\n",
" <span id=\"d4bf6386-2a23-484b-ad8d-97eecfba0650\">Loading BokehJS ...</span>\n",
" </div>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/javascript": [
"\n",
"(function(global) {\n",
" function now() {\n",
" return new Date();\n",
" }\n",
"\n",
" var force = \"1\";\n",
"\n",
" if (typeof (window._bokeh_onload_callbacks) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_onload_callbacks = [];\n",
" window._bokeh_is_loading = undefined;\n",
" }\n",
"\n",
"\n",
" \n",
" if (typeof (window._bokeh_timeout) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_timeout = Date.now() + 5000;\n",
" window._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",
" if (window.Bokeh !== undefined) {\n",
" Bokeh.$(\"#d4bf6386-2a23-484b-ad8d-97eecfba0650\").text(\"BokehJS successfully loaded.\");\n",
" } else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(display_loaded, 100)\n",
" }\n",
" }\n",
"\n",
" function run_callbacks() {\n",
" window._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
" delete window._bokeh_onload_callbacks\n",
" console.info(\"Bokeh: all callbacks have finished\");\n",
" }\n",
"\n",
" function load_libs(js_urls, callback) {\n",
" window._bokeh_onload_callbacks.push(callback);\n",
" if (window._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",
" window._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",
" window._bokeh_is_loading--;\n",
" if (window._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(\"d4bf6386-2a23-484b-ad8d-97eecfba0650\");\n",
" if (element == null) {\n",
" console.log(\"Bokeh: ERROR: autoload.js configured with elementid 'd4bf6386-2a23-484b-ad8d-97eecfba0650' 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.3.min.js', 'https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.3.min.js'];\n",
"\n",
" var inline_js = [\n",
" function(Bokeh) {\n",
" Bokeh.set_log_level(\"info\");\n",
" },\n",
" \n",
" function(Bokeh) {\n",
" \n",
" Bokeh.$(\"#d4bf6386-2a23-484b-ad8d-97eecfba0650\").text(\"BokehJS is loading...\");\n",
" },\n",
" function(Bokeh) {\n",
" console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-0.12.3.min.css\");\n",
" Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-0.12.3.min.css\");\n",
" console.log(\"Bokeh: injecting CSS: https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.3.min.css\");\n",
" Bokeh.embed.inject_css(\"https://cdn.pydata.org/bokeh/release/bokeh-widgets-0.12.3.min.css\");\n",
" }\n",
" ];\n",
"\n",
" function run_inline_js() {\n",
" \n",
" if ((window.Bokeh !== undefined) || (force === \"1\")) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i](window.Bokeh);\n",
" }if (force === \"1\") {\n",
" display_loaded();\n",
" }} else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!window._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" window._bokeh_failed_load = true;\n",
" } else if (!force) {\n",
" var cell = $(\"#d4bf6386-2a23-484b-ad8d-97eecfba0650\").parents('.cell').data().cell;\n",
" cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
" }\n",
"\n",
" }\n",
"\n",
" if (window._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",
"}(this));"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"from bokeh.plotting import figure\n",
"from bokeh.io import output_notebook, show\n",
"import numpy as np\n",
"\n",
"output_notebook()"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"xs = [1.,2,3,4,5]\n",
"ys = [1.,2,3,4,5]\n",
"\n",
"colors = ['blue'] * len(xs)\n",
"colors[1] = 'red'"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
" <div class=\"bk-root\">\n",
" <div class=\"plotdiv\" id=\"edb4fada-8cae-4cbc-a497-627153d445f8\"></div>\n",
" </div>\n",
"<script type=\"text/javascript\">\n",
" \n",
" (function(global) {\n",
" function now() {\n",
" return new Date();\n",
" }\n",
" \n",
" var force = \"\";\n",
" \n",
" if (typeof (window._bokeh_onload_callbacks) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_onload_callbacks = [];\n",
" window._bokeh_is_loading = undefined;\n",
" }\n",
" \n",
" \n",
" \n",
" if (typeof (window._bokeh_timeout) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_timeout = Date.now() + 0;\n",
" window._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",
" if (window.Bokeh !== undefined) {\n",
" Bokeh.$(\"#edb4fada-8cae-4cbc-a497-627153d445f8\").text(\"BokehJS successfully loaded.\");\n",
" } else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(display_loaded, 100)\n",
" }\n",
" }\n",
" \n",
" function run_callbacks() {\n",
" window._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
" delete window._bokeh_onload_callbacks\n",
" console.info(\"Bokeh: all callbacks have finished\");\n",
" }\n",
" \n",
" function load_libs(js_urls, callback) {\n",
" window._bokeh_onload_callbacks.push(callback);\n",
" if (window._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",
" window._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",
" window._bokeh_is_loading--;\n",
" if (window._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(\"edb4fada-8cae-4cbc-a497-627153d445f8\");\n",
" if (element == null) {\n",
" console.log(\"Bokeh: ERROR: autoload.js configured with elementid 'edb4fada-8cae-4cbc-a497-627153d445f8' but no matching script tag was found. \")\n",
" return false;\n",
" }\n",
" \n",
" var js_urls = [];\n",
" \n",
" var inline_js = [\n",
" function(Bokeh) {\n",
" Bokeh.$(function() {\n",
" var docs_json = {\"33dc5322-eb84-41c1-88f4-cfcbf46e24aa\":{\"roots\":{\"references\":[{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"3fcd5038-5042-4592-9f47-55c38ec8d862\",\"type\":\"ResetTool\"},{\"attributes\":{\"overlay\":{\"id\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"d23f5398-b48c-4d1e-bdec-d10eee3d55f6\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"},{\"attributes\":{\"callback\":null},\"id\":\"c4569cbb-ce1a-4c9b-8933-780fe844fd69\",\"type\":\"DataRange1d\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"y\",\"fill_color\",\"line_color\"],\"data\":{\"fill_color\":[\"blue\",\"red\",\"blue\",\"blue\",\"blue\"],\"line_color\":[\"blue\",\"red\",\"blue\",\"blue\",\"blue\"],\"x\":[1.0,2.0,3.0,4.0,5.0],\"y\":[1.0,2.0,3.0,4.0,5.0]}},\"id\":\"6ad0017d-846c-4c71-a9a1-a8926f764a5c\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"formatter\":{\"id\":\"9182744b-0839-4ce1-9328-3dfe3fe39cc1\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"}},\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"},{\"attributes\":{\"plot\":null,\"text\":null},\"id\":\"432ac5d1-3222-4965-bc62-f09048419fb2\",\"type\":\"Title\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"455ebb8a-5af3-41b7-9cc1-4c41a7e1d123\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"cd011570-0c06-43d1-b6ef-c9dd84c0abee\",\"type\":\"PanTool\"},{\"attributes\":{\"formatter\":{\"id\":\"7556e26b-decb-4187-aee1-ff7dbd7dde65\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"}},\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"e9c8c327-ebf2-4fc3-aaaf-8a634ef608dc\",\"type\":\"HelpTool\"},{\"attributes\":{\"callback\":null},\"id\":\"c760de85-6145-4bdb-ba3b-26ce4a23bb1f\",\"type\":\"DataRange1d\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"cd011570-0c06-43d1-b6ef-c9dd84c0abee\",\"type\":\"PanTool\"},{\"id\":\"455ebb8a-5af3-41b7-9cc1-4c41a7e1d123\",\"type\":\"WheelZoomTool\"},{\"id\":\"d23f5398-b48c-4d1e-bdec-d10eee3d55f6\",\"type\":\"BoxZoomTool\"},{\"id\":\"ba15dde5-4c64-4048-a9f1-371afc373a08\",\"type\":\"SaveTool\"},{\"id\":\"3fcd5038-5042-4592-9f47-55c38ec8d862\",\"type\":\"ResetTool\"},{\"id\":\"e9c8c327-ebf2-4fc3-aaaf-8a634ef608dc\",\"type\":\"HelpTool\"}]},\"id\":\"f074bd05-750b-427a-abeb-aed23f3855c0\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"height\":{\"units\":\"data\",\"value\":0.25},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"width\":{\"units\":\"data\",\"value\":0.25},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"fb9e3ac3-2852-4c42-a54a-29aab838e459\",\"type\":\"Rect\"},{\"attributes\":{},\"id\":\"7556e26b-decb-4187-aee1-ff7dbd7dde65\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"dimension\":1,\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"}},\"id\":\"4037adcd-afaa-46b3-9c5d-fefe768ca930\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"9182744b-0839-4ce1-9328-3dfe3fe39cc1\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"},{\"attributes\":{\"below\":[{\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"}],\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"},{\"id\":\"022deb7c-e853-4191-b45d-54598f742a3d\",\"type\":\"Grid\"},{\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"},{\"id\":\"4037adcd-afaa-46b3-9c5d-fefe768ca930\",\"type\":\"Grid\"},{\"id\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},{\"id\":\"9f98dcd7-3df3-41f0-8139-e91824ea697b\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"432ac5d1-3222-4965-bc62-f09048419fb2\",\"type\":\"Title\"},\"tool_events\":{\"id\":\"4471d729-fdad-49f0-adeb-ca1739844edc\",\"type\":\"ToolEvents\"},\"toolbar\":{\"id\":\"f074bd05-750b-427a-abeb-aed23f3855c0\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"c760de85-6145-4bdb-ba3b-26ce4a23bb1f\",\"type\":\"DataRange1d\"},\"y_range\":{\"id\":\"c4569cbb-ce1a-4c9b-8933-780fe844fd69\",\"type\":\"DataRange1d\"}},\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"4471d729-fdad-49f0-adeb-ca1739844edc\",\"type\":\"ToolEvents\"},{\"attributes\":{\"fill_color\":{\"field\":\"fill_color\"},\"height\":{\"units\":\"data\",\"value\":0.25},\"line_color\":{\"field\":\"line_color\"},\"width\":{\"units\":\"data\",\"value\":0.25},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"e1b4f611-ab36-4737-9ef3-69f2e8dae729\",\"type\":\"Rect\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"ba15dde5-4c64-4048-a9f1-371afc373a08\",\"type\":\"SaveTool\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"}},\"id\":\"022deb7c-e853-4191-b45d-54598f742a3d\",\"type\":\"Grid\"},{\"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\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"6ad0017d-846c-4c71-a9a1-a8926f764a5c\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"e1b4f611-ab36-4737-9ef3-69f2e8dae729\",\"type\":\"Rect\"},\"hover_glyph\":null,\"nonselection_glyph\":{\"id\":\"fb9e3ac3-2852-4c42-a54a-29aab838e459\",\"type\":\"Rect\"},\"selection_glyph\":null},\"id\":\"9f98dcd7-3df3-41f0-8139-e91824ea697b\",\"type\":\"GlyphRenderer\"}],\"root_ids\":[\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\"]},\"title\":\"Bokeh Application\",\"version\":\"0.12.3\"}};\n",
" var render_items = [{\"docid\":\"33dc5322-eb84-41c1-88f4-cfcbf46e24aa\",\"elementid\":\"edb4fada-8cae-4cbc-a497-627153d445f8\",\"modelid\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\"}];\n",
" \n",
" Bokeh.embed.embed_items(docs_json, render_items);\n",
" });\n",
" },\n",
" function(Bokeh) {\n",
" }\n",
" ];\n",
" \n",
" function run_inline_js() {\n",
" \n",
" if ((window.Bokeh !== undefined) || (force === \"1\")) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i](window.Bokeh);\n",
" }if (force === \"1\") {\n",
" display_loaded();\n",
" }} else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!window._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" window._bokeh_failed_load = true;\n",
" } else if (!force) {\n",
" var cell = $(\"#edb4fada-8cae-4cbc-a497-627153d445f8\").parents('.cell').data().cell;\n",
" cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
" }\n",
" \n",
" }\n",
" \n",
" if (window._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",
" }(this));\n",
"</script>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"p1 =figure(height=300, width=300)\n",
"\n",
"r = p1.rect(xs, ys, color=colors, width=.25, height=.25)\n",
"\n",
"show(p1)\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/plain": [
"{'fill_color': ['blue', 'red', 'blue', 'blue', 'blue'],\n",
" 'line_color': ['blue', 'red', 'blue', 'blue', 'blue'],\n",
" 'x': [1.0, 2, 3, 4, 5],\n",
" 'y': [1.0, 2, 3, 4, 5]}"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"r.data_source.data"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false
},
"outputs": [],
"source": [
"r.data_source.data['fill_color'][2] = 'green'"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
" <div class=\"bk-root\">\n",
" <div class=\"plotdiv\" id=\"6566b729-37c1-442c-9a6c-2b116b916c31\"></div>\n",
" </div>\n",
"<script type=\"text/javascript\">\n",
" \n",
" (function(global) {\n",
" function now() {\n",
" return new Date();\n",
" }\n",
" \n",
" var force = \"\";\n",
" \n",
" if (typeof (window._bokeh_onload_callbacks) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_onload_callbacks = [];\n",
" window._bokeh_is_loading = undefined;\n",
" }\n",
" \n",
" \n",
" \n",
" if (typeof (window._bokeh_timeout) === \"undefined\" || force !== \"\") {\n",
" window._bokeh_timeout = Date.now() + 0;\n",
" window._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",
" if (window.Bokeh !== undefined) {\n",
" Bokeh.$(\"#6566b729-37c1-442c-9a6c-2b116b916c31\").text(\"BokehJS successfully loaded.\");\n",
" } else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(display_loaded, 100)\n",
" }\n",
" }\n",
" \n",
" function run_callbacks() {\n",
" window._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
" delete window._bokeh_onload_callbacks\n",
" console.info(\"Bokeh: all callbacks have finished\");\n",
" }\n",
" \n",
" function load_libs(js_urls, callback) {\n",
" window._bokeh_onload_callbacks.push(callback);\n",
" if (window._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",
" window._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",
" window._bokeh_is_loading--;\n",
" if (window._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(\"6566b729-37c1-442c-9a6c-2b116b916c31\");\n",
" if (element == null) {\n",
" console.log(\"Bokeh: ERROR: autoload.js configured with elementid '6566b729-37c1-442c-9a6c-2b116b916c31' but no matching script tag was found. \")\n",
" return false;\n",
" }\n",
" \n",
" var js_urls = [];\n",
" \n",
" var inline_js = [\n",
" function(Bokeh) {\n",
" Bokeh.$(function() {\n",
" var docs_json = {\"e9e03751-a5ca-4fd1-9682-a53cada0b610\":{\"roots\":{\"references\":[{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"3fcd5038-5042-4592-9f47-55c38ec8d862\",\"type\":\"ResetTool\"},{\"attributes\":{\"overlay\":{\"id\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"d23f5398-b48c-4d1e-bdec-d10eee3d55f6\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"},{\"attributes\":{\"callback\":null},\"id\":\"c4569cbb-ce1a-4c9b-8933-780fe844fd69\",\"type\":\"DataRange1d\"},{\"attributes\":{\"callback\":null,\"column_names\":[\"x\",\"y\",\"fill_color\",\"line_color\"],\"data\":{\"fill_color\":[\"blue\",\"red\",\"green\",\"blue\",\"blue\"],\"line_color\":[\"blue\",\"red\",\"green\",\"blue\",\"blue\"],\"x\":[1.0,2.0,3.0,4.0,5.0],\"y\":[1.0,2.0,3.0,4.0,5.0]}},\"id\":\"6ad0017d-846c-4c71-a9a1-a8926f764a5c\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"formatter\":{\"id\":\"9182744b-0839-4ce1-9328-3dfe3fe39cc1\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"}},\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"},{\"attributes\":{\"plot\":null,\"text\":null},\"id\":\"432ac5d1-3222-4965-bc62-f09048419fb2\",\"type\":\"Title\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"455ebb8a-5af3-41b7-9cc1-4c41a7e1d123\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"cd011570-0c06-43d1-b6ef-c9dd84c0abee\",\"type\":\"PanTool\"},{\"attributes\":{\"formatter\":{\"id\":\"7556e26b-decb-4187-aee1-ff7dbd7dde65\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"}},\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"e9c8c327-ebf2-4fc3-aaaf-8a634ef608dc\",\"type\":\"HelpTool\"},{\"attributes\":{\"callback\":null},\"id\":\"c760de85-6145-4bdb-ba3b-26ce4a23bb1f\",\"type\":\"DataRange1d\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"cd011570-0c06-43d1-b6ef-c9dd84c0abee\",\"type\":\"PanTool\"},{\"id\":\"455ebb8a-5af3-41b7-9cc1-4c41a7e1d123\",\"type\":\"WheelZoomTool\"},{\"id\":\"d23f5398-b48c-4d1e-bdec-d10eee3d55f6\",\"type\":\"BoxZoomTool\"},{\"id\":\"ba15dde5-4c64-4048-a9f1-371afc373a08\",\"type\":\"SaveTool\"},{\"id\":\"3fcd5038-5042-4592-9f47-55c38ec8d862\",\"type\":\"ResetTool\"},{\"id\":\"e9c8c327-ebf2-4fc3-aaaf-8a634ef608dc\",\"type\":\"HelpTool\"}]},\"id\":\"f074bd05-750b-427a-abeb-aed23f3855c0\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"height\":{\"units\":\"data\",\"value\":0.25},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"width\":{\"units\":\"data\",\"value\":0.25},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"fb9e3ac3-2852-4c42-a54a-29aab838e459\",\"type\":\"Rect\"},{\"attributes\":{},\"id\":\"7556e26b-decb-4187-aee1-ff7dbd7dde65\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"dimension\":1,\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"67e8cd35-e53c-4f7a-8fa8-e90f0371f292\",\"type\":\"BasicTicker\"}},\"id\":\"4037adcd-afaa-46b3-9c5d-fefe768ca930\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"9182744b-0839-4ce1-9328-3dfe3fe39cc1\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"},{\"attributes\":{\"below\":[{\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"}],\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"e22222f6-0d28-4c46-9605-db45e8146681\",\"type\":\"LinearAxis\"},{\"id\":\"022deb7c-e853-4191-b45d-54598f742a3d\",\"type\":\"Grid\"},{\"id\":\"1cbf8f52-cc20-449f-870c-8eb7236bd139\",\"type\":\"LinearAxis\"},{\"id\":\"4037adcd-afaa-46b3-9c5d-fefe768ca930\",\"type\":\"Grid\"},{\"id\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},{\"id\":\"9f98dcd7-3df3-41f0-8139-e91824ea697b\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"432ac5d1-3222-4965-bc62-f09048419fb2\",\"type\":\"Title\"},\"tool_events\":{\"id\":\"4471d729-fdad-49f0-adeb-ca1739844edc\",\"type\":\"ToolEvents\"},\"toolbar\":{\"id\":\"f074bd05-750b-427a-abeb-aed23f3855c0\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"c760de85-6145-4bdb-ba3b-26ce4a23bb1f\",\"type\":\"DataRange1d\"},\"y_range\":{\"id\":\"c4569cbb-ce1a-4c9b-8933-780fe844fd69\",\"type\":\"DataRange1d\"}},\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"4471d729-fdad-49f0-adeb-ca1739844edc\",\"type\":\"ToolEvents\"},{\"attributes\":{\"fill_color\":{\"field\":\"fill_color\"},\"height\":{\"units\":\"data\",\"value\":0.25},\"line_color\":{\"field\":\"line_color\"},\"width\":{\"units\":\"data\",\"value\":0.25},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"e1b4f611-ab36-4737-9ef3-69f2e8dae729\",\"type\":\"Rect\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"}},\"id\":\"ba15dde5-4c64-4048-a9f1-371afc373a08\",\"type\":\"SaveTool\"},{\"attributes\":{\"plot\":{\"id\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"95184707-3b13-4a6c-8037-b0a39d94985a\",\"type\":\"BasicTicker\"}},\"id\":\"022deb7c-e853-4191-b45d-54598f742a3d\",\"type\":\"Grid\"},{\"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\":\"abf37f53-d825-4c93-b047-418e4f24dc7c\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"6ad0017d-846c-4c71-a9a1-a8926f764a5c\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"e1b4f611-ab36-4737-9ef3-69f2e8dae729\",\"type\":\"Rect\"},\"hover_glyph\":null,\"nonselection_glyph\":{\"id\":\"fb9e3ac3-2852-4c42-a54a-29aab838e459\",\"type\":\"Rect\"},\"selection_glyph\":null},\"id\":\"9f98dcd7-3df3-41f0-8139-e91824ea697b\",\"type\":\"GlyphRenderer\"}],\"root_ids\":[\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\"]},\"title\":\"Bokeh Application\",\"version\":\"0.12.3\"}};\n",
" var render_items = [{\"docid\":\"e9e03751-a5ca-4fd1-9682-a53cada0b610\",\"elementid\":\"6566b729-37c1-442c-9a6c-2b116b916c31\",\"modelid\":\"0e8b3c73-fe3a-44f3-a5ac-786abe0f0181\"}];\n",
" \n",
" Bokeh.embed.embed_items(docs_json, render_items);\n",
" });\n",
" },\n",
" function(Bokeh) {\n",
" }\n",
" ];\n",
" \n",
" function run_inline_js() {\n",
" \n",
" if ((window.Bokeh !== undefined) || (force === \"1\")) {\n",
" for (var i = 0; i < inline_js.length; i++) {\n",
" inline_js[i](window.Bokeh);\n",
" }if (force === \"1\") {\n",
" display_loaded();\n",
" }} else if (Date.now() < window._bokeh_timeout) {\n",
" setTimeout(run_inline_js, 100);\n",
" } else if (!window._bokeh_failed_load) {\n",
" console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
" window._bokeh_failed_load = true;\n",
" } else if (!force) {\n",
" var cell = $(\"#6566b729-37c1-442c-9a6c-2b116b916c31\").parents('.cell').data().cell;\n",
" cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
" }\n",
" \n",
" }\n",
" \n",
" if (window._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",
" }(this));\n",
"</script>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"show(p1)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": []
}
],
"metadata": {
"anaconda-cloud": {},
"kernelspec": {
"display_name": "Python [default]",
"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.4.5"
}
},
"nbformat": 4,
"nbformat_minor": 0
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment