{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "This code supports the blog post at https://codingrelic.geekhold.com/2019/02/line-graphs-in-jupyterlab.html\n", "\n", "If you are viewing this page on github, you are seeing a static rendering of the notebook not the interactive version described in the blog post. You can see the interactive version on [mybinder.org](https://mybinder.org/v2/gh/DentonGentry/blog-posts/master?urlpath=lab/tree/LineGraphs.ipynb)." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "# generate data for subsequent cells to graph\n", "import pandas as pd\n", "import numpy as np\n", "\n", "t = np.arange(0.0, 2.0, 0.01)\n", "s = 1 + np.sin(2*np.pi*t)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "9424d6a0b9d94dd1b1257ee24934c200", "version_major": 2, "version_minor": 0 }, "text/plain": [ "FigureCanvasNbAgg()" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# https://matplotlib.org/\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "%matplotlib ipympl\n", "\n", "plt.plot(t, s)\n", "plt.grid(True)\n", "plt.show()\n", "# If nothing appears, please run this cell a second time." ] }, { "cell_type": "code", "execution_count": 14, "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", " \"\\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(\"1220\");\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(\"1220\");\n", " if (element == null) {\n", " console.log(\"Bokeh: ERROR: autoload.js configured with elementid '1220' 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(\"1220\")).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 \"\\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(\"1220\");\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(\"1220\");\n if (element == null) {\n console.log(\"Bokeh: ERROR: autoload.js configured with elementid '1220' 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(\"1220\")).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 = {\"467704b9-8237-40ee-9634-2db396c7c886\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1230\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1235\",\"type\":\"LinearAxis\"}],\"plot_height\":400,\"plot_width\":400,\"renderers\":[{\"id\":\"1230\",\"type\":\"LinearAxis\"},{\"id\":\"1234\",\"type\":\"Grid\"},{\"id\":\"1235\",\"type\":\"LinearAxis\"},{\"id\":\"1239\",\"type\":\"Grid\"},{\"id\":\"1248\",\"type\":\"BoxAnnotation\"},{\"id\":\"1258\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1271\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1246\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1222\",\"type\":\"DataRange1d\"},\"x_scale\":{\"id\":\"1226\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1224\",\"type\":\"DataRange1d\"},\"y_scale\":{\"id\":\"1228\",\"type\":\"LinearScale\"}},\"id\":\"1221\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data_source\":{\"id\":\"1255\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1256\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1257\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"1259\",\"type\":\"CDSView\"}},\"id\":\"1258\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"callback\":null},\"id\":\"1222\",\"type\":\"DataRange1d\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1257\",\"type\":\"Line\"},{\"attributes\":{\"overlay\":{\"id\":\"1248\",\"type\":\"BoxAnnotation\"}},\"id\":\"1242\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1240\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1231\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1244\",\"type\":\"ResetTool\"},{\"attributes\":{\"plot\":{\"id\":\"1221\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1231\",\"type\":\"BasicTicker\"}},\"id\":\"1234\",\"type\":\"Grid\"},{\"attributes\":{\"dimension\":1,\"plot\":{\"id\":\"1221\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1236\",\"type\":\"BasicTicker\"}},\"id\":\"1239\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1243\",\"type\":\"SaveTool\"},{\"attributes\":{\"formatter\":{\"id\":\"1273\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"1221\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1231\",\"type\":\"BasicTicker\"}},\"id\":\"1230\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1226\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1278\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1236\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1228\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1256\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1277\",\"type\":\"Selection\"},{\"attributes\":{\"callback\":null,\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]}},\"selected\":{\"id\":\"1277\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1278\",\"type\":\"UnionRenderers\"}},\"id\":\"1255\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1271\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1275\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1273\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"callback\":null},\"id\":\"1224\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"1241\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"callback\":null,\"tooltips\":[[\"x\",\"@x\"],[\"y\",\"@y\"]]},\"id\":\"1260\",\"type\":\"HoverTool\"},{\"attributes\":{\"source\":{\"id\":\"1255\",\"type\":\"ColumnDataSource\"}},\"id\":\"1259\",\"type\":\"CDSView\"},{\"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\":\"1248\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"formatter\":{\"id\":\"1275\",\"type\":\"BasicTickFormatter\"},\"plot\":{\"id\":\"1221\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1236\",\"type\":\"BasicTicker\"}},\"id\":\"1235\",\"type\":\"LinearAxis\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1240\",\"type\":\"PanTool\"},{\"id\":\"1241\",\"type\":\"WheelZoomTool\"},{\"id\":\"1242\",\"type\":\"BoxZoomTool\"},{\"id\":\"1243\",\"type\":\"SaveTool\"},{\"id\":\"1244\",\"type\":\"ResetTool\"},{\"id\":\"1245\",\"type\":\"HelpTool\"},{\"id\":\"1260\",\"type\":\"HoverTool\"}]},\"id\":\"1246\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1245\",\"type\":\"HelpTool\"}],\"root_ids\":[\"1221\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.4\"}};\n", " var render_items = [{\"docid\":\"467704b9-8237-40ee-9634-2db396c7c886\",\"roots\":{\"1221\":\"5b3a401f-df58-4b0e-9a5a-aca18684781e\"}}];\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": "1221" } }, "output_type": "display_data" } ], "source": [ "# https://bokeh.pydata.org/\n", "from bokeh.io import output_notebook, show\n", "from bokeh.plotting import figure\n", "from bokeh.models import HoverTool\n", "output_notebook()\n", "p = figure(plot_width=400, plot_height=400)\n", "p.line(t, s)\n", "hover = HoverTool(tooltips =[('x','@x'),('y','@y')])\n", "p.add_tools(hover)\n", "show(p)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "application/javascript": [ "\n", "// Ugly hack - see HoloViews #2574 for more information\n", "if (!(document.getElementById('1338')) && !(document.getElementById('_anim_imgNone'))) {\n", " console.log(\"Creating DOM nodes dynamically for assumed nbconvert export. To generate clean HTML output set HV_DOC_HTML as an environment variable.\")\n", " var htmlObject = document.createElement('div');\n", " htmlObject.innerHTML = `
\n", "\n", "\n", "\n", "\n", "\n", "
\n", "
`;\n", " var scriptTags = document.getElementsByTagName('script');\n", " var parentTag = scriptTags[scriptTags.length-1].parentNode;\n", " if (parentTag.attributes.length && (parentTag.attributes[0].name == 'data-shell-mode')) {\n", " alert('Displaying PyViz objects in JupyterLab requires the jupyterlab_pyviz extension to be installed, install it with:\\n\\n\\tjupyter labextension install @pyviz/jupyterlab_pyviz');\n", " } else {\n", " parentTag.append(htmlObject)\n", " }\n", "}\n", "(function(root) {\n", " function embed_document(root) {\n", " \n", " var docs_json = {\"9fadd0f0-4b9f-4a6b-a53d-babcea779c6f\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1346\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1351\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":700,\"renderers\":[{\"id\":\"1346\",\"type\":\"LinearAxis\"},{\"id\":\"1350\",\"type\":\"Grid\"},{\"id\":\"1351\",\"type\":\"LinearAxis\"},{\"id\":\"1355\",\"type\":\"Grid\"},{\"id\":\"1365\",\"type\":\"BoxAnnotation\"},{\"id\":\"1376\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1337\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1361\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1334\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1342\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1335\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1344\",\"type\":\"LinearScale\"}},\"id\":\"1338\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1356\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1347\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1342\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1360\",\"type\":\"ResetTool\"},{\"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\":\"1365\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"1370\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1373\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":{\"id\":\"1375\",\"type\":\"Line\"},\"nonselection_glyph\":{\"id\":\"1374\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"1377\",\"type\":\"CDSView\"}},\"id\":\"1376\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"overlay\":{\"id\":\"1365\",\"type\":\"BoxAnnotation\"}},\"id\":\"1359\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1371\",\"type\":\"Selection\"},{\"attributes\":{\"dimension\":1,\"plot\":{\"id\":\"1338\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1352\",\"type\":\"BasicTicker\"}},\"id\":\"1355\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1378\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1338\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1347\",\"type\":\"BasicTicker\"}},\"id\":\"1346\",\"type\":\"LinearAxis\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1337\",\"type\":\"Title\"},{\"attributes\":{\"source\":{\"id\":\"1370\",\"type\":\"ColumnDataSource\"}},\"id\":\"1377\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1380\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1390\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"callback\":null,\"data\":{\"0\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]},\"A_0\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]},\"index\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]}},\"selected\":{\"id\":\"1371\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1390\",\"type\":\"UnionRenderers\"}},\"id\":\"1370\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"index\"},\"y\":{\"field\":\"0\"}},\"id\":\"1373\",\"type\":\"Line\"},{\"attributes\":{\"axis_label\":\"0\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1380\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1338\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1352\",\"type\":\"BasicTicker\"}},\"id\":\"1351\",\"type\":\"LinearAxis\"},{\"attributes\":{\"callback\":null,\"end\":2.0,\"reset_end\":2.0,\"reset_start\":0.0,\"tags\":[[[\"0\",\"0\",null]]]},\"id\":\"1335\",\"type\":\"Range1d\"},{\"attributes\":{\"callback\":null,\"renderers\":[{\"id\":\"1376\",\"type\":\"GlyphRenderer\"}],\"tooltips\":[[\"index\",\"@{index}\"],[\"0\",\"@{A_0}\"]]},\"id\":\"1336\",\"type\":\"HoverTool\"},{\"attributes\":{},\"id\":\"1378\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"plot\":{\"id\":\"1338\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1347\",\"type\":\"BasicTicker\"}},\"id\":\"1350\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1352\",\"type\":\"BasicTicker\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1336\",\"type\":\"HoverTool\"},{\"id\":\"1356\",\"type\":\"SaveTool\"},{\"id\":\"1357\",\"type\":\"PanTool\"},{\"id\":\"1358\",\"type\":\"WheelZoomTool\"},{\"id\":\"1359\",\"type\":\"BoxZoomTool\"},{\"id\":\"1360\",\"type\":\"ResetTool\"}]},\"id\":\"1361\",\"type\":\"Toolbar\"},{\"attributes\":{\"callback\":null,\"end\":1.99,\"reset_end\":1.99,\"reset_start\":0.0,\"tags\":[[[\"index\",\"index\",null]]]},\"id\":\"1334\",\"type\":\"Range1d\"},{\"attributes\":{\"line_alpha\":0.2,\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"index\"},\"y\":{\"field\":\"0\"}},\"id\":\"1375\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1357\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1344\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"index\"},\"y\":{\"field\":\"0\"}},\"id\":\"1374\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1358\",\"type\":\"WheelZoomTool\"}],\"root_ids\":[\"1338\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.4\"}};\n", " var render_items = [{\"docid\":\"9fadd0f0-4b9f-4a6b-a53d-babcea779c6f\",\"roots\":{\"1338\":\"8f60c555-6b98-414d-88d9-bdf1c1667361\"}}];\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.holoviews_exec.v0+json": "", "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "
\n", "
" ], "text/plain": [ ":Curve [index] (0)" ] }, "execution_count": 19, "metadata": { "application/vnd.holoviews_exec.v0+json": { "id": "1338" } }, "output_type": "execute_result" } ], "source": [ "# https://hvplot.pyviz.org/\n", "import hvplot as hv\n", "import hvplot.pandas\n", "df = pd.DataFrame(s, index=t)\n", "df.hvplot(grid=True)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "0163737f3a9c477cb61e2ed5cd348f38", "version_major": 2, "version_minor": 0 } }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# https://beakerx.com\n", "import beakerx\n", "\n", "bkp = beakerx.Plot()\n", "bkp.add(beakerx.Line(x=t, y=s))" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "cf6a75ba400e4cf08a434014203c4070", "version_major": 2, "version_minor": 0 }, "text/plain": [ "Figure(axes=[Axis(scale=LinearScale()), Axis(orientation='vertical', scale=LinearScale())], fig_margin={'top':…" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# https://github.com/bloomberg/bqplot\n", "import bqplot\n", "x_sc = bqplot.LinearScale()\n", "y_sc = bqplot.LinearScale()\n", "def_tt = bqplot.Tooltip(fields=['x', 'y'], formats=['.2f', '.2f'])\n", "line_chart = bqplot.Lines(x=t, y=s, scales= {'x': x_sc, 'y': y_sc}, tooltip=def_tt)\n", "ax_x = bqplot.Axis(scale=x_sc)\n", "ax_y = bqplot.Axis(scale=y_sc, orientation='vertical')\n", "panzoom = bqplot.PanZoom(scales={'x': [x_sc], 'y': [y_sc]})\n", "bqplot.Figure(marks=[line_chart], axes=[ax_x, ax_y], interaction=panzoom)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "application/vnd.vegalite.v2+json": { "$schema": "https://vega.github.io/schema/vega-lite/v2.6.0.json", "config": { "view": { "height": 300, "width": 400 } }, "data": { "name": "data-87b6d5d7a3e92782e92be6a7c606fcdd" }, "datasets": { "data-87b6d5d7a3e92782e92be6a7c606fcdd": [ { "sin": 1, "t": 0 }, { "sin": 1.0627905195293135, "t": 0.01 }, { "sin": 1.1253332335643043, "t": 0.02 }, { "sin": 1.1873813145857246, "t": 0.03 }, { "sin": 1.2486898871648549, "t": 0.04 }, { "sin": 1.3090169943749475, "t": 0.05 }, { "sin": 1.368124552684678, "t": 0.06 }, { "sin": 1.4257792915650727, "t": 0.07 }, { "sin": 1.4817536741017152, "t": 0.08 }, { "sin": 1.5358267949789965, "t": 0.09 }, { "sin": 1.5877852522924731, "t": 0.1 }, { "sin": 1.6374239897486897, "t": 0.11 }, { "sin": 1.6845471059286887, "t": 0.12 }, { "sin": 1.7289686274214116, "t": 0.13 }, { "sin": 1.7705132427757893, "t": 0.14 }, { "sin": 1.8090169943749475, "t": 0.15 }, { "sin": 1.844327925502015, "t": 0.16 }, { "sin": 1.8763066800438637, "t": 0.17 }, { "sin": 1.9048270524660196, "t": 0.18 }, { "sin": 1.9297764858882513, "t": 0.19 }, { "sin": 1.9510565162951536, "t": 0.2 }, { "sin": 1.968583161128631, "t": 0.21 }, { "sin": 1.9822872507286886, "t": 0.22 }, { "sin": 1.992114701314478, "t": 0.23 }, { "sin": 1.9980267284282716, "t": 0.24 }, { "sin": 2, "t": 0.25 }, { "sin": 1.9980267284282716, "t": 0.26 }, { "sin": 1.9921147013144778, "t": 0.27 }, { "sin": 1.9822872507286886, "t": 0.28 }, { "sin": 1.968583161128631, "t": 0.29 }, { "sin": 1.9510565162951536, "t": 0.3 }, { "sin": 1.9297764858882513, "t": 0.31 }, { "sin": 1.9048270524660196, "t": 0.32 }, { "sin": 1.8763066800438635, "t": 0.33 }, { "sin": 1.8443279255020149, "t": 0.34 }, { "sin": 1.8090169943749475, "t": 0.35000000000000003 }, { "sin": 1.7705132427757893, "t": 0.36 }, { "sin": 1.7289686274214116, "t": 0.37 }, { "sin": 1.6845471059286887, "t": 0.38 }, { "sin": 1.6374239897486897, "t": 0.39 }, { "sin": 1.5877852522924734, "t": 0.4 }, { "sin": 1.5358267949789965, "t": 0.41000000000000003 }, { "sin": 1.4817536741017157, "t": 0.42 }, { "sin": 1.4257792915650729, "t": 0.43 }, { "sin": 1.3681245526846781, "t": 0.44 }, { "sin": 1.3090169943749475, "t": 0.45 }, { "sin": 1.2486898871648549, "t": 0.46 }, { "sin": 1.1873813145857246, "t": 0.47000000000000003 }, { "sin": 1.1253332335643045, "t": 0.48 }, { "sin": 1.0627905195293135, "t": 0.49 }, { "sin": 1.0000000000000002, "t": 0.5 }, { "sin": 0.9372094804706866, "t": 0.51 }, { "sin": 0.8746667664356957, "t": 0.52 }, { "sin": 0.8126186854142752, "t": 0.53 }, { "sin": 0.7513101128351449, "t": 0.54 }, { "sin": 0.6909830056250523, "t": 0.55 }, { "sin": 0.6318754473153216, "t": 0.56 }, { "sin": 0.5742207084349273, "t": 0.5700000000000001 }, { "sin": 0.518246325898285, "t": 0.58 }, { "sin": 0.46417320502100357, "t": 0.59 }, { "sin": 0.412214747707527, "t": 0.6 }, { "sin": 0.36257601025131037, "t": 0.61 }, { "sin": 0.3154528940713113, "t": 0.62 }, { "sin": 0.27103137257858867, "t": 0.63 }, { "sin": 0.22948675722421064, "t": 0.64 }, { "sin": 0.19098300562505266, "t": 0.65 }, { "sin": 0.1556720744979847, "t": 0.66 }, { "sin": 0.12369331995613642, "t": 0.67 }, { "sin": 0.0951729475339802, "t": 0.68 }, { "sin": 0.07022351411174854, "t": 0.6900000000000001 }, { "sin": 0.04894348370484647, "t": 0.7000000000000001 }, { "sin": 0.031416838871369035, "t": 0.71 }, { "sin": 0.01771274927131128, "t": 0.72 }, { "sin": 0.007885298685522235, "t": 0.73 }, { "sin": 0.001973271571728441, "t": 0.74 }, { "sin": 0, "t": 0.75 }, { "sin": 0.001973271571728441, "t": 0.76 }, { "sin": 0.007885298685522124, "t": 0.77 }, { "sin": 0.01771274927131128, "t": 0.78 }, { "sin": 0.031416838871368924, "t": 0.79 }, { "sin": 0.04894348370484636, "t": 0.8 }, { "sin": 0.07022351411174876, "t": 0.81 }, { "sin": 0.09517294753398042, "t": 0.8200000000000001 }, { "sin": 0.12369331995613664, "t": 0.8300000000000001 }, { "sin": 0.15567207449798448, "t": 0.84 }, { "sin": 0.19098300562505244, "t": 0.85 }, { "sin": 0.2294867572242104, "t": 0.86 }, { "sin": 0.27103137257858845, "t": 0.87 }, { "sin": 0.31545289407131105, "t": 0.88 }, { "sin": 0.36257601025131037, "t": 0.89 }, { "sin": 0.41221474770752675, "t": 0.9 }, { "sin": 0.4641732050210037, "t": 0.91 }, { "sin": 0.5182463258982847, "t": 0.92 }, { "sin": 0.5742207084349278, "t": 0.93 }, { "sin": 0.6318754473153222, "t": 0.9400000000000001 }, { "sin": 0.6909830056250523, "t": 0.9500000000000001 }, { "sin": 0.7513101128351447, "t": 0.96 }, { "sin": 0.8126186854142753, "t": 0.97 }, { "sin": 0.8746667664356953, "t": 0.98 }, { "sin": 0.9372094804706868, "t": 0.99 }, { "sin": 0.9999999999999998, "t": 1 }, { "sin": 1.0627905195293128, "t": 1.01 }, { "sin": 1.1253332335643043, "t": 1.02 }, { "sin": 1.1873813145857242, "t": 1.03 }, { "sin": 1.2486898871648549, "t": 1.04 }, { "sin": 1.3090169943749472, "t": 1.05 }, { "sin": 1.3681245526846784, "t": 1.06 }, { "sin": 1.4257792915650727, "t": 1.07 }, { "sin": 1.4817536741017157, "t": 1.08 }, { "sin": 1.5358267949789965, "t": 1.09 }, { "sin": 1.5877852522924738, "t": 1.1 }, { "sin": 1.63742398974869, "t": 1.11 }, { "sin": 1.6845471059286892, "t": 1.12 }, { "sin": 1.7289686274214118, "t": 1.1300000000000001 }, { "sin": 1.7705132427757893, "t": 1.1400000000000001 }, { "sin": 1.809016994374948, "t": 1.1500000000000001 }, { "sin": 1.8443279255020149, "t": 1.16 }, { "sin": 1.876306680043863, "t": 1.17 }, { "sin": 1.9048270524660194, "t": 1.18 }, { "sin": 1.9297764858882511, "t": 1.19 }, { "sin": 1.9510565162951534, "t": 1.2 }, { "sin": 1.968583161128631, "t": 1.21 }, { "sin": 1.9822872507286886, "t": 1.22 }, { "sin": 1.9921147013144778, "t": 1.23 }, { "sin": 1.9980267284282716, "t": 1.24 }, { "sin": 2, "t": 1.25 }, { "sin": 1.9980267284282716, "t": 1.26 }, { "sin": 1.992114701314478, "t": 1.27 }, { "sin": 1.9822872507286886, "t": 1.28 }, { "sin": 1.968583161128631, "t": 1.29 }, { "sin": 1.9510565162951536, "t": 1.3 }, { "sin": 1.9297764858882518, "t": 1.31 }, { "sin": 1.9048270524660191, "t": 1.32 }, { "sin": 1.8763066800438635, "t": 1.33 }, { "sin": 1.844327925502015, "t": 1.34 }, { "sin": 1.8090169943749477, "t": 1.35 }, { "sin": 1.7705132427757886, "t": 1.36 }, { "sin": 1.7289686274214109, "t": 1.37 }, { "sin": 1.6845471059286883, "t": 1.3800000000000001 }, { "sin": 1.6374239897486897, "t": 1.3900000000000001 }, { "sin": 1.5877852522924734, "t": 1.4000000000000001 }, { "sin": 1.5358267949789972, "t": 1.41 }, { "sin": 1.481753674101716, "t": 1.42 }, { "sin": 1.425779291565074, "t": 1.43 }, { "sin": 1.368124552684678, "t": 1.44 }, { "sin": 1.309016994374948, "t": 1.45 }, { "sin": 1.2486898871648555, "t": 1.46 }, { "sin": 1.1873813145857257, "t": 1.47 }, { "sin": 1.1253332335643038, "t": 1.48 }, { "sin": 1.0627905195293135, "t": 1.49 }, { "sin": 1.0000000000000004, "t": 1.5 }, { "sin": 0.9372094804706873, "t": 1.51 }, { "sin": 0.8746667664356969, "t": 1.52 }, { "sin": 0.8126186854142751, "t": 1.53 }, { "sin": 0.7513101128351453, "t": 1.54 }, { "sin": 0.690983005625053, "t": 1.55 }, { "sin": 0.6318754473153227, "t": 1.56 }, { "sin": 0.5742207084349267, "t": 1.57 }, { "sin": 0.5182463258982843, "t": 1.58 }, { "sin": 0.46417320502100334, "t": 1.59 }, { "sin": 0.4122147477075272, "t": 1.6 }, { "sin": 0.3625760102513095, "t": 1.61 }, { "sin": 0.31545289407131083, "t": 1.62 }, { "sin": 0.2710313725785882, "t": 1.6300000000000001 }, { "sin": 0.22948675722421086, "t": 1.6400000000000001 }, { "sin": 0.19098300562505277, "t": 1.6500000000000001 }, { "sin": 0.15567207449798437, "t": 1.6600000000000001 }, { "sin": 0.12369331995613697, "t": 1.67 }, { "sin": 0.09517294753398109, "t": 1.68 }, { "sin": 0.07022351411174865, "t": 1.69 }, { "sin": 0.04894348370484658, "t": 1.7 }, { "sin": 0.031416838871369035, "t": 1.71 }, { "sin": 0.0177127492713115, "t": 1.72 }, { "sin": 0.007885298685522124, "t": 1.73 }, { "sin": 0.001973271571728441, "t": 1.74 }, { "sin": 0, "t": 1.75 }, { "sin": 0.001973271571728441, "t": 1.76 }, { "sin": 0.007885298685522013, "t": 1.77 }, { "sin": 0.01771274927131139, "t": 1.78 }, { "sin": 0.03141683887136881, "t": 1.79 }, { "sin": 0.04894348370484625, "t": 1.8 }, { "sin": 0.07022351411174832, "t": 1.81 }, { "sin": 0.09517294753398076, "t": 1.82 }, { "sin": 0.12369331995613653, "t": 1.83 }, { "sin": 0.1556720744979848, "t": 1.84 }, { "sin": 0.19098300562505233, "t": 1.85 }, { "sin": 0.2294867572242114, "t": 1.86 }, { "sin": 0.2710313725785889, "t": 1.87 }, { "sin": 0.3154528940713115, "t": 1.8800000000000001 }, { "sin": 0.36257601025131025, "t": 1.8900000000000001 }, { "sin": 0.41221474770752653, "t": 1.9000000000000001 }, { "sin": 0.46417320502100423, "t": 1.9100000000000001 }, { "sin": 0.5182463258982837, "t": 1.92 }, { "sin": 0.574220708434926, "t": 1.93 }, { "sin": 0.6318754473153219, "t": 1.94 }, { "sin": 0.6909830056250521, "t": 1.95 }, { "sin": 0.7513101128351444, "t": 1.96 }, { "sin": 0.8126186854142742, "t": 1.97 }, { "sin": 0.874666766435696, "t": 1.98 }, { "sin": 0.9372094804706865, "t": 1.99 } ] }, "encoding": { "tooltip": [ { "field": "sin", "type": "quantitative" }, { "field": "t", "type": "quantitative" } ], "x": { "field": "t", "type": "quantitative" }, "y": { "field": "sin", "type": "quantitative" } }, "mark": "line", "selection": { "selector002": { "bind": "scales", "encodings": [ "x", "y" ], "mark": { "fill": "#333", "fillOpacity": 0.125, "stroke": "white" }, "on": "[mousedown, window:mouseup] > window:mousemove!", "resolve": "global", "translate": "[mousedown, window:mouseup] > window:mousemove!", "type": "interval", "zoom": "wheel!" } } }, "image/png": "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", "text/plain": [ "\n", "\n", "If you see this message, it means the renderer has not been properly enabled\n", "for the frontend that you are using. For more information, see\n", "https://altair-viz.github.io/user_guide/troubleshooting.html\n" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# https://altair-viz.github.io/\n", "import altair as alt\n", "\n", "df = pd.DataFrame(list(zip(s, t)), columns=['sin', 't'])\n", "alt.Chart(df).mark_line().encode(\n", " y='sin',\n", " x='t',\n", " tooltip=['sin', 't']\n", ").interactive()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "linkText": "Export to plot.ly", "plotlyServerURL": "https://plot.ly", "showLink": false }, "data": [ { "type": "scatter", "uid": "4b2f7267-4f42-4b9f-ac12-da65b47c4e28", "x": [ 0, 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.1, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19, 0.2, 0.21, 0.22, 0.23, 0.24, 0.25, 0.26, 0.27, 0.28, 0.29, 0.3, 0.31, 0.32, 0.33, 0.34, 0.35000000000000003, 0.36, 0.37, 0.38, 0.39, 0.4, 0.41000000000000003, 0.42, 0.43, 0.44, 0.45, 0.46, 0.47000000000000003, 0.48, 0.49, 0.5, 0.51, 0.52, 0.53, 0.54, 0.55, 0.56, 0.5700000000000001, 0.58, 0.59, 0.6, 0.61, 0.62, 0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.6900000000000001, 0.7000000000000001, 0.71, 0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, 0.8, 0.81, 0.8200000000000001, 0.8300000000000001, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.9, 0.91, 0.92, 0.93, 0.9400000000000001, 0.9500000000000001, 0.96, 0.97, 0.98, 0.99, 1, 1.01, 1.02, 1.03, 1.04, 1.05, 1.06, 1.07, 1.08, 1.09, 1.1, 1.11, 1.12, 1.1300000000000001, 1.1400000000000001, 1.1500000000000001, 1.16, 1.17, 1.18, 1.19, 1.2, 1.21, 1.22, 1.23, 1.24, 1.25, 1.26, 1.27, 1.28, 1.29, 1.3, 1.31, 1.32, 1.33, 1.34, 1.35, 1.36, 1.37, 1.3800000000000001, 1.3900000000000001, 1.4000000000000001, 1.41, 1.42, 1.43, 1.44, 1.45, 1.46, 1.47, 1.48, 1.49, 1.5, 1.51, 1.52, 1.53, 1.54, 1.55, 1.56, 1.57, 1.58, 1.59, 1.6, 1.61, 1.62, 1.6300000000000001, 1.6400000000000001, 1.6500000000000001, 1.6600000000000001, 1.67, 1.68, 1.69, 1.7, 1.71, 1.72, 1.73, 1.74, 1.75, 1.76, 1.77, 1.78, 1.79, 1.8, 1.81, 1.82, 1.83, 1.84, 1.85, 1.86, 1.87, 1.8800000000000001, 1.8900000000000001, 1.9000000000000001, 1.9100000000000001, 1.92, 1.93, 1.94, 1.95, 1.96, 1.97, 1.98, 1.99 ], "y": [ 1, 1.0627905195293135, 1.1253332335643043, 1.1873813145857246, 1.2486898871648549, 1.3090169943749475, 1.368124552684678, 1.4257792915650727, 1.4817536741017152, 1.5358267949789965, 1.5877852522924731, 1.6374239897486897, 1.6845471059286887, 1.7289686274214116, 1.7705132427757893, 1.8090169943749475, 1.844327925502015, 1.8763066800438637, 1.9048270524660196, 1.9297764858882513, 1.9510565162951536, 1.968583161128631, 1.9822872507286886, 1.992114701314478, 1.9980267284282716, 2, 1.9980267284282716, 1.9921147013144778, 1.9822872507286886, 1.968583161128631, 1.9510565162951536, 1.9297764858882513, 1.9048270524660196, 1.8763066800438635, 1.8443279255020149, 1.8090169943749475, 1.7705132427757893, 1.7289686274214116, 1.6845471059286887, 1.6374239897486897, 1.5877852522924734, 1.5358267949789965, 1.4817536741017157, 1.4257792915650729, 1.3681245526846781, 1.3090169943749475, 1.2486898871648549, 1.1873813145857246, 1.1253332335643045, 1.0627905195293135, 1.0000000000000002, 0.9372094804706866, 0.8746667664356957, 0.8126186854142752, 0.7513101128351449, 0.6909830056250523, 0.6318754473153216, 0.5742207084349273, 0.518246325898285, 0.46417320502100357, 0.412214747707527, 0.36257601025131037, 0.3154528940713113, 0.27103137257858867, 0.22948675722421064, 0.19098300562505266, 0.1556720744979847, 0.12369331995613642, 0.0951729475339802, 0.07022351411174854, 0.04894348370484647, 0.031416838871369035, 0.01771274927131128, 0.007885298685522235, 0.001973271571728441, 0, 0.001973271571728441, 0.007885298685522124, 0.01771274927131128, 0.031416838871368924, 0.04894348370484636, 0.07022351411174876, 0.09517294753398042, 0.12369331995613664, 0.15567207449798448, 0.19098300562505244, 0.2294867572242104, 0.27103137257858845, 0.31545289407131105, 0.36257601025131037, 0.41221474770752675, 0.4641732050210037, 0.5182463258982847, 0.5742207084349278, 0.6318754473153222, 0.6909830056250523, 0.7513101128351447, 0.8126186854142753, 0.8746667664356953, 0.9372094804706868, 0.9999999999999998, 1.0627905195293128, 1.1253332335643043, 1.1873813145857242, 1.2486898871648549, 1.3090169943749472, 1.3681245526846784, 1.4257792915650727, 1.4817536741017157, 1.5358267949789965, 1.5877852522924738, 1.63742398974869, 1.6845471059286892, 1.7289686274214118, 1.7705132427757893, 1.809016994374948, 1.8443279255020149, 1.876306680043863, 1.9048270524660194, 1.9297764858882511, 1.9510565162951534, 1.968583161128631, 1.9822872507286886, 1.9921147013144778, 1.9980267284282716, 2, 1.9980267284282716, 1.992114701314478, 1.9822872507286886, 1.968583161128631, 1.9510565162951536, 1.9297764858882518, 1.9048270524660191, 1.8763066800438635, 1.844327925502015, 1.8090169943749477, 1.7705132427757886, 1.7289686274214109, 1.6845471059286883, 1.6374239897486897, 1.5877852522924734, 1.5358267949789972, 1.481753674101716, 1.425779291565074, 1.368124552684678, 1.309016994374948, 1.2486898871648555, 1.1873813145857257, 1.1253332335643038, 1.0627905195293135, 1.0000000000000004, 0.9372094804706873, 0.8746667664356969, 0.8126186854142751, 0.7513101128351453, 0.690983005625053, 0.6318754473153227, 0.5742207084349267, 0.5182463258982843, 0.46417320502100334, 0.4122147477075272, 0.3625760102513095, 0.31545289407131083, 0.2710313725785882, 0.22948675722421086, 0.19098300562505277, 0.15567207449798437, 0.12369331995613697, 0.09517294753398109, 0.07022351411174865, 0.04894348370484658, 0.031416838871369035, 0.0177127492713115, 0.007885298685522124, 0.001973271571728441, 0, 0.001973271571728441, 0.007885298685522013, 0.01771274927131139, 0.03141683887136881, 0.04894348370484625, 0.07022351411174832, 0.09517294753398076, 0.12369331995613653, 0.1556720744979848, 0.19098300562505233, 0.2294867572242114, 0.2710313725785889, 0.3154528940713115, 0.36257601025131025, 0.41221474770752653, 0.46417320502100423, 0.5182463258982837, 0.574220708434926, 0.6318754473153219, 0.6909830056250521, 0.7513101128351444, 0.8126186854142742, 0.874666766435696, 0.9372094804706865 ] } ], "layout": { "autosize": true, "xaxis": { "autorange": true, "range": [ 0, 1.99 ], "type": "linear" }, "yaxis": { "autorange": true, "range": [ -0.11111111111111112, 2.111111111111111 ], "type": "linear" } } }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAoEAAAHCCAYAAACQdxPnAAAgAElEQVR4XuydB3gVxdv2bwgJHQKh995r6IROKH9QkCbVgAVEBVEBUVBAioCIKIIoRTrSpClKC6GFQOi99957DUnea9b3aMRAzjmzu2fn7L3X9V3/7/vcmX3m90zILzuzzySKjY2NBS8SIAESIAESIAESIAFbEUhECbRVvjlYEiABEiABEiABEtAIUAI5EUiABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iABEiABEiABEjAhgQogTZMOodMAiRAAiRAAiRAApRAzgESIAESIAESIAESsCEBSqANk84hkwAJkAAJkAAJkAAlkHOABEiABEiABEiABGxIgBJow6RzyCRAAiRAAiRAAiRACeQcIAESIAESIAESIAEbEqAE2jDpHDIJkAAJkAAJkAAJUAI5B0iA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" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import plotly\n", "\n", "data = [go.Scatter(x=t, y=s)]\n", "plotly.offline.iplot(data)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.7.0" } }, "nbformat": 4, "nbformat_minor": 2 }