{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Bootstrap utilities\n", "\n", "
" ] }, { "cell_type": "code", "execution_count": 30, "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", " toinsert[toinsert.length - 1].firstChild.textContent = bk_div.children[0].textContent\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(\"5021\");\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) {\n", " if (callback != null)\n", " callback();\n", " });\n", " } finally {\n", " delete root._bokeh_onload_callbacks\n", " }\n", " console.debug(\"Bokeh: all callbacks have finished\");\n", " }\n", "\n", " function load_libs(css_urls, js_urls, callback) {\n", " if (css_urls == null) css_urls = [];\n", " if (js_urls == null) js_urls = [];\n", "\n", " root._bokeh_onload_callbacks.push(callback);\n", " if (root._bokeh_is_loading > 0) {\n", " console.debug(\"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.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n", " root._bokeh_is_loading = css_urls.length + js_urls.length;\n", "\n", " function on_load() {\n", " root._bokeh_is_loading--;\n", " if (root._bokeh_is_loading === 0) {\n", " console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n", " run_callbacks()\n", " }\n", " }\n", "\n", " function on_error() {\n", " console.error(\"failed to load \" + url);\n", " }\n", "\n", " for (var i = 0; i < css_urls.length; i++) {\n", " var url = css_urls[i];\n", " const element = document.createElement(\"link\");\n", " element.onload = on_load;\n", " element.onerror = on_error;\n", " element.rel = \"stylesheet\";\n", " element.type = \"text/css\";\n", " element.href = url;\n", " console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n", " document.body.appendChild(element);\n", " }\n", "\n", " const hashes = {\"https://cdn.bokeh.org/bokeh/release/bokeh-2.0.2.min.js\": \"ufR9RFnRs6lniiaFvtJziE0YeidtAgBRH6ux2oUItHw5WTvE1zuk9uzhUU/FJXDp\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.0.2.min.js\": \"8QM/PGWBT+IssZuRcDcjzwIh1mkOmJSoNMmyYDZbCfXJg3Ap1lEvdVgFuSAwhb/J\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.0.2.min.js\": \"Jm8cH3Rg0P6UeZhVY5cLy1WzKajUT9KImCY+76hEqrcJt59/d8GPvFHjCkYgnSIn\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.0.2.min.js\": \"Ozhzj+SI7ywm74aOI/UajcWz+C0NjsPunEVyVIrxzYkB+jA+2tUw8x5xJCbVtK5I\"};\n", "\n", " for (var i = 0; i < js_urls.length; i++) {\n", " var url = js_urls[i];\n", " var element = document.createElement('script');\n", " element.onload = on_load;\n", " element.onerror = on_error;\n", " element.async = false;\n", " element.src = url;\n", " if (url in hashes) {\n", " element.crossOrigin = \"anonymous\";\n", " element.integrity = \"sha384-\" + hashes[url];\n", " }\n", " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n", " document.head.appendChild(element);\n", " }\n", " };\n", "\n", " function inject_raw_css(css) {\n", " const element = document.createElement(\"style\");\n", " element.appendChild(document.createTextNode(css));\n", " document.body.appendChild(element);\n", " }\n", "\n", " \n", " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.0.2.min.js\", \"https://unpkg.com/@holoviz/panel@^0.9.5/dist/panel.min.js\"];\n", " var css_urls = [];\n", " \n", "\n", " var inline_js = [\n", " function(Bokeh) {\n", " inject_raw_css(\".widget-box {\\n\\tmin-height: 20px;\\n\\tbackground-color: #f5f5f5;\\n\\tborder: 1px solid #e3e3e3 !important;\\n\\tborder-radius: 4px;\\n\\t-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\tbox-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\toverflow-x: hidden;\\n\\toverflow-y: hidden;\\n}\\n\\n.scrollable {\\n overflow: scroll;\\n}\\n\\nprogress {\\n\\tappearance: none;\\n\\t-moz-appearance: none;\\n\\t-webkit-appearance: none;\\n\\n\\tborder: none;\\n\\theight: 20px;\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n\\tcolor: royalblue;\\n\\tposition: relative;\\n\\tmargin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n\\tposition: relative;\\n\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n\\tborder-radius:3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n\\tcontent:\\\" \\\";\\n\\tposition:absolute;\\n\\theight: 20px;\\n\\ttop:0;\\n\\tleft:0;\\n\\tright:0;\\n\\tbottom:0;\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n from {background-position: 0%}\\n to {background-position: 100%}\\n}\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\"table.panel-df {\\n margin-left: auto;\\n margin-right: auto;\\n border: none;\\n border-collapse: collapse;\\n border-spacing: 0;\\n color: black;\\n font-size: 12px;\\n table-layout: fixed;\\n width: 100%;\\n}\\n\\n.panel-df tr, th, td {\\n text-align: right;\\n vertical-align: middle;\\n padding: 0.5em 0.5em !important;\\n line-height: normal;\\n white-space: normal;\\n max-width: none;\\n border: none;\\n}\\n\\n.panel-df tbody {\\n display: table-row-group;\\n vertical-align: middle;\\n border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n border-bottom: 1px solid black;\\n vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n background: lightblue !important;\\n cursor: pointer;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " Bokeh.set_log_level(\"info\");\n", " },\n", " function(Bokeh) {\n", " \n", " \n", " }\n", " ];\n", "\n", " function run_inline_js() {\n", " \n", " if (root.Bokeh !== undefined || force === true) {\n", " \n", " for (var i = 0; i < inline_js.length; i++) {\n", " inline_js[i].call(root, root.Bokeh);\n", " }\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(\"5021\")).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.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n", " run_inline_js();\n", " } else {\n", " load_libs(css_urls, js_urls, function() {\n", " console.debug(\"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(\"5021\");\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) {\n if (callback != null)\n callback();\n });\n } finally {\n delete root._bokeh_onload_callbacks\n }\n console.debug(\"Bokeh: all callbacks have finished\");\n }\n\n function load_libs(css_urls, js_urls, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n\n root._bokeh_onload_callbacks.push(callback);\n if (root._bokeh_is_loading > 0) {\n console.debug(\"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.debug(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n root._bokeh_is_loading = css_urls.length + js_urls.length;\n\n function on_load() {\n root._bokeh_is_loading--;\n if (root._bokeh_is_loading === 0) {\n console.debug(\"Bokeh: all BokehJS libraries/stylesheets loaded\");\n run_callbacks()\n }\n }\n\n function on_error() {\n console.error(\"failed to load \" + url);\n }\n\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\n element.rel = \"stylesheet\";\n element.type = \"text/css\";\n element.href = url;\n console.debug(\"Bokeh: injecting link tag for BokehJS stylesheet: \", url);\n document.body.appendChild(element);\n }\n\n const hashes = {\"https://cdn.bokeh.org/bokeh/release/bokeh-2.0.2.min.js\": \"ufR9RFnRs6lniiaFvtJziE0YeidtAgBRH6ux2oUItHw5WTvE1zuk9uzhUU/FJXDp\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.0.2.min.js\": \"8QM/PGWBT+IssZuRcDcjzwIh1mkOmJSoNMmyYDZbCfXJg3Ap1lEvdVgFuSAwhb/J\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.0.2.min.js\": \"Jm8cH3Rg0P6UeZhVY5cLy1WzKajUT9KImCY+76hEqrcJt59/d8GPvFHjCkYgnSIn\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.0.2.min.js\": \"Ozhzj+SI7ywm74aOI/UajcWz+C0NjsPunEVyVIrxzYkB+jA+2tUw8x5xJCbVtK5I\"};\n\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n if (url in hashes) {\n element.crossOrigin = \"anonymous\";\n element.integrity = \"sha384-\" + hashes[url];\n }\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n };\n\n function inject_raw_css(css) {\n const element = document.createElement(\"style\");\n element.appendChild(document.createTextNode(css));\n document.body.appendChild(element);\n }\n\n \n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.0.2.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.0.2.min.js\", \"https://unpkg.com/@holoviz/panel@^0.9.5/dist/panel.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\n function(Bokeh) {\n inject_raw_css(\".widget-box {\\n\\tmin-height: 20px;\\n\\tbackground-color: #f5f5f5;\\n\\tborder: 1px solid #e3e3e3 !important;\\n\\tborder-radius: 4px;\\n\\t-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\tbox-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n\\toverflow-x: hidden;\\n\\toverflow-y: hidden;\\n}\\n\\n.scrollable {\\n overflow: scroll;\\n}\\n\\nprogress {\\n\\tappearance: none;\\n\\t-moz-appearance: none;\\n\\t-webkit-appearance: none;\\n\\n\\tborder: none;\\n\\theight: 20px;\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n\\tcolor: royalblue;\\n\\tposition: relative;\\n\\tmargin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n\\tbackground-color: whiteSmoke;\\n\\tborder-radius: 3px;\\n\\tbox-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n\\tposition: relative;\\n\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n\\tbackground-size: 35px 20px, 100% 100%, 100% 100%;\\n\\tborder-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n\\tborder-radius:3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n\\tbackground-position: 10%;\\n\\tanimation-name: stripes;\\n\\tanimation-duration: 3s;\\n\\tanimation-timing-function: linear;\\n\\tanimation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n\\tcontent:\\\" \\\";\\n\\tposition:absolute;\\n\\theight: 20px;\\n\\ttop:0;\\n\\tleft:0;\\n\\tright:0;\\n\\tbottom:0;\\n\\tborder-radius: 3px;\\n\\tbackground:\\n\\tlinear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n from {background-position: 0%}\\n to {background-position: 100%}\\n}\");\n },\n function(Bokeh) {\n inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\".json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\"table.panel-df {\\n margin-left: auto;\\n margin-right: auto;\\n border: none;\\n border-collapse: collapse;\\n border-spacing: 0;\\n color: black;\\n font-size: 12px;\\n table-layout: fixed;\\n width: 100%;\\n}\\n\\n.panel-df tr, th, td {\\n text-align: right;\\n vertical-align: middle;\\n padding: 0.5em 0.5em !important;\\n line-height: normal;\\n white-space: normal;\\n max-width: none;\\n border: none;\\n}\\n\\n.panel-df tbody {\\n display: table-row-group;\\n vertical-align: middle;\\n border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n border-bottom: 1px solid black;\\n vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n background: lightblue !important;\\n cursor: pointer;\\n}\\n\");\n },\n function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\n function(Bokeh) {\n \n \n }\n ];\n\n function run_inline_js() {\n \n if (root.Bokeh !== undefined || force === true) {\n \n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\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(\"5021\")).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.debug(\"Bokeh: BokehJS loaded, going straight to plotting\");\n run_inline_js();\n } else {\n load_libs(css_urls, js_urls, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));" }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import pandas as pd\n", "df = pd.read_csv('sample_data.csv')\n", "\n", "import bebi103\n", "\n", "import bokeh.io\n", "bokeh.io.output_notebook()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "The bebi103 package contains utilities for nonparametric bootstrap calculations. These fall into three categories.\n", "\n", "1. Bootstrap replicates of a single scalar statistic from a one-dimensional data set.\n", "2. Pairs bootstrap replicates of a single scalar statistic.\n", "3. Permutation replicates drawn from two one-dimensional data sets.\n", "\n", "Additionally, it contains `draw_bs_reps_mle()`, which is used for drawing bootstrap replicates of a maximum likelihood estimator." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Random number generation\n", "\n", "Bootstrap method relies on random number generation. [Numpy's documentation](https://numpy.org/doc/stable/reference/random/index.html) suggests instantiating a `Generator` instance and using that to draw random numbers, for example as\n", "\n", "```python\n", "import numpy as np\n", "\n", "# Instantiate Generator\n", "rg = np.random.default_rng()\n", "\n", "# Draw Normally distributed random numbers\n", "rg.normal(loc=2.5, scale=1.0, size=100)\n", "```\n", "\n", "By default, `np.random.default_rng()` gives a PCG-64 random number generator.\n", "\n", "In legacy uses of Numpy, random numbers were drawn using the Mersenne Twister algorithm. This functionality is still available, as\n", "\n", "```python\n", "import numpy as np\n", "\n", "# Draw Normally distributed random numbers\n", "np.random.normal(loc=2.5, scale=1.0, size=100)\n", "```\n", "\n", "Numba currently (v. 0.50) has support for the legacy Numpy implementation using the Mersenne Twister algorithm. Because much of the functions using random number generation in the bebi103 package use Numba to get speed boosts by just-in-time compilation, all functions in the `bebi103.bootstrap` module except `bebi103.bootstrap.draw_bs_reps_mle()` all use the legacy Numpy random number generation. The MLE bootstrap function does not because it allows for parallel computation, and seeding the RNG would result in all threads giving the same values." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Seeding the RNG\n", "\n", "For testing, debugging, and pedagogical reproducibility purposes, it is sometimes valuable to seed the random number generator. To do so, you need to seed the random number generator *both* in vanilla Numpy and with a Numba'd function. This is accomplished using the `bebi103.bootstrap.seed_rng()` function." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "bebi103.bootstrap.seed_rng(3252)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The results of `bebi103.bootstrap.draw_bs_reps_mle()` are unaffected by this seeding." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Nonparametric resampling methods\n", "\n", "We begin with the available nonparametric bootstrap and permutation methods." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Boostrap replicates from one-dimensional data\n", "\n", "A bootstrap replicate is obtained by resampling a data set with replacement and then computing the prescribed summary statistic. The summary statistic need not be scalar, scalar summary statistics are a common use case. Drawing the bootstrap replicates from a set of scalar measurements is achieved using the `bebi103.bootstrap.draw_bs_reps()` function. It takes two positional arguments.\n", "\n", "1. The data set to resample.\n", "2. The function used to compute the summary statistic.\n", "\n", "Additionally, it takes two keyword arguments.\n", "\n", "1. `size`, the number of bootstrap replicates to generate.\n", "2. `args`, a tuple containing any other parameters that need to be passed into the function used to compute the summary statistic.\n", "\n", "Below, I draw 10,000 replicates of the median." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "bs_reps = bebi103.bootstrap.draw_bs_reps(df['x'], np.median, size=10000)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To compute confidence intervals from the replicates, we take percentiles. For example, to compute a 95% confidence interval, we compute the 2.5th and 97.5th percentiles." ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "conf_int = np.percentile(bs_reps, [2.5, 97.5])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We just computed the confidence interval for the *x* values of the data set ignoring the trials. We can automate this process to compute confidence intervals for each of the three trials, storing them in a list of dictionaries along with the trial numbers and point estimates of the median." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [], "source": [ "summaries = []\n", "\n", "for label, group in df.groupby(\"trial\"):\n", " label = str(label)\n", " estimate = np.median(group[\"x\"])\n", " \n", " bs_reps = bebi103.bootstrap.draw_bs_reps(group[\"x\"], np.median, size=10000)\n", " conf_int = np.percentile(bs_reps, [2.5, 97.5])\n", " \n", " summaries.append(dict(label=label, estimate=estimate, conf_int=conf_int))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To make sure we understand the entries in `summaries`, a list of dictionaries, let's take a look." ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[{'label': '1',\n", " 'estimate': 3.5801108355411304,\n", " 'conf_int': array([2.51454132, 4.30516588])},\n", " {'label': '2',\n", " 'estimate': 2.0008366741479433,\n", " 'conf_int': array([1.40245352, 3.65771395])},\n", " {'label': '3',\n", " 'estimate': 1.0906343409350114,\n", " 'conf_int': array([0.43744037, 2.90887073])}]" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "summaries" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When the summary statistics are stored in this format, we can use the `bebi103.viz.confints()` function to make a plot." ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "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 = {\"b56cb3eb-201c-4fad-a01f-60845e3a9355\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"5031\"}],\"center\":[{\"id\":\"5034\"},{\"id\":\"5037\"}],\"frame_height\":150,\"frame_width\":450,\"left\":[{\"id\":\"5035\"}],\"renderers\":[{\"id\":\"5055\"},{\"id\":\"5060\"},{\"id\":\"5065\"},{\"id\":\"5070\"},{\"id\":\"5075\"},{\"id\":\"5080\"}],\"title\":{\"id\":\"5337\"},\"toolbar\":{\"id\":\"5045\"},\"toolbar_location\":\"above\",\"x_range\":{\"id\":\"5023\"},\"x_scale\":{\"id\":\"5027\"},\"y_range\":{\"id\":\"5025\"},\"y_scale\":{\"id\":\"5029\"}},\"id\":\"5022\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"source\":{\"id\":\"5057\"}},\"id\":\"5061\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"x\":[3.5801108355411304],\"y\":[\"1\"]},\"selected\":{\"id\":\"5343\"},\"selection_policy\":{\"id\":\"5344\"}},\"id\":\"5052\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"5044\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5059\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5340\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data\":{\"x\":[1.0906343409350114],\"y\":[\"3\"]},\"selected\":{\"id\":\"5351\"},\"selection_policy\":{\"id\":\"5352\"}},\"id\":\"5072\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"5077\"},\"glyph\":{\"id\":\"5078\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5079\"},\"selection_glyph\":null,\"view\":{\"id\":\"5081\"}},\"id\":\"5080\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"5347\",\"type\":\"Selection\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5063\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"5042\",\"type\":\"ResetTool\"},{\"attributes\":{\"source\":{\"id\":\"5062\"}},\"id\":\"5066\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5348\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5073\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"5041\",\"type\":\"SaveTool\"},{\"attributes\":{\"data\":{\"x\":[2.0008366741479433],\"y\":[\"2\"]},\"selected\":{\"id\":\"5347\"},\"selection_policy\":{\"id\":\"5348\"}},\"id\":\"5062\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"factors\":[\"3\",\"2\",\"1\"]},\"id\":\"5025\",\"type\":\"FactorRange\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"yevkGXNw9j/OyPyH/0INQA==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"2\",\"2\"]},\"selected\":{\"id\":\"5349\"},\"selection_policy\":{\"id\":\"5350\"}},\"id\":\"5067\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5068\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"5062\"},\"glyph\":{\"id\":\"5063\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5064\"},\"selection_glyph\":null,\"view\":{\"id\":\"5066\"}},\"id\":\"5065\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"5023\",\"type\":\"DataRange1d\"},{\"attributes\":{\"data_source\":{\"id\":\"5067\"},\"glyph\":{\"id\":\"5068\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5069\"},\"selection_glyph\":null,\"view\":{\"id\":\"5071\"}},\"id\":\"5070\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis_label\":\"x\",\"formatter\":{\"id\":\"5340\"},\"ticker\":{\"id\":\"5032\"}},\"id\":\"5031\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"5027\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5053\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5074\",\"type\":\"Circle\"},{\"attributes\":{\"axis\":{\"id\":\"5035\"},\"dimension\":1,\"ticker\":null},\"id\":\"5037\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"5032\",\"type\":\"BasicTicker\"},{\"attributes\":{\"source\":{\"id\":\"5067\"}},\"id\":\"5071\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5349\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"5044\"}},\"id\":\"5040\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5069\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5350\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"ZuIc4QX/2z+0ss4EXkUHQA==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"3\",\"3\"]},\"selected\":{\"id\":\"5353\"},\"selection_policy\":{\"id\":\"5354\"}},\"id\":\"5077\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5078\",\"type\":\"Line\"},{\"attributes\":{\"axis_label\":\"trial\",\"formatter\":{\"id\":\"5338\"},\"ticker\":{\"id\":\"5036\"}},\"id\":\"5035\",\"type\":\"CategoricalAxis\"},{\"attributes\":{\"source\":{\"id\":\"5072\"}},\"id\":\"5076\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"5057\"},\"glyph\":{\"id\":\"5058\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5059\"},\"selection_glyph\":null,\"view\":{\"id\":\"5061\"}},\"id\":\"5060\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"text\":\"\"},\"id\":\"5337\",\"type\":\"Title\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5064\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"5077\"}},\"id\":\"5081\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5343\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"5344\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5079\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5351\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"5352\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"5338\",\"type\":\"CategoricalTickFormatter\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5054\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"5038\",\"type\":\"PanTool\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"hHf01scdBEAONmpnfTgRQA==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"1\",\"1\"]},\"selected\":{\"id\":\"5345\"},\"selection_policy\":{\"id\":\"5346\"}},\"id\":\"5057\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"5043\",\"type\":\"HelpTool\"},{\"attributes\":{\"source\":{\"id\":\"5052\"}},\"id\":\"5056\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5036\",\"type\":\"CategoricalTicker\"},{\"attributes\":{},\"id\":\"5345\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"5346\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"axis\":{\"id\":\"5031\"},\"ticker\":null},\"id\":\"5034\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"5353\",\"type\":\"Selection\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"5038\"},{\"id\":\"5039\"},{\"id\":\"5040\"},{\"id\":\"5041\"},{\"id\":\"5042\"},{\"id\":\"5043\"}]},\"id\":\"5045\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"5354\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"5052\"},\"glyph\":{\"id\":\"5053\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5054\"},\"selection_glyph\":null,\"view\":{\"id\":\"5056\"}},\"id\":\"5055\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5058\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5029\",\"type\":\"CategoricalScale\"},{\"attributes\":{\"data_source\":{\"id\":\"5072\"},\"glyph\":{\"id\":\"5073\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5074\"},\"selection_glyph\":null,\"view\":{\"id\":\"5076\"}},\"id\":\"5075\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"5039\",\"type\":\"WheelZoomTool\"}],\"root_ids\":[\"5022\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"b56cb3eb-201c-4fad-a01f-60845e3a9355\",\"root_ids\":[\"5022\"],\"roots\":{\"5022\":\"4ec96d3c-228c-4e8e-b409-e8e70a664330\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "5022" } }, "output_type": "display_data" } ], "source": [ "bokeh.io.show(bebi103.viz.confints(summaries, x_axis_label='x', y_axis_label='trial'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Pairs bootstrap\n", "\n", "We can also perform pairs bootstrap calculations in which pairs of data from two one-dimensional arrays of the same length are drawn. For example, we may with to draw pairs bootstrap replicates of the Pearson correlation coefficient for the $x$ and $y$ data in the data set. Conveniently, the `bebi103.bootstrap.pearson_r()` function computes the correlation coefficient. We use the `bebi103.bootstrap.draw_bs_reps_pairs()` to do the calculation. The API is similar to the univariate case, except now we supply three positional arguments, the *x*-data, the *y*-data, and the function to compute the summary statistic from the two." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "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 = {\"5c307b6c-2cdf-42a2-a409-a194cc6df7cc\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"5478\"}],\"center\":[{\"id\":\"5481\"},{\"id\":\"5484\"}],\"frame_height\":150,\"frame_width\":450,\"left\":[{\"id\":\"5482\"}],\"renderers\":[{\"id\":\"5502\"},{\"id\":\"5507\"},{\"id\":\"5512\"},{\"id\":\"5517\"},{\"id\":\"5522\"},{\"id\":\"5527\"}],\"title\":{\"id\":\"5803\"},\"toolbar\":{\"id\":\"5492\"},\"toolbar_location\":\"above\",\"x_range\":{\"id\":\"5470\"},\"x_scale\":{\"id\":\"5474\"},\"y_range\":{\"id\":\"5472\"},\"y_scale\":{\"id\":\"5476\"}},\"id\":\"5469\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"5479\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"5809\",\"type\":\"Selection\"},{\"attributes\":{\"axis_label\":\"trial\",\"formatter\":{\"id\":\"5804\"},\"ticker\":{\"id\":\"5483\"}},\"id\":\"5482\",\"type\":\"CategoricalAxis\"},{\"attributes\":{},\"id\":\"5810\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"5485\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"5817\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"5818\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"5483\",\"type\":\"CategoricalTicker\"},{\"attributes\":{\"axis_label\":\"\\u03c1\",\"formatter\":{\"id\":\"5806\"},\"ticker\":{\"id\":\"5479\"}},\"id\":\"5478\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data_source\":{\"id\":\"5509\"},\"glyph\":{\"id\":\"5510\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5511\"},\"selection_glyph\":null,\"view\":{\"id\":\"5513\"}},\"id\":\"5512\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"5482\"},\"dimension\":1,\"ticker\":null},\"id\":\"5484\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"5504\"},\"glyph\":{\"id\":\"5505\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5506\"},\"selection_glyph\":null,\"view\":{\"id\":\"5508\"}},\"id\":\"5507\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"5485\"},{\"id\":\"5486\"},{\"id\":\"5487\"},{\"id\":\"5488\"},{\"id\":\"5489\"},{\"id\":\"5490\"}]},\"id\":\"5492\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"5486\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"5476\",\"type\":\"CategoricalScale\"},{\"attributes\":{},\"id\":\"5470\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"5490\",\"type\":\"HelpTool\"},{\"attributes\":{\"factors\":[\"3\",\"2\",\"1\"]},\"id\":\"5472\",\"type\":\"FactorRange\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"fCfsy6srsT/Y82mS7fLmPw==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"3\",\"3\"]},\"selected\":{\"id\":\"5819\"},\"selection_policy\":{\"id\":\"5820\"}},\"id\":\"5524\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"5811\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"5491\"}},\"id\":\"5487\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"5812\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5505\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5819\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"5499\"}},\"id\":\"5503\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5820\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":[0.721188901212684],\"y\":[\"2\"]},\"selected\":{\"id\":\"5813\"},\"selection_policy\":{\"id\":\"5814\"}},\"id\":\"5509\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"5804\",\"type\":\"CategoricalTickFormatter\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5501\",\"type\":\"Circle\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"BNbOLXmYwT/v7VyfvZvqPw==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"1\",\"1\"]},\"selected\":{\"id\":\"5811\"},\"selection_policy\":{\"id\":\"5812\"}},\"id\":\"5504\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"5514\"}},\"id\":\"5518\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"5491\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5520\",\"type\":\"Circle\"},{\"attributes\":{\"data\":{\"x\":[0.57433779027597],\"y\":[\"1\"]},\"selected\":{\"id\":\"5809\"},\"selection_policy\":{\"id\":\"5810\"}},\"id\":\"5499\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5521\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"5806\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5526\",\"type\":\"Line\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5511\",\"type\":\"Circle\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5525\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5813\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5516\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5814\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"5519\"}},\"id\":\"5523\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"5504\"}},\"id\":\"5508\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"5499\"},\"glyph\":{\"id\":\"5500\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5501\"},\"selection_glyph\":null,\"view\":{\"id\":\"5503\"}},\"id\":\"5502\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":[0.4387843533464102],\"y\":[\"3\"]},\"selected\":{\"id\":\"5817\"},\"selection_policy\":{\"id\":\"5818\"}},\"id\":\"5519\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5515\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"5509\"}},\"id\":\"5513\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"5519\"},\"glyph\":{\"id\":\"5520\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5521\"},\"selection_glyph\":null,\"view\":{\"id\":\"5523\"}},\"id\":\"5522\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5510\",\"type\":\"Circle\"},{\"attributes\":{\"data_source\":{\"id\":\"5524\"},\"glyph\":{\"id\":\"5525\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5526\"},\"selection_glyph\":null,\"view\":{\"id\":\"5528\"}},\"id\":\"5527\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"5815\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"XQtGm2da4D9NhwdJ9ZTrPw==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":[\"2\",\"2\"]},\"selected\":{\"id\":\"5815\"},\"selection_policy\":{\"id\":\"5816\"}},\"id\":\"5514\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"5816\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"5514\"},\"glyph\":{\"id\":\"5515\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5516\"},\"selection_glyph\":null,\"view\":{\"id\":\"5518\"}},\"id\":\"5517\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"size\":{\"units\":\"screen\",\"value\":5},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5500\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"5524\"}},\"id\":\"5528\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"5488\",\"type\":\"SaveTool\"},{\"attributes\":{\"text\":\"\"},\"id\":\"5803\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"5489\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"5478\"},\"ticker\":null},\"id\":\"5481\",\"type\":\"Grid\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":3,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5506\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"5474\",\"type\":\"LinearScale\"}],\"root_ids\":[\"5469\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"5c307b6c-2cdf-42a2-a409-a194cc6df7cc\",\"root_ids\":[\"5469\"],\"roots\":{\"5469\":\"6c8ebf8a-4e9f-4f74-ab5a-4522c28e360a\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "5469" } }, "output_type": "display_data" } ], "source": [ "summaries = []\n", "\n", "for label, group in df.groupby(\"trial\"):\n", " label = str(label)\n", " estimate = bebi103.bootstrap.pearson_r(group[\"x\"], group[\"y\"])\n", "\n", " bs_reps = bebi103.bootstrap.draw_bs_reps_pairs(\n", " group[\"x\"], group[\"y\"], bebi103.bootstrap.pearson_r, size=10000\n", " )\n", " conf_int = np.percentile(bs_reps, [2.5, 97.5])\n", "\n", " summaries.append(dict(label=label, estimate=estimate, conf_int=conf_int))\n", "\n", "\n", "bokeh.io.show(bebi103.viz.confints(summaries, x_axis_label=\"ρ\", y_axis_label=\"trial\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Permutation replicates\n", "\n", "When testing the hypothesis that two one-dimensional data sets come from identical distribution, we may use a permutation test. If data set *x* has *m* measurements and data set *y* has *n* measurements, a permutation sample is obtained by concatenating the two data sets, randomly scrambling the order of the concatenated data set, and then assigning the first *m* entries in the concatenated/scrambled data set to be \"*x*\" and the remaining *n* entries to be \"*y*.\" A summary statistic is then computed from the permutation sample to get a permutation replicate. This is done over and over again in order to get many permutation replicates to ultimately compute a p-value.\n", "\n", "The `bebi103.bootstrap.draw_perm_reps()` function generates permutation replicates. The API is similar to generating pairs bootstrap with three positional arguments, the *x*-data, the *y*-data, and the function to compute the summary statistic from the two. Here, we demonstrate a permutation test on the values of measurement *x* for trials 1 and 2. We will use the Studentized difference of means as the test statistic, which is conveniently available in the `bebi103.bootstrap.studentized_diff_of_means()` function." ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.0287" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Extract data sets\n", "x1 = df.loc[df[\"trial\"] == 1, \"x\"]\n", "x2 = df.loc[df[\"trial\"] == 2, \"x\"]\n", "\n", "# Compute test statistic from original data\n", "diff_means_studentized = bebi103.bootstrap.studentized_diff_of_means(x1, x2)\n", "\n", "# Draw permutation reps\n", "perm_reps = bebi103.bootstrap.draw_perm_reps(\n", " x1, x2, bebi103.bootstrap.studentized_diff_of_means, size=10000\n", ")\n", "\n", "# Compute p-value\n", "np.sum(perm_reps >= diff_means_studentized) / 10000" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this case, we got *p* = 0.03." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Parametric methods\n", "\n", "In parametric modeling, we have an explicit *generative model* in mind that generated the data. The generative model has a set of parameters, and a central task is to estimate those parameters. The **maximum likelihood estimate** (MLE) of the parameters consists of the parameter values that maximize the [likelihood function](https://en.wikipedia.org/wiki/Likelihood_function).\n", "\n", "The bebi103 package allows for drawing bootstrap replicates of maximum likelihood estimates (MLEs). This is accomplished using the `bebi103.bootstrap.draw_bs_reps_mle()` function. The function does the following.\n", "\n", "1. Compute the MLE of the parameters of the generative model from the measured data.\n", "2. Use the generative model parametrized by the MLE to generate a new data set. This new data set is referred to as a bootstrap sample.\n", "3. Compute the MLE from the bootstrap sample and store it. This value of the MLE from a bootstrap sample is referred to as a bootstrap replicate.\n", "4. Repeat steps 2 and 3 until the desired number of bootstrap replicates is acquired.\n", "\n", "This function is quite general, requiring the user to specify a function to compute the MLE, a function to draw a bootstrap sample, and the data themselves." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### MLE for a univariate data set\n", "\n", "To begin, we will consider a model in which all of the $x$-data from from a Normal distribution. That is, our generative model is\n", "\n", "\\begin{align}\n", "x \\sim \\text{Norm}(\\mu, \\sigma),\n", "\\end{align}\n", "\n", "with the two parameters we seek to estimate from the data being the location parameter $\\mu$ and the scale parameter $\\sigma$. Conveniently, the MLEs for the location and scale parameters for a Normal model are the plug-in estimates for the mean and standard deviation.\n", "\n", "First, we define the function to compute the MLE. The function must the data set as its first argument, and may have other arguments if necessary." ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "def mle_fun(x):\n", " \"\"\"Given a data set, compute MLE (plug-in) estimates for the\n", " mean and variance.\"\"\"\n", " return np.array([np.mean(x), np.std(x)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, we need a function that generates a new data set from the MLE. This function must have the parameters as a Numpy array (in this case an array of the mean and standard deviation) as its first argument. Additional arguments, if any, follow. The last two arguments must be `size` and `rg`, which are respectively the number of new data to generate and the random number generator to use." ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "def gen_fun(params, size, rg):\n", " \"\"\"Generate a new data set\"\"\"\n", " return rg.normal(*params, size=size)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now draw bootstrap replicates of the MLE." ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "bs_reps = bebi103.bootstrap.draw_bs_reps_mle(mle_fun, gen_fun, df['x'], size=10000)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The output is a Numpy array where each row is a parametric bootstrap replicate of the MLE. Each column corresponds to on of the variables, the first being $\\mu$ and the second being $\\sigma$. We can compute 95% confidence intervals for the two." ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[2.08490171, 1.74424982],\n", " [3.12677947, 2.48335369]])" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.percentile(bs_reps, [2.5, 97.5], axis=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first column is the confidence interval for $\\mu$ and the second is the confidence interval for $\\sigma$.\n", "\n", "We should, of course, also compute the MLE itself (not just its confidence interval!)." ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "μ MLE: 2.61\n", "σ MLE: 2.13\n" ] } ], "source": [ "params_mle = mle_fun(df['x'])\n", "\n", "print(\"μ MLE: {0:.2f}\\nσ MLE: {1:.2f}\".format(*params_mle))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Graphical display of a confidence region\n", "\n", "While the above calculation of confidence *intervals* are useful for each parameter, we may wish to understand how the MLE of $\\mu$ and that of $\\sigma$ might depend on each other. E.g., we might wonder if we have a higher estimate for $\\mu$, do we also have a higher estimate for $\\sigma$?\n", "\n", "To address this question, we can plot all of the bootstrap replicates. From those, we can draw a contour around a 95% confidence *region*, which contains 95% of the bootstrap samples. This is achieved with a corner plot, which also includes histograms of the bootstrap replicates for each parameter individually. This functionality is given in the `bebi103.viz.corner()` function." ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "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 = {\"0f95b9af-8a76-47fc-8e31-a453e98a1692\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"6109\"},{\"id\":\"6107\"}]},\"id\":\"6110\",\"type\":\"Row\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"6051\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"axis_label\":\"\\u03c3\",\"formatter\":{\"id\":\"6081\"},\"ticker\":{\"id\":\"5991\"}},\"id\":\"5990\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"5994\",\"type\":\"PanTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6002\"}},\"id\":\"5995\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"5961\"}},\"id\":\"5957\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6003\"}},\"id\":\"5998\",\"type\":\"LassoSelectTool\"},{\"attributes\":{},\"id\":\"5996\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"6001\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"6000\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"5990\"},\"dimension\":1,\"ticker\":null},\"id\":\"5993\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"5991\",\"type\":\"BasicTicker\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"6044\"},{\"id\":\"6045\"},{\"id\":\"6046\"},{\"id\":\"6047\"},{\"id\":\"6048\"},{\"id\":\"6049\"},{\"id\":\"6050\"}]},\"id\":\"6054\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"6050\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"6003\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"6002\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"overlay\":{\"id\":\"6052\"}},\"id\":\"6045\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"6049\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"6046\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6001\"}},\"id\":\"5997\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"6044\",\"type\":\"PanTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"6014\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"5999\",\"type\":\"SaveTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6053\"}},\"id\":\"6048\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6051\"}},\"id\":\"6047\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"EoHvFoIe9z8Sge8Wgh73P/KfcxofgPc/8p9zGh+A9z/SvvcdvOH3P9K+9x284fc/st17IVlD+D+y3XshWUP4P5P8/yT2pPg/k/z/JPak+D9zG4Qokwb5P3MbhCiTBvk/UzoILDBo+T9TOggsMGj5PzNZjC/Nyfk/M1mML83J+T8TeBAzaiv6PxN4EDNqK/o/85aUNgeN+j/zlpQ2B436P9O1GDqk7vo/07UYOqTu+j+01Jw9QVD7P7TUnD1BUPs/lPMgQd6x+z+U8yBB3rH7P3QSpUR7E/w/dBKlRHsT/D9UMSlIGHX8P1QxKUgYdfw/NFCtS7XW/D80UK1Ltdb8PxRvMU9SOP0/FG8xT1I4/T/0jbVS75n9P/SNtVLvmf0/1Kw5Voz7/T/UrDlWjPv9P7XLvVkpXf4/tcu9WSld/j+V6kFdxr7+P5XqQV3Gvv4/dQnGYGMg/z91CcZgYyD/P1UoSmQAgv8/VShKZACC/z81R85nneP/PzVHzmed4/8/CzOpNZ0iAEALM6k1nSIAQHtCa7drUwBAe0Jrt2tTAEDrUS05OoQAQOtRLTk6hABAW2Hvugi1AEBbYe+6CLUAQMtwsTzX5QBAy3CxPNflAEA7gHO+pRYBQDuAc76lFgFAq481QHRHAUCrjzVAdEcBQBuf98FCeAFAG5/3wUJ4AUCLrrlDEakBQIuuuUMRqQFA+717xd/ZAUD7vXvF39kBQGzNPUeuCgJAbM09R64KAkDc3P/IfDsCQNzc/8h8OwJATOzBSktsAkBM7MFKS2wCQLz7g8wZnQJAvPuDzBmdAkAsC0ZO6M0CQCwLRk7ozQJAnBoI0Lb+AkCcGgjQtv4CQAwqylGFLwNADCrKUYUvA0B8OYzTU2ADQHw5jNNTYANA7EhOVSKRA0DsSE5VIpEDQFxYENfwwQNAXFgQ1/DBA0DMZ9JYv/IDQMxn0li/8gNAPHeU2o0jBEA8d5TajSMEQKyGVlxcVARArIZWXFxUBEAclhjeKoUEQByWGN4qhQRAjKXaX/m1BECMpdpf+bUEQPy0nOHH5gRA/LSc4cfmBEBsxF5jlhcFQGzEXmOWFwVA3NMg5WRIBUDc0yDlZEgFQEzj4mYzeQVATOPiZjN5BUC88qToAaoFQLzypOgBqgVALQJnatDaBUAtAmdq0NoFQJ0RKeyeCwZAnREp7J4LBkANIettbTwGQA0h621tPAZAfTCt7zttBkB9MK3vO20GQO0/b3EKngZA7T9vcQqeBkBdTzHz2M4GQF1PMfPYzgZA\",\"dtype\":\"float64\",\"shape\":[120]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAdWtrm+i+BPx1a2ub6L4E/HVra5vovcT8dWtrm+i9xPwAAAAAAAAAAAAAAAAAAAADwWdrm+i+RP/BZ2ub6L5E/sh3+E/cTnj+yHf4T9xOePyuHR1r4x5k/K4dHWvjHmT/nO2z9+KGnP+c7bP34oac/pPCQoPl7tT+k8JCg+Xu1P2CltUP6VbM/YKW1Q/pVsz9Uw2vC9ia/P1TDa8L2Jr8/eQ6j1HgryD95DqPUeCvIP57/6993ZMs/nv/r33dkyz+e/+vfd2TbP57/6993ZNs/G4eZ/7ZY3j8bh5n/tljePy9pOi5bP+A/L2k6Lls/4D++/0eV+kLiP77/R5X6QuI/3zsVUFjq6T/fOxVQWOrpP4lDISmLUPA/iUMhKYtQ8D9mUirDSqjxP2ZSKsNKqPE/PwehCwoT9D8/B6ELChP0P/pKzERZsfY/+krMRFmx9j9+YdenhyH8P35h16eHIfw/dFLODcjJ+j90Us4NyMn6P+AkV4oG5P8/4CRXigbk/z/+aDAel/H9P/5oMB6X8f0/EYt7IVNqAEARi3shU2oAQNlKcI/W0v8/2Upwj9bS/z+8LAeutmv/P7wsB662a/8/HVra5vovAUAdWtrm+i8BQNWOUzMrLgBA1Y5TMysuAEDeyhvmpq7+P97KG+amrv4/N6UC4da//j83pQLh1r/+P/RZJ4TXmfw/9FknhNeZ/D9erLcMaW73P16stwxpbvc/BFrV3hgJ+D8EWtXeGAn4PwbLzkjKRPM/BsvOSMpE8z/fnVzN6oXxP9+dXM3qhfE/SrRiKDfP7T9KtGIoN8/tP6b/Qo0YHOk/pv9CjRgc6T/ySnWXuPnoP/JKdZe4+eg/0Q6o3FpS4T/RDqjcWlLhPy9pOi5bP+A/L2k6Lls/4D81llD0tx/bPzWWUPS3H9s/YKW1Q/pV0z9gpbVD+lXTPyWWopl2sM8/JZaimXawzz91w8d3eQXGP3XDx3d5BcY/e7RsOPscwD97tGw4+xzAP77/R5X6QrI/vv9HlfpCsj9Glv5O+Y62P0aW/k75jrY/b9Iit/ftqz9v0iK39+2rP2CltUP6VaM/YKW1Q/pVoz+k8JCg+XuVP6TwkKD5e5U/pPCQoPl7pT+k8JCg+XulP6SGR1r4x4k/pIZHWvjHiT8dWtrm+i+RPx1a2ub6L5E/HVra5vovcT8dWtrm+i9xPx1a2ub6L5E/HVra5vovkT8AAAAAAAAAAAAAAAAAAAAAK4dHWvjHiT8rh0da+MeJPwAAAAAAAAAA\",\"dtype\":\"float64\",\"shape\":[120]}},\"selected\":{\"id\":\"6104\"},\"selection_policy\":{\"id\":\"6105\"}},\"id\":\"6062\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"6052\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"5962\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"overlay\":{\"id\":\"5963\"}},\"id\":\"5958\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"5994\"},{\"id\":\"5995\"},{\"id\":\"5996\"},{\"id\":\"5997\"},{\"id\":\"5998\"},{\"id\":\"5999\"},{\"id\":\"6000\"}]},\"id\":\"6004\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"6018\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"5935\"}},\"id\":\"6016\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"5935\"},\"glyph\":{\"id\":\"6013\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6014\"},\"selection_glyph\":null,\"view\":{\"id\":\"6016\"}},\"id\":\"6015\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"start\":0.0},\"id\":\"6027\",\"type\":\"DataRange1d\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"6019\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"6034\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"6023\",\"type\":\"MultiLine\"},{\"attributes\":{\"data_source\":{\"id\":\"5936\"},\"glyph\":{\"id\":\"6018\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6019\"},\"selection_glyph\":null,\"view\":{\"id\":\"6021\"}},\"id\":\"6020\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"5936\"}},\"id\":\"6021\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"xs\":[{\"__ndarray__\":\"RnzLIHkkBUBslTLOkncFQBCR+PUmugVAkq6Ze6zKBUC5xwApxh0GQN/gZ9bfcAZABPrOg/nDBkArEzYxExcHQFIsnd4sagdAeEUEjEa9B0DTanqlMr8HQPPeQaT2DghAnl5rOWAQCEDgdrn73kEIQBYUkiJIXAhAxXfS5nljCED8VxDaFJIIQOuQOZSTtghAzEZo7LHfCEASqqBBrQkJQDfDB+/GXAlA70q5bI52CUCbDa6PrJsJQFqjLSn4lAlAD1OtJnadCUBSQYNrH6MJQF3cbpzgrwlAGYLU9gL7CUCE9dVJ+gIKQMBsapMRKgpAgdW1Y3oyCkCeESlDCzAKQErhfax3JwpA4miIbgsjCkCH1dOjBA8KQIT11Un6AgpACAov1QrsCUCIUvB/O98JQE1s6GArwAlAXdxunOCvCUDO5YSBq4gJQDfDB+/GXAlAeJAYIZk6CUCK8o5QESQJQIRCr8t8MglAQFl5kGIxCUARqqBBrQkJQGDfsUqjAglA65A5lJO2CEDEd9LmeWMIQJ5eazlgEAhArz+iSHAICEDwb5mhYPwHQDna5dXI5gdAeEUEjEa9B0BZilM7/m4HQFEsnd4sagdAKxM2MRMXB0CUQsn7vvAGQAX6zoP5wwZA3+Bn1t9wBkC5xwApxh0GQDM2j9Lj5QVAkq6Ze6zKBUBslTLOkncFQEZ8yyB5JAVAH2Nkc1/RBED5Sf3FRX4EQNIwlhgsKwRArRcvaxLYA0Dz2xo8MZ0DQIb+x734hANAYOVgEN8xA0DkvOGh7wgDQDrM+WLF3gJAQXClks+fAkATs5K1q4sCQO2ZKwiSOAJAx4DEWnjlAUAssNFPerQBQKFnXa1ekgFAs3tsbvo/AUB6Tvb/RD8BQFBjIDXzDwFAVDWPUivsAECaq8NyGc0AQC4cKKURmQBAvH7CDfeHAEDfncevOVYAQAgDwff3RQBAdZW8fgceAEAyUtDwCwUAQMLTs5S85f8/PAf/s+uM/z92oeU5iT//P55HH4Ke4P4/K28X31WZ/j8T/3rcNpP+P0IjOqmRbf4/Km8X31WZ/j/C98v4UQz/P3ah5TmJP/8/l678j5i4/z/TVs6NsM7/P/7df3ehsP8/DhwpBeWd/z92oeU5iT//P2WuhhnyLf8/v9gystTz/j+41e2RrQb/P3ah5TmJP/8/apzVS2KB/z/C07OUvOX/P7kgbe3tEQBAzMBDPn83AEAIA8H390UAQC4cKKURmQBA184hC0SyAEBUNY9SK+wAQEZZfLSG7gBAwit68MkVAUB6Tvb/RD8BQKCLHDB+dwFAoWddrV6SAUDHgMRaeOUBQOJPqzzTJAJA7ZkrCJI4AkATs5K1q4sCQDrM+WLF3gJAYOVgEN8xA0CloqurtUADQIb+x734hANArRcvaxLYA0DTMJYYLCsEQPlJ/cVFfgRAH2Nkc1/RBEDVDLB7wtkEQEZ8yyB5JAVA\",\"dtype\":\"float64\",\"shape\":[138]}],\"ys\":[{\"__ndarray__\":\"MBij+fNU+j+IrSHavEr6P7j4c9xifvo/8OV/JSCP+j8mwBGnLdz6P0bSNzkp7fo/WVXcToTt+j/8nmW4T+P6P3M/BK6IzPo/udcOQEvv+j941bjlkfH6Pzqy/e7AZPs/HrAzL6Zn+z/6jkL479f7P7xrhwEfS/w/Plujve9Z/D98SMwKTr78P8Wa3tfz+/w/PCURFH0x/T/Jk326eln9P5qmJZ8MkP0//gFWHayk/T++3pom2xf+P4C73y8Ki/4/QJgkOTn+/j8AdWlCaHH/P8JRrkuX5P8/QZd5KuMrAECqewke5jMAQKIFHK96ZQBAAnS+MxKfAEBi4mC4qdgAQMJQAz1BEgFAI7+lwdhLAUCELUhGcIUBQADrnLD7lAFA5Jvqyge/AUBECo1Pn/gBQKR4L9Q2MgJAuEqnGOpBAkAF59FYzmsCQKBTYWW4iQJAZlV03WWlAkDGwxZi/d4CQCYyueaUGANAhqBbayxSA0BguAeiYIcDQOgO/u/DiwNApL9RTCitA0BMyAXVl6ADQF935SeEuQNASH2gdFvFA0Co60L58v4DQAha5X2KOARAUOhYPvRUBEBoyIcCInIEQA0UvkXxcwRAvDIM7ip5BEBoyIcCInIEQHcBOVfwawRAZO1X7+hfBEDwOqljlF4EQGjIhwIicgRAZGAmcpmgBEAbAwsvmKUEQPJ5UqL9gwRAwJ5v8n54BEA12vHQAHUEQJ98m8EfegRAdbmfK8h9BEBoyIcCInIEQPzH1yNzbwRAxKgKdmNVBEAIWuV9ijgEQEUb5idDIgRAqOtC+fL+A0D4MZ+9kPUDQG7Kjaz47ANA0ETElnjjA0BIfaB0W8UDQOeqp5XftANA6A7+78OLA0CLaWDeCosDQIagW2ssUgNA12+29rwrA0AmMrnmlBgDQBYpZyVR6wJAxsMWYv3eAkBmVXTdZaUCQAqCDOznnQJABOfRWM5rAkCkeC/UNjICQJBZYQfIFwJARAqNT5/4AUBbVb9+SOEBQOSb6soHvwFAg9lWHx2LAUCELUhGcIUBQCS/pcHYSwFAaEoJtpo0AUDCUAM9QRIBQKHQg77l/wBAYuJguKnYAEACdL4zEp8AQKIFHK96ZQBAQZd5KuMrAEBuu30/rfr/P8JRrkuX5P8/AHVpQmhx/z9AmCQ5Of7+P9tKAqJjvP4/gLvfLwqL/j/WjgHkSD3+P77emibbF/4//gFWHayk/T//KG3O4Y/9P6WqdOBpSf0/PCURFH0x/T/Vf7JUHcT8P3xIzApOvvw/vGuHAR9L/D8ycKaf4gj8P/qOQvjv1/s/ff00tb/J+z+GYUMKAZn7Pzqy/e7AZPs/NKuLcqxQ+z8WZEumOBX7P+kiQOjHAPs/qUoMcpH1+j941bjlkfH6P4jDvIbCx/o/dBKdXKaI+j9nJiqGlX/6P2eyf8KTlfo/up6DTDWE+j+4+HPcYn76PzAYo/nzVPo/\",\"dtype\":\"float64\",\"shape\":[138]}]},\"selected\":{\"id\":\"6092\"},\"selection_policy\":{\"id\":\"6093\"}},\"id\":\"6022\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"6022\"},\"glyph\":{\"id\":\"6023\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6024\"},\"selection_glyph\":null,\"view\":{\"id\":\"6026\"}},\"id\":\"6025\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"6036\"}],\"center\":[{\"id\":\"6039\"},{\"id\":\"6043\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"6040\"}],\"renderers\":[{\"id\":\"6065\"}],\"title\":{\"id\":\"6096\"},\"toolbar\":{\"id\":\"6054\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"6029\"},\"x_scale\":{\"id\":\"6032\"},\"y_range\":{\"id\":\"6027\"},\"y_scale\":{\"id\":\"6034\"}},\"id\":\"6028\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"source\":{\"id\":\"6022\"}},\"id\":\"6026\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"6024\",\"type\":\"MultiLine\"},{\"attributes\":{\"data_source\":{\"id\":\"6062\"},\"glyph\":{\"id\":\"6063\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6064\"},\"selection_glyph\":null,\"view\":{\"id\":\"6066\"}},\"id\":\"6065\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"end\":2.879120765828445,\"start\":1.4168272527552015},\"id\":\"6029\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"6032\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"6037\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis_label\":\"\\u03c3\",\"formatter\":{\"id\":\"6099\"},\"major_label_orientation\":\"horizontal\",\"ticker\":{\"id\":\"6037\"}},\"id\":\"6036\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"6053\",\"type\":\"PolyAnnotation\"},{\"attributes\":{},\"id\":\"5959\",\"type\":\"SaveTool\"},{\"attributes\":{\"text\":\"\"},\"id\":\"6080\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"5960\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"6040\"},\"dimension\":1,\"ticker\":null},\"id\":\"6043\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"6097\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"6099\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"source\":{\"id\":\"5972\"}},\"id\":\"5976\",\"type\":\"CDSView\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6063\",\"type\":\"Line\"},{\"attributes\":{\"toolbar\":{\"id\":\"6108\"},\"toolbar_location\":\"left\"},\"id\":\"6109\",\"type\":\"ToolbarBox\"},{\"attributes\":{},\"id\":\"6081\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"children\":[[{\"id\":\"5938\"},0,0],[{\"id\":\"5977\"},1,0],[{\"id\":\"6028\"},1,1]]},\"id\":\"6107\",\"type\":\"GridBox\"},{\"attributes\":{\"text\":\"\"},\"id\":\"6068\",\"type\":\"Title\"},{\"attributes\":{\"source\":{\"id\":\"6062\"}},\"id\":\"6066\",\"type\":\"CDSView\"},{\"attributes\":{\"toolbars\":[{\"id\":\"5964\"},{\"id\":\"6004\"},{\"id\":\"6054\"}],\"tools\":[{\"id\":\"5954\"},{\"id\":\"5955\"},{\"id\":\"5956\"},{\"id\":\"5957\"},{\"id\":\"5958\"},{\"id\":\"5959\"},{\"id\":\"5960\"},{\"id\":\"5994\"},{\"id\":\"5995\"},{\"id\":\"5996\"},{\"id\":\"5997\"},{\"id\":\"5998\"},{\"id\":\"5999\"},{\"id\":\"6000\"},{\"id\":\"6044\"},{\"id\":\"6045\"},{\"id\":\"6046\"},{\"id\":\"6047\"},{\"id\":\"6048\"},{\"id\":\"6049\"},{\"id\":\"6050\"}]},\"id\":\"6108\",\"type\":\"ProxyToolbar\"},{\"attributes\":{},\"id\":\"6083\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6064\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"6/UMttS6+T/r9Qy21Lr5PyE0kJcPQ/o/ITSQlw9D+j9YchN5Ssv6P1hyE3lKy/o/jrCWWoVT+z+OsJZahVP7P8TuGTzA2/s/xO4ZPMDb+z/7LJ0d+2P8P/ssnR37Y/w/MWsg/zXs/D8xayD/Nez8P2ipo+BwdP0/aKmj4HB0/T+e5ybCq/z9P57nJsKr/P0/1CWqo+aE/j/UJaqj5oT+PwtkLYUhDf8/C2QthSEN/z9BorBmXJX/P0GisGZclf8/PPAZpMsOAEA88Bmkyw4AQFeP2xTpUgBAV4/bFOlSAEByLp2FBpcAQHIunYUGlwBAjc1e9iPbAECNzV72I9sAQKhsIGdBHwFAqGwgZ0EfAUDEC+LXXmMBQMQL4tdeYwFA36qjSHynAUDfqqNIfKcBQPpJZbmZ6wFA+klluZnrAUAV6SYqty8CQBXpJiq3LwJAMIjomtRzAkAwiOia1HMCQEwnqgvytwJATCeqC/K3AkBnxmt8D/wCQGfGa3wP/AJAgmUt7SxAA0CCZS3tLEADQJ0E711KhANAnQTvXUqEA0C4o7DOZ8gDQLijsM5nyANA1EJyP4UMBEDUQnI/hQwEQO/hM7CiUARA7+EzsKJQBEAKgfUgwJQEQAqB9SDAlARAJSC3kd3YBEAlILeR3dgEQEC/eAL7HAVAQL94AvscBUBcXjpzGGEFQFxeOnMYYQVAdv374zWlBUB2/fvjNaUFQJKcvVRT6QVAkpy9VFPpBUCtO3/FcC0GQK07f8VwLQZAyNpANo5xBkDI2kA2jnEGQOR5AqertQZA5HkCp6u1BkD+GMQXyfkGQP4YxBfJ+QZAGriFiOY9B0AauIWI5j0HQDVXR/kDggdANVdH+QOCB0BQ9ghqIcYHQFD2CGohxgdAbJXK2j4KCEBslcraPgoIQIY0jEtcTghAhjSMS1xOCECi0028eZIIQKLTTbx5kghAvXIPLZfWCEC9cg8tl9YIQNgR0Z20GglA2BHRnbQaCUD0sJIO0l4JQPSwkg7SXglADlBUf++iCUAOUFR/76IJQCrvFfAM5wlAKu8V8AznCUBFjtdgKisKQEWO12AqKwpAYC2Z0UdvCkBgLZnRR28KQHzMWkJlswpAfMxaQmWzCkCWaxyzgvcKQJZrHLOC9wpAsgreI6A7C0CyCt4joDsLQM2pn5S9fwtAzamflL1/C0DoSGEF28MLQOhIYQXbwwtAA+gidvgHDEAD6CJ2+AcMQB6H5OYVTAxAHofk5hVMDEA6JqZXM5AMQDomplczkAxAVMVnyFDUDEBUxWfIUNQMQHBkKTluGA1AcGQpOW4YDUA=\",\"dtype\":\"float64\",\"shape\":[124]},\"y\":{\"__ndarray__\":\"AAAAAAAAAADUfU/tdqFoP9R9T+12oWg/AAAAAAAAAAAAAAAAAAAAANR9T+12oWg/1H1P7XahaD/UfU/tdqF4P9R9T+12oXg/pn1P7XahiD+mfU/tdqGIP9R9T+12oYg/1H1P7XahiD+mfU/tdqGYP6Z9T+12oZg/X577MRl5gj9fnvsxGXmCP0ldo6jUya4/SV2jqNTJrj8QXaOo1MmuPxBdo6jUya4/PZbQoDADtD89ltCgMAO0PyLhOPHIBL4/IuE48cgEvj+BpibDAe/AP4GmJsMB78A/PZbQoDADxD89ltCgMAPEP1rhOPHIBM4/WuE48cgEzj9wIpF6DbTRP3AikXoNtNE/kWIKSCir1z+RYgpIKKvXP37pY4Kxetw/fuljgrF63D+KaHHne4zgP4poced7jOA/rcJN4Zqv5D+twk3hmq/kPx7vyiEFXOU/Hu/KIQVc5T/6LWJ21YjoP/otYnbViOg/Uh/uzE5n7j9SH+7MTmfuP7o8ZeM2RfE/ujxl4zZF8T/VK56EQPTyP9UrnoRA9PI/3ZZB3VVo9T/dlkHdVWj1P18t8TmwI/c/Xy3xObAj9z/U1Pa428r1P9TU9rjbyvU/X/Csmk8m+D9f8KyaTyb4PxHMWuvN7/U/Ecxa683v9T/75p+QHOb2P/vmn5Ac5vY/Sz64mKZ09T9LPriYpnT1P06Gen5fF/c/ToZ6fl8X9z/xAHT5RXf2P/EAdPlFd/Y/3ZZB3VVo9T/dlkHdVWj1PwQAkoD7rPM/BACSgPus8z/jB70R5CLyP+MHvRHkIvI/MIog6T527z8wiiDpPnbvP5n6mx3NMOw/mfqbHc0w7D+ckGkB3SHrP5yQaQHdIes/Thpm6SQ+4z9OGmbpJD7jP7UzyRUpauE/tTPJFSlq4T/L4TjxyATeP8vhOPHIBN4/r6jqtJaD1j+vqOq0loPWPyexFUZ/+dQ/J7EVRn/51D+6N2+ACMnJP7o3b4AIyck/O/GOE5rwyj878Y4TmvDKP8vhOPHIBL4/y+E48cgEvj/+ZM45vT+9P/5kzjm9P70/KxI7WDzItD8rEjtYPMi0P0ldo6jUya4/SV2jqNTJrj/xldCgMAOkP/GV0KAwA6Q/MH5P7XahmD8wfk/tdqGYP9Vco6jUyY4/1VyjqNTJjj9fnvsxGXmCP1+e+zEZeYI/1H1P7XaheD/UfU/tdqF4P9R9T+12oXg/1H1P7XaheD8AAAAAAAAAAAAAAAAAAAAAd31P7XahiD93fU/tdqGIPzB+T+12oWg/MH5P7XahaD93fU/tdqFoP3d9T+12oWg/AAAAAAAAAAA=\",\"dtype\":\"float64\",\"shape\":[124]}},\"selected\":{\"id\":\"6076\"},\"selection_policy\":{\"id\":\"6077\"}},\"id\":\"5972\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"5942\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"6069\"},\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"5951\"}},\"id\":\"5950\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"6036\"},\"ticker\":null},\"id\":\"6039\",\"type\":\"Grid\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1414213562373095},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.1414213562373095},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"6013\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"6104\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"5982\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"6105\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"5986\"}],\"center\":[{\"id\":\"5989\"},{\"id\":\"5993\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"5990\"}],\"renderers\":[{\"id\":\"6015\"},{\"id\":\"6020\"},{\"id\":\"6025\"}],\"title\":{\"id\":\"6080\"},\"toolbar\":{\"id\":\"6004\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"5939\"},\"x_scale\":{\"id\":\"5982\"},\"y_range\":{\"id\":\"6029\"},\"y_scale\":{\"id\":\"5984\"}},\"id\":\"5977\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"5961\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"6069\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5973\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"6071\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"6088\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"5974\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"6089\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"5984\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"6093\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"0\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"1\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"chain__\":[],\"divergent__\":[],\"index\":[]},\"selected\":{\"id\":\"6090\"},\"selection_policy\":{\"id\":\"6091\"}},\"id\":\"5936\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"5954\"},{\"id\":\"5955\"},{\"id\":\"5956\"},{\"id\":\"5957\"},{\"id\":\"5958\"},{\"id\":\"5959\"},{\"id\":\"5960\"}]},\"id\":\"5964\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"5987\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"6090\",\"type\":\"Selection\"},{\"attributes\":{\"axis_label\":\"\\u00b5\",\"formatter\":{\"id\":\"6083\"},\"major_label_orientation\":\"horizontal\",\"ticker\":{\"id\":\"5987\"}},\"id\":\"5986\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"6091\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"5972\"},\"glyph\":{\"id\":\"5973\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"5974\"},\"selection_glyph\":null,\"view\":{\"id\":\"5976\"}},\"id\":\"5975\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"5944\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"5963\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"data\":{\"0\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"1\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"chain__\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"divergent__\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"index\":[1867,42,2698,4726,6553,1794,2201,4405,8318,132,5285,1650,7141,1022,9625,222,778,1909,3580,1886,8187,3574,6310,4894,8846,7034,4877,3751,3735,9928,7988,1518,5594,4753,8649,9728,758,2208,7852,9363,512,6209,6411,9749,3395,8345,1809,6472,6957,1035,7360,939,8228,9480,1584,6229,9296,6272,5153,3861,4113,4127,9078,8837,1036,8229,1037,6823,373,1757,8881,7466,5522,7284,3402,8900,9325,9558,5437,7228,7773,6800,7517,1902,5982,5525,5509,8209,1530,9827,1366,9775,2458,7330,495,5384,140,6751,9476,9055,5786,3052,4732,9044,341,2972,7197,8997,7727,3819,214,2934,2355,2513,659,4849,6184,2967,809,248,5160,372,2273,4683,345,1166,5866,5847,8099,1088,5478,242,9447,5774,8219,113,7030,6069,3602,7001,4402,7752,6745,3357,7604,2745,2383,6568,6671,7089,6932,5494,5012,4083,425,6835,1912,751,9937,4093,7224,2372,2484,780,6600,1616,5936,8742,2161,3403,5619,1225,2144,9622,2212,2937,9057,386,2296,8748,2482,316,4980,2344,66,6773,5106,3572,963,5413,7756,1562,2512,252,7138,1323,8538,1403,4715,8426,3180,709,7332,762,9680,9757,1310,8913,8184,288,7651,580,5861,3661,4420,9451,1388,8281,773,6968,9108,9715,5387,9356,7602,2662,3934,5333,2357,2843,5890,2670,1457,7268,8405,5996,7423,7371,593,7231,1666,8779,8892,4626,6305,710,204,5163,343,2093,5422,5393,6594,3206,7143,7575,5235,7771,6907,7051,5998,9019,9531,6627,1063,3956,472,5244,3744,1780,8525,3218,2653,5740,8962,3051,7811,8375,8519,2472,3020,6856,9372,9899,5234,4601,6734,3754,2187,3134,8600,5090,7618,1824,9091,8253,8908,3511,7366,5115,5754,2577,5673,974,2871,4263,348,9482,8130,4845,1053,5100,1883,7868,7151,2253,6149,6072,8107,4213,29,9314,3275,1,8470,6112,1917,3628,2147,3224,1231,8666,8677,3816,1145,5537,1473,5343,8942,5684,4284,5180,1605,4145,7733,7421,3636,443,4584,6603,4872,6661,6212,3843,7451,1991,3903,7279,3116,4673,9682,668,9729,8676,9378,7794,2493,6250,3764,6945,6111,9212,4739,1349,3250,7272,28,6323,8914,4926,4148,4852,763,8241,8751,4369,5897,5514,5987,8876,7656,3034,4187,2122,5282,9709,6828,7388,4376,7849,9165,8448,7340,6652,2731,3801,4523,409,7211,1784,7627,1713,2872,9911,4893,3467,896,3181,8758,863,1458,1962,3832,7976,1870,2650,4481,4005,4964,432,1146,3216,5652,6142,117,6324,9273,9817,1327,1307,2605,6806,9211,6786,4593,6339,8056,2958,4029,7016,9361,403,8247,9851,9496,2954,2951,6657,7373,7818,1836,9747,6410,5136,1752,5380,9382,9961,7321,3060,3505,8887,6987,6206,7349,5204,8126,8146,3413,3612,7759,8563,8702,5220,1331,8464,1899,4648,1754,9627,424,2038,1346,6711,47,4161,1315,5554,5450,3722,2014,243,4006,5824,2499,7672,57,7872,6722,6577,3592,3703,1277,8074,5693,8806,5426,8937,7989,2378,17,2500,6171,3493,7434,8385,2560,2543,2416,4907,1337,3829,7966,6566,8771,48,1745,2787,8654,5152,2436,5275,7134,7665,9698,6447,7432,6497,236,3724,679,9731,7236,1004,3768,1210,6117,8264,1103,5453,8848,4233,16,8237,7242,912,6524,6755,3,2304,8018,9224,4203,851,4125,8651,5678,2563,2685,4201,6080,501,8458,1373,4470,1402,1996,4199,5053,1460,2225,5229,1302,6527,7684,7454,9342,8492,6529,1995,7097,7446,849,9118,9871,3494,8006,9882,8346,686,3315,1862,3208,4487,7641,2433,234,4264,7896,3762,4468,3428,8859,1698,7316,2299,9770,8489,7409,2177,6776,3525,7052,171,1254,357,9952,319,2741,2188,5744,4812,8622,7990,4585,484,6542,1168,8575,7829,2030,156,5904,4094,5424,6560,6649,8782,6732,6832,6831,4227,6081,4565,1954,6316,314,9830,4258,1748,5439,7632,5971,4690,6160,9996,7634,5122,1026,8636,2046,1579,2892,8971,5467,8738,5201,4047,8830,7551,4285,8134,8115,7958,9941,7524,7542,7467,4431,9442,8368,3701,3780,8422,142,9748,6234,6224,401,8480,2215,4414,1280,5039,8566,9517,1057,1637,9867,3322,4886,8085,9357,4176,4918,5515,951,4915,8178,3949,5419,5063,8992,8580,519,6032,9053,575,3032,5576,1646,6837,4843,1273,3965,8800,4252,1504,9352,1343,9616,221,7883,1542,4538,4131,9323,6007,9433,448,5110,4430,3545,9818,6025,9868,360,8171,5587,111,4407,8445,2423,6944,2495,6404,1496,3682,7148,1572,5674,7840,369,8652,9588,9420,7058,3758,9086,2580,1633,5459,7782,8406,7522,7835,4374,6629,7861,7464,6880,2224,3160,4423,7176,6712,230,3005,19,2098,8271,313,9605,7995,2642,4759,8277,6207,2182,7560,7815,6636,5508,3329,8744,9920,1826,8351,4059,2338,5645,1831,4566,2251,1061,4949,2707,1603,5711,2803,3921,8040,9285,6760,4605,8795,8688,1156,760,827,581,510,8051,2926,5833,6874,1671,2781,7194,3781,210,4343,7361,4785,2281,9533,923,9064,9959,8856,8307,9288,3808,6986,6144,1558,7456,9163,3195,7230,4548,5605,2936,7070,8780,7465,6702,4245,9484,7616,22,1275,7924,6614,9947,1678,5519,8145,3230,3923,9982,1351,9834,3807,2010,6261,1749,3226,3047,9454,1319,8905,2874,1288,8522,6482,174,4993,7928,7776,9194,3803,7764,5006,1248,8324,732,5539,5443,3164,615,5633,2887,2094,1703,1097,365,3672,7460,4568,796,5648,4934,6256,9025,2542,1495,9195,6020,2377,4441,2095,8012,7223,3149,9319,6432,4814,965,2308,7296,3871,3596,3943,2547,1545,2031,6191,3715,3477,1142,4658,1023,3979,2905,9945,7254,3154,9246,4067,5370,4780,3431,6884,4026,4219,7301,7777,6255,8326,9825,6166,6807,2559,7072,8745,8135,7494,5476,1844]},\"selected\":{\"id\":\"6088\"},\"selection_policy\":{\"id\":\"6089\"}},\"id\":\"5935\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"6076\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"6092\",\"type\":\"Selection\"},{\"attributes\":{\"formatter\":{\"id\":\"6097\"},\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"6041\"}},\"id\":\"6040\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"6077\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"5947\",\"type\":\"BasicTicker\"},{\"attributes\":{\"end\":3.677505303654196,\"start\":1.5675366939796969},\"id\":\"5939\",\"type\":\"Range1d\"},{\"attributes\":{\"start\":0.0},\"id\":\"5937\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"5951\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"5956\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"5946\"},\"ticker\":null},\"id\":\"5949\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"5954\",\"type\":\"PanTool\"},{\"attributes\":{\"axis\":{\"id\":\"5986\"},\"ticker\":null},\"id\":\"5989\",\"type\":\"Grid\"},{\"attributes\":{\"overlay\":{\"id\":\"5962\"}},\"id\":\"5955\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"5946\"}],\"center\":[{\"id\":\"5949\"},{\"id\":\"5953\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"5950\"}],\"renderers\":[{\"id\":\"5975\"}],\"title\":{\"id\":\"6068\"},\"toolbar\":{\"id\":\"5964\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"5939\"},\"x_scale\":{\"id\":\"5942\"},\"y_range\":{\"id\":\"5937\"},\"y_scale\":{\"id\":\"5944\"}},\"id\":\"5938\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"text\":\"\"},\"id\":\"6096\",\"type\":\"Title\"},{\"attributes\":{\"formatter\":{\"id\":\"6071\"},\"major_label_orientation\":\"horizontal\",\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"5947\"}},\"id\":\"5946\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"5950\"},\"dimension\":1,\"ticker\":null},\"id\":\"5953\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"6041\",\"type\":\"BasicTicker\"}],\"root_ids\":[\"6110\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"0f95b9af-8a76-47fc-8e31-a453e98a1692\",\"root_ids\":[\"6110\"],\"roots\":{\"6110\":\"aa8439ff-9c0f-424d-b12a-406623e3c248\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "6110" } }, "output_type": "display_data" } ], "source": [ "bokeh.io.show(\n", " bebi103.viz.corner(\n", " bs_reps,\n", " labels=[\"µ\", \"σ\"],\n", " show_contours=True,\n", " levels=[0.95],\n", " max_plotted=1000,\n", " )\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that we have used the `max_plotted=1000` kwarg to only plot 1,000 of the 10,000 samples. This is to keep the file size down in the rendering of this notebook in the hosted documentation." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Graphical model comparison of univariate data sets\n", "\n", "The generative model emits data. If we parametrize the generative model with the MLE, we can use the generative model to draw new data sets. We can compare these *predicted* data set the experimental data set. For this purpose, graphical comparisons are useful.\n", "\n", "In order to construct the graphical model comparisons, we need to generate predicted data sets as samples out of the generative model parametrized by the MLE. Each data set has the same number of \"observations\" as the observed data set. We will generate 10,000 such data sets." ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [], "source": [ "rg = np.random.default_rng(seed=3252)\n", "samples = np.array([gen_fun(params_mle, len(df), rg) for _ in range(10000)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Q-Q plots\n", "\n", "Q-Q plots are an effective means of model comparison. They are constructed as follows. Say we have *n* data points. We draw *n* samples out of the generative model and sort them. We then plot the sorted generated data against the sorted measured data points. Plotted points falling on a straight line of slope one and passing through the origin is indicative of agreement between the model and the true process that generated the data.\n", "\n", "We can repeat this over and over again, can can compute percentiles of the Q-Q plots to give a confidence interval of the plots of sorted generated data versus sorted measured data. If the confidence interval captures the line of unit slope and zero intercept, the data are commensurate with the model.\n", "\n", "We have the generated data sets, stored as `samples`. Along with the measured data (in this case, fabricated \"measured\" data for illustrative purposes), we can generated a Q-Q plot using `bebi103.viz.qqplot()`." ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "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 = {\"553bded4-8c6d-4b99-bf5b-562c270c90d4\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"6671\"}],\"center\":[{\"id\":\"6674\"},{\"id\":\"6678\"}],\"frame_height\":275,\"frame_width\":275,\"left\":[{\"id\":\"6675\"}],\"renderers\":[{\"id\":\"6696\"},{\"id\":\"6701\"},{\"id\":\"6706\"},{\"id\":\"6711\"}],\"title\":{\"id\":\"7043\"},\"toolbar\":{\"id\":\"6686\"},\"x_range\":{\"id\":\"6663\"},\"x_scale\":{\"id\":\"6667\"},\"y_range\":{\"id\":\"6665\"},\"y_scale\":{\"id\":\"6669\"}},\"id\":\"6662\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"6679\",\"type\":\"PanTool\"},{\"attributes\":{\"source\":{\"id\":\"6708\"}},\"id\":\"6712\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#1f77b4\",\"line_alpha\":0,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6694\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"6680\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"6679\"},{\"id\":\"6680\"},{\"id\":\"6681\"},{\"id\":\"6682\"},{\"id\":\"6683\"},{\"id\":\"6684\"}]},\"id\":\"6686\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"6684\",\"type\":\"HelpTool\"},{\"attributes\":{\"overlay\":{\"id\":\"6685\"}},\"id\":\"6681\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"7053\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"6682\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"7054\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"6683\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"6693\"},\"glyph\":{\"id\":\"6694\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6695\"},\"selection_glyph\":null,\"view\":{\"id\":\"6697\"}},\"id\":\"6696\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA/3DMOAYOIkAWADO89AsbQPfOgveVZhhAptsVnXomGECdpE9mLVcWQLFQiNVcdhVA/y/JAF2OE0Akn1PqLooTQIzjWUjGYxNArLNNJlU/E0D7U4SJi/oSQO7UdrFFxxJARCq4yXRcEkDFqJVct3URQOgOjL+9XhFAV8M+ckP7EEDX4x3WSpIQQIpJ7O1wdRBAJeCpgUgnEEArMIjX4OoOQC46b7jqng1Azsj8h/9CDUAACzyUN6kLQA9SZ7C7+wpAjAbxvjbnCkDUsQhOJpAJQJWOZLLTSAhACSqOxU0CBkDdJ5hTh8wFQJWzlLuV+gRAUpv5mRFFBEC2U+8TfvYDQJpw4i0euQNAqEqr0535AkAUX/9qbVwBQJA96wNVUwBAltKAqLYBAEDB/qzwCUH9PxK0fBLX6/w/Y1Nhxcc0/D8nBoBYLYH7P7Frc6svc/o/M9lcUdgV+T8XpMFvO5n4P8nr5BlzcPY//lQKbS8c9j/k5+yFFxDvP2KhUpCjB+s/Bs14IJWU6T/Uqn6q/hHnP4rFid464OY/fG7qRXow5D8bpAhW1Z3iP4wucXHYGdA/cHNMCix7xD//oVqaZrWGv6DzaLS267u/IGC2TlDr1r+E8xsuMIPlv9joCEGz2+q/LLEtJcJe67+wuYMGbPTsv4s7PrSBiPa/\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"3Fqvzu0257/bs79WWKnRv5kIYL2NAn0/510K5xSE0D8NxM7tnrbdPyjngddg8+M/Ha9mBkBb6T/v5zjfV5/uP0xpQAvfTPE/Tlwm6Kxw8z8Fc5lUB3D1P1MQWoyJK/c//4xCsjr8+D8ujGmOzLT6P8sIQwSId/w/w9ttJkbs/T8eKq8iQ4T/P6tpapHLfgBAOhJlHosvAUCRRFhUUAkCQAJg5FoHsgJAZqkb+FF3A0BUVpN7vzgEQNFj6jlt4ARA4OtcDfaXBUB/2LUOAz4GQOd+DjGL2QZAx63Pgl2OB0COYnvl3z0IQIhTo0Df8QhAYKezpjKPCUArUDl+c0QKQAFFPT/D4ApA7dr3i8edC0AwnxlXaj8MQJ+iyplE8AxAVRbVVxeeDUCrN7c8aVYOQBCEe3FbEA9AOH1X/9bOD0DjgcEKUUsQQKEnImmPrRBA3RQ6ZiAEEUAiE4cbV3ARQCgomUFD3hFAzYFxRxJVEkDjVSMLC7USQHqq7T9eMBNAavqIEauhE0CqT51phBoUQN47D1VWpBRAfEB2Qq5JFUAv7LXTBdUVQBKVMQqchxZAEi4boRQ1F0CrqoHNIfYXQAVGXEwX1RhAzUIvQBPBGUBF054FK/QaQBtkjdrnVBxAt2+eqWlPHkDwYKxQH3ggQCox+3RBciNAq4cB2hHtF0DTUkJ0RxEWQDhmp/Kj1xRAXvGB407yE0BgJHzzwycTQDnbBkFfbhJABoH2/9jFEUBzvKx37x8RQDR6VDWAlBBAUcEqw/EKEECMOgI/yh8PQC0YVrruQQ5AFNrydppIDUDfsfZaJlgMQFxuwCnJlwtAma2TCNjCCkAxg15XQRMKQHcBYg7ZSAlAQgJCx5eMCEC1S0aBWuoHQDn8RP2KHgdAFDnmGydoBkBq9HAuR8QFQIf/V3RrEAVAWF8P96ZrBEDXgKM4B7QDQCC0rd38AANAA9AsJfZHAkDGLsDCGKcBQCT3OWNG3ABAF0F1kM9SAEACl2f6o0H/P3JG+/OyEP4/Zx1kIBid/D8CieVeYzX7P49c33+a6/k/R/grWKpr+D/0rqbNVfj2P2Tc48u1nPU/Ztw2HkYN9D+dLOHHW3/yP7ua4A5D+PA/VA5WJuCR7j9CgxfLOJrrP+xYmUzIQ+g/5TtZbUOf5D/EgDPkdzDhPzpMew69nto/Li04tlIk1D+1GWx729HHP6X7qNhTaqw/mgh2Jzzdtr9/bUlEtunOvziNss15Fdm/G+e5zX/s4b/Wt4+x9lbov8A2gNJ8s++/d1lKIb+K87+ARxopH2z4v+NgGqg+Kf6/oQsXQF6hAsDjLXMbjZsIwCjBK+0b2xHA\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"7049\"},\"selection_policy\":{\"id\":\"7050\"}},\"id\":\"6693\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"6669\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#1f77b4\",\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6695\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"7044\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"3Fqvzu0257/bs79WWKnRv5kIYL2NAn0/510K5xSE0D8NxM7tnrbdPyjngddg8+M/Ha9mBkBb6T/v5zjfV5/uP0xpQAvfTPE/Tlwm6Kxw8z8Fc5lUB3D1P1MQWoyJK/c//4xCsjr8+D8ujGmOzLT6P8sIQwSId/w/w9ttJkbs/T8eKq8iQ4T/P6tpapHLfgBAOhJlHosvAUCRRFhUUAkCQAJg5FoHsgJAZqkb+FF3A0BUVpN7vzgEQNFj6jlt4ARA4OtcDfaXBUB/2LUOAz4GQOd+DjGL2QZAx63Pgl2OB0COYnvl3z0IQIhTo0Df8QhAYKezpjKPCUArUDl+c0QKQAFFPT/D4ApA7dr3i8edC0AwnxlXaj8MQJ+iyplE8AxAVRbVVxeeDUCrN7c8aVYOQBCEe3FbEA9AOH1X/9bOD0DjgcEKUUsQQKEnImmPrRBA3RQ6ZiAEEUAiE4cbV3ARQCgomUFD3hFAzYFxRxJVEkDjVSMLC7USQHqq7T9eMBNAavqIEauhE0CqT51phBoUQN47D1VWpBRAfEB2Qq5JFUAv7LXTBdUVQBKVMQqchxZAEi4boRQ1F0CrqoHNIfYXQAVGXEwX1RhAzUIvQBPBGUBF054FK/QaQBtkjdrnVBxAt2+eqWlPHkDwYKxQH3ggQCox+3RBciNA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"7051\"},\"selection_policy\":{\"id\":\"7052\"}},\"id\":\"6698\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"6693\"}},\"id\":\"6697\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"6672\",\"type\":\"BasicTicker\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6699\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"6703\"},\"glyph\":{\"id\":\"6704\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6705\"},\"selection_glyph\":null,\"view\":{\"id\":\"6707\"}},\"id\":\"6706\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7055\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6704\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"7056\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7046\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"source\":{\"id\":\"6698\"}},\"id\":\"6702\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"6708\"},\"glyph\":{\"id\":\"6709\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6710\"},\"selection_glyph\":null,\"view\":{\"id\":\"6712\"}},\"id\":\"6711\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6700\",\"type\":\"Line\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"6685\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"6698\"},\"glyph\":{\"id\":\"6699\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"6700\"},\"selection_glyph\":null,\"view\":{\"id\":\"6702\"}},\"id\":\"6701\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":[-1.4083268204446735,9.027391219097352],\"y\":[-1.4083268204446735,9.027391219097352]},\"selected\":{\"id\":\"7055\"},\"selection_policy\":{\"id\":\"7056\"}},\"id\":\"6708\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"KMEr7RvbEcDjLXMbjZsIwKELF0BeoQLA42AaqD4p/r+ARxopH2z4v3dZSiG/ivO/wDaA0nyz77/Wt4+x9lbovxvnuc1/7OG/OI2yzXkV2b9/bUlEtunOv5oIdic83ba/pfuo2FNqrD+1GWx729HHPy4tOLZSJNQ/Okx7Dr2e2j/EgDPkdzDhP+U7WW1Dn+Q/7FiZTMhD6D9CgxfLOJrrP1QOVibgke4/u5rgDkP48D+dLOHHW3/yP2bcNh5GDfQ/ZNzjy7Wc9T/0rqbNVfj2P0f4K1iqa/g/j1zff5rr+T8CieVeYzX7P2cdZCAYnfw/ckb787IQ/j8Cl2f6o0H/PxdBdZDPUgBAJPc5Y0bcAEDGLsDCGKcBQAPQLCX2RwJAILSt3fwAA0DXgKM4B7QDQFhfD/emawRAh/9XdGsQBUBq9HAuR8QFQBQ55hsnaAZAOfxE/YoeB0C1S0aBWuoHQEICQseXjAhAdwFiDtlICUAxg15XQRMKQJmtkwjYwgpAXG7AKcmXC0DfsfZaJlgMQBTa8naaSA1ALRhWuu5BDkCMOgI/yh8PQFHBKsPxChBANHpUNYCUEEBzvKx37x8RQAaB9v/YxRFAOdsGQV9uEkBgJHzzwycTQF7xgeNO8hNAOGan8qPXFEDTUkJ0RxEWQKuHAdoR7RdA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"7053\"},\"selection_policy\":{\"id\":\"7054\"}},\"id\":\"6703\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"end\":9.027391219097352,\"start\":-1.4083268204446735},\"id\":\"6663\",\"type\":\"Range1d\"},{\"attributes\":{\"source\":{\"id\":\"6703\"}},\"id\":\"6707\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6705\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"7049\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"7050\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_alpha\":0.5,\"line_width\":4,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6709\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"6665\",\"type\":\"DataRange1d\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":4,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"6710\",\"type\":\"Line\"},{\"attributes\":{\"axis\":{\"id\":\"6671\"},\"ticker\":null},\"id\":\"6674\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"6676\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"6667\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis\":{\"id\":\"6675\"},\"dimension\":1,\"ticker\":null},\"id\":\"6678\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"7051\",\"type\":\"Selection\"},{\"attributes\":{\"formatter\":{\"id\":\"7046\"},\"ticker\":{\"id\":\"6672\"}},\"id\":\"6671\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"7052\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"formatter\":{\"id\":\"7044\"},\"ticker\":{\"id\":\"6676\"}},\"id\":\"6675\",\"type\":\"LinearAxis\"},{\"attributes\":{\"text\":\"\"},\"id\":\"7043\",\"type\":\"Title\"}],\"root_ids\":[\"6662\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"553bded4-8c6d-4b99-bf5b-562c270c90d4\",\"root_ids\":[\"6662\"],\"roots\":{\"6662\":\"8f4f266b-d680-4328-973f-52caa3c4b40b\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "6662" } }, "output_type": "display_data" } ], "source": [ "bokeh.io.show(bebi103.viz.qqplot(data=df[\"x\"], samples=samples))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By default, the middle 95% of samples are displayed as the shaded region." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Predictive ECDFs\n", "\n", "To compare data sets that would be generated from the model and the observed data set, we plot percentiles of the ECDFs of the generated data sets with the ECDF of the data overlaid using the `bebi103.viz.predictive_ecdf()` function." ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [ { "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 = {\"32ec9b75-4184-4373-bf1f-c64e14756b13\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"7156\"}],\"center\":[{\"id\":\"7159\"},{\"id\":\"7163\"}],\"frame_height\":325,\"frame_width\":400,\"left\":[{\"id\":\"7160\"}],\"renderers\":[{\"id\":\"7181\"},{\"id\":\"7186\"},{\"id\":\"7191\"},{\"id\":\"7196\"},{\"id\":\"7201\"},{\"id\":\"7206\"},{\"id\":\"7211\"},{\"id\":\"7216\"}],\"title\":{\"id\":\"7563\"},\"toolbar\":{\"id\":\"7171\"},\"x_range\":{\"id\":\"7148\"},\"x_scale\":{\"id\":\"7152\"},\"y_range\":{\"id\":\"7150\"},\"y_scale\":{\"id\":\"7154\"}},\"id\":\"7147\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"7577\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"7161\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis_label\":\"x\",\"formatter\":{\"id\":\"7566\"},\"ticker\":{\"id\":\"7157\"}},\"id\":\"7156\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"7148\",\"type\":\"DataRange1d\"},{\"attributes\":{\"text\":\"\"},\"id\":\"7563\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"7152\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"7150\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"7154\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis_label\":\"ECDF\",\"formatter\":{\"id\":\"7564\"},\"ticker\":{\"id\":\"7161\"}},\"id\":\"7160\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"7157\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"7156\"},\"ticker\":null},\"id\":\"7159\",\"type\":\"Grid\"},{\"attributes\":{\"axis\":{\"id\":\"7160\"},\"dimension\":1,\"ticker\":null},\"id\":\"7163\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"7165\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"7164\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"7169\",\"type\":\"HelpTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"7164\"},{\"id\":\"7165\"},{\"id\":\"7166\"},{\"id\":\"7167\"},{\"id\":\"7168\"},{\"id\":\"7169\"}]},\"id\":\"7171\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"7583\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"7170\"}},\"id\":\"7166\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"7167\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"7168\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"7578\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7584\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"7178\"},\"glyph\":{\"id\":\"7179\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7180\"},\"selection_glyph\":null,\"view\":{\"id\":\"7182\"}},\"id\":\"7181\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7580\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#9ecae1\",\"line_alpha\":0,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7179\",\"type\":\"Patch\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#9ecae1\",\"line_alpha\":0.1,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7180\",\"type\":\"Patch\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGwPxAEQRAEQbA/FEVRFEVRtD8URVEURVG0PxiGYRiGYbg/GIZhGIZhuD8cx3Ecx3G8PxzHcRzHcbw/EARBEARBwD8QBEEQBEHAP5IkSZIkScI/kiRJkiRJwj8URVEURVHEPxRFURRFUcQ/lmVZlmVZxj+WZVmWZVnGPxiGYRiGYcg/GIZhGIZhyD+apmmapmnKP5qmaZqmaco/HMdxHMdxzD8cx3Ecx3HMP57neZ7nec4/nud5nud5zj8QBEEQBEHQPxAEQRAEQdA/URRFURRF0T9RFEVRFEXRP5IkSZIkSdI/kiRJkiRJ0j/TNE3TNE3TP9M0TdM0TdM/FEVRFEVR1D8URVEURVHUP1VVVVVVVdU/VVVVVVVV1T+WZVmWZVnWP5ZlWZZlWdY/13Vd13Vd1z/XdV3XdV3XPxiGYRiGYdg/GIZhGIZh2D9ZlmVZlmXZP1mWZVmWZdk/mqZpmqZp2j+apmmapmnaP9u2bdu2bds/27Zt27Zt2z8cx3Ecx3HcPxzHcRzHcdw/Xdd1Xdd13T9d13Vd13XdP57neZ7ned4/nud5nud53j/f933f933fP9/3fd/3fd8/EARBEARB4D8QBEEQBEHgPzEMwzAMw+A/MQzDMAzD4D9RFEVRFEXhP1EURVEUReE/chzHcRzH4T9yHMdxHMfhP5IkSZIkSeI/kiRJkiRJ4j+zLMuyLMviP7Msy7Isy+I/0zRN0zRN4z/TNE3TNE3jP/Q8z/M8z+M/9DzP8zzP4z8URVEURVHkPxRFURRFUeQ/NU3TNE3T5D81TdM0TdPkP1VVVVVVVeU/VVVVVVVV5T92Xdd1XdflP3Zd13Vd1+U/lmVZlmVZ5j+WZVmWZVnmP7dt27Zt2+Y/t23btm3b5j/XdV3XdV3nP9d1Xdd1Xec/+H3f933f5z/4fd/3fd/nPxiGYRiGYeg/GIZhGIZh6D85juM4juPoPzmO4ziO4+g/WZZlWZZl6T9ZlmVZlmXpP3qe53me5+k/ep7neZ7n6T+apmmapmnqP5qmaZqmaeo/u67ruq7r6j+7ruu6ruvqP9u2bdu2bes/27Zt27Zt6z/8vu/7vu/rP/y+7/u+7+s/HMdxHMdx7D8cx3Ecx3HsPz3P8zzP8+w/Pc/zPM/z7D9d13Vd13XtP13XdV3Xde0/ft/3fd/37T9+3/d93/ftP57neZ7nee4/nud5nud57j+/7/u+7/vuP7/v+77v++4/3/d93/d97z/f933f933vPwAAAAAAAPA/AAAAAAAA8D/f933f933vP9/3fd/3fe8/v+/7vu/77j+/7/u+7/vuP57neZ7nee4/nud5nud57j9+3/d93/ftP37f933f9+0/Xdd1Xdd17T9d13Vd13XtPz3P8zzP8+w/Pc/zPM/z7D8cx3Ecx3HsPxzHcRzHcew//L7v+77v6z/8vu/7vu/rP9u2bdu2bes/27Zt27Zt6z+7ruu6ruvqP7uu67qu6+o/mqZpmqZp6j+apmmapmnqP3qe53me5+k/ep7neZ7n6T9ZlmVZlmXpP1mWZVmWZek/OY7jOI7j6D85juM4juPoPxiGYRiGYeg/GIZhGIZh6D/4fd/3fd/nP/h93/d93+c/13Vd13Vd5z/XdV3XdV3nP7dt27Zt2+Y/t23btm3b5j+WZVmWZVnmP5ZlWZZlWeY/dl3XdV3X5T92Xdd1XdflP1VVVVVVVeU/VVVVVVVV5T81TdM0TdPkPzVN0zRN0+Q/FEVRFEVR5D8URVEURVHkP/Q8z/M8z+M/9DzP8zzP4z/TNE3TNE3jP9M0TdM0TeM/syzLsizL4j+zLMuyLMviP5IkSZIkSeI/kiRJkiRJ4j9yHMdxHMfhP3Icx3Ecx+E/URRFURRF4T9RFEVRFEXhPzEMwzAMw+A/MQzDMAzD4D8QBEEQBEHgPxAEQRAEQeA/3/d93/d93z/f933f933fP57neZ7ned4/nud5nud53j9d13Vd13XdP13XdV3Xdd0/HMdxHMdx3D8cx3Ecx3HcP9u2bdu2bds/27Zt27Zt2z+apmmapmnaP5qmaZqmado/WZZlWZZl2T9ZlmVZlmXZPxiGYRiGYdg/GIZhGIZh2D/XdV3XdV3XP9d1Xdd1Xdc/lmVZlmVZ1j+WZVmWZVnWP1VVVVVVVdU/VVVVVVVV1T8URVEURVHUPxRFURRFUdQ/0zRN0zRN0z/TNE3TNE3TP5IkSZIkSdI/kiRJkiRJ0j9RFEVRFEXRP1EURVEURdE/EARBEARB0D8QBEEQBEHQP57neZ7nec4/nud5nud5zj8cx3Ecx3HMPxzHcRzHccw/mqZpmqZpyj+apmmapmnKPxiGYRiGYcg/GIZhGIZhyD+WZVmWZVnGP5ZlWZZlWcY/FEVRFEVRxD8URVEURVHEP5IkSZIkScI/kiRJkiRJwj8QBEEQBEHAPxAEQRAEQcA/HMdxHMdxvD8cx3Ecx3G8PxiGYRiGYbg/GIZhGIZhuD8URVEURVG0PxRFURRFUbQ/EARBEARBsD8QBEEQBEGwPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/EARBEARBkD8QBEEQBEGQPwAAAAAAAAAA\",\"dtype\":\"float64\",\"shape\":[252]}},\"selected\":{\"id\":\"7569\"},\"selection_policy\":{\"id\":\"7570\"}},\"id\":\"7178\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7194\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"7178\"}},\"id\":\"7182\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#6baed6\",\"line_alpha\":0,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7184\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"7569\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"7570\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]}},\"selected\":{\"id\":\"7571\"},\"selection_policy\":{\"id\":\"7572\"}},\"id\":\"7183\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#6baed6\",\"line_alpha\":0.1,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7185\",\"type\":\"Patch\"},{\"attributes\":{\"data_source\":{\"id\":\"7183\"},\"glyph\":{\"id\":\"7184\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7185\"},\"selection_glyph\":null,\"view\":{\"id\":\"7187\"}},\"id\":\"7186\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"7575\"},\"selection_policy\":{\"id\":\"7576\"}},\"id\":\"7193\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7189\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"7183\"}},\"id\":\"7187\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"7170\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"dYvSyMj8AcB1i9LIyPwBwKKo5xU64ve/oqjnFTri9787DzgHXffwvzsPOAdd9/C/dgjXWUGU5792CNdZQZTnv1zFdKmbQN6/XMV0qZtA3r9Y9O0rAEPQv1j07SsAQ9C/gJPwv2Kkrb+Ak/C/YqStv3CCOZgZBr8/cII5mBkGvz88dcLoiXzSPzx1wuiJfNI/FI+XTCS02z8Uj5dMJLTbP4w0HSXAO+I/jDQdJcA74j9c95unEXvmP1z3m6cRe+Y/dw8jeIhP6j93DyN4iE/qP59CWWOVH+4/n0JZY5Uf7j9IYUMVjerwP0hhQxWN6vA/XOnraaup8j9c6etpq6nyPwDzh4+mXvQ/APOHj6Ze9D9jss0/0vf1P2OyzT/S9/U/wF0PmpSG9z/AXQ+alIb3P5Bq5+rdAvk/kGrn6t0C+T/8uIRuyYf6P/y4hG7Jh/o//M4kg0r/+z/8ziSDSv/7P97QTKBicf0/3tBMoGJx/T99A+GK+t7+P30D4Yr63v4/DlacNJInAEAOVpw0kicAQKcDB+bP3wBApwMH5s/fAEBGepqtAooBQEZ6mq0CigFArTxGZT49AkCtPEZlPj0CQICBhBNC5gJAgIGEE0LmAkDU50/BDo4DQNTnT8EOjgNAjj8V3oY5BECOPxXehjkEQGORc+s+7wRAY5Fz6z7vBEDnrBAp/pYFQOesECn+lgVAhLWudvBCBkCEta528EIGQOzWgxwO9QZA7NaDHA71BkAO5LkIRp8HQA7kuQhGnwdABEEDqQNOCEAEQQOpA04IQCtadFad/ghAK1p0Vp3+CEACk59eBrEJQAKTn14GsQlAKUsWBy5mCkApSxYHLmYKQB6ZQD4wIwtAHplAPjAjC0BW5Ke9PtYLQFbkp70+1gtACY/qV1yMDEAJj+pXXIwMQChYZGVYTA1AKFhkZVhMDUCaobUHUhUOQJqhtQdSFQ5AKEs7iIbcDkAoSzuIhtwOQH1gDjEpqA9AfWAOMSmoD0D2VtEndD0QQPZW0Sd0PRBAUX80VNqrEEBRfzRU2qsQQF6WlbuwIxFAXpaVu7AjEUAWK9TlmpoRQBYr1OWamhFAlBMnFhIVEkCUEycWEhUSQKjlrxA/lxJAqOWvED+XEkB3ZtCSCCkTQHdm0JIIKRNAO6UdtMu/E0A7pR20y78TQGyj1tKdYRRAbKPW0p1hFEDEE4mZFhQVQMQTiZkWFBVAHQzpAx3XFUAdDOkDHdcVQOm2MWZkwxZA6bYxZmTDFkAIHTrvz8gXQAgdOu/PyBdAYp6LDuYSGUBinosO5hIZQDok21o42hpAOiTbWjjaGkBIx0HAbeodQEjHQcBt6h1A\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGwPxAEQRAEQbA/FEVRFEVRtD8URVEURVG0PxiGYRiGYbg/GIZhGIZhuD8cx3Ecx3G8PxzHcRzHcbw/EARBEARBwD8QBEEQBEHAP5IkSZIkScI/kiRJkiRJwj8URVEURVHEPxRFURRFUcQ/lmVZlmVZxj+WZVmWZVnGPxiGYRiGYcg/GIZhGIZhyD+apmmapmnKP5qmaZqmaco/HMdxHMdxzD8cx3Ecx3HMP57neZ7nec4/nud5nud5zj8QBEEQBEHQPxAEQRAEQdA/URRFURRF0T9RFEVRFEXRP5IkSZIkSdI/kiRJkiRJ0j/TNE3TNE3TP9M0TdM0TdM/FEVRFEVR1D8URVEURVHUP1VVVVVVVdU/VVVVVVVV1T+WZVmWZVnWP5ZlWZZlWdY/13Vd13Vd1z/XdV3XdV3XPxiGYRiGYdg/GIZhGIZh2D9ZlmVZlmXZP1mWZVmWZdk/mqZpmqZp2j+apmmapmnaP9u2bdu2bds/27Zt27Zt2z8cx3Ecx3HcPxzHcRzHcdw/Xdd1Xdd13T9d13Vd13XdP57neZ7ned4/nud5nud53j/f933f933fP9/3fd/3fd8/EARBEARB4D8QBEEQBEHgPzEMwzAMw+A/MQzDMAzD4D9RFEVRFEXhP1EURVEUReE/chzHcRzH4T9yHMdxHMfhP5IkSZIkSeI/kiRJkiRJ4j+zLMuyLMviP7Msy7Isy+I/0zRN0zRN4z/TNE3TNE3jP/Q8z/M8z+M/9DzP8zzP4z8URVEURVHkPxRFURRFUeQ/NU3TNE3T5D81TdM0TdPkP1VVVVVVVeU/VVVVVVVV5T92Xdd1XdflP3Zd13Vd1+U/lmVZlmVZ5j+WZVmWZVnmP7dt27Zt2+Y/t23btm3b5j/XdV3XdV3nP9d1Xdd1Xec/+H3f933f5z/4fd/3fd/nPxiGYRiGYeg/GIZhGIZh6D85juM4juPoPzmO4ziO4+g/WZZlWZZl6T9ZlmVZlmXpP3qe53me5+k/ep7neZ7n6T+apmmapmnqP5qmaZqmaeo/u67ruq7r6j+7ruu6ruvqP9u2bdu2bes/27Zt27Zt6z/8vu/7vu/rP/y+7/u+7+s/HMdxHMdx7D8cx3Ecx3HsPz3P8zzP8+w/Pc/zPM/z7D9d13Vd13XtP13XdV3Xde0/ft/3fd/37T9+3/d93/ftP57neZ7nee4/nud5nud57j+/7/u+7/vuP7/v+77v++4/3/d93/d97z/f933f933vPwAAAAAAAPA/\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"7573\"},\"selection_policy\":{\"id\":\"7574\"}},\"id\":\"7188\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"7188\"},\"glyph\":{\"id\":\"7189\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7190\"},\"selection_glyph\":null,\"view\":{\"id\":\"7192\"}},\"id\":\"7191\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":7.478934291853712},\"y\":{\"value\":true}},\"id\":\"7200\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"7193\"}},\"id\":\"7197\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"7188\"}},\"id\":\"7192\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"7571\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7190\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"7572\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"7581\"},\"selection_policy\":{\"id\":\"7582\"}},\"id\":\"7208\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7195\",\"type\":\"Ray\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"7577\"},\"selection_policy\":{\"id\":\"7578\"}},\"id\":\"7198\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"7193\"},\"glyph\":{\"id\":\"7194\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7195\"},\"selection_glyph\":null,\"view\":{\"id\":\"7197\"}},\"id\":\"7196\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":7.478934291853712},\"y\":{\"value\":true}},\"id\":\"7199\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"7203\"},\"glyph\":{\"id\":\"7204\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7205\"},\"selection_glyph\":null,\"view\":{\"id\":\"7207\"}},\"id\":\"7206\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"7198\"}},\"id\":\"7202\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"7573\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"7198\"},\"glyph\":{\"id\":\"7199\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7200\"},\"selection_glyph\":null,\"view\":{\"id\":\"7202\"}},\"id\":\"7201\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7574\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+LOz60gYj2v7C5gwZs9Oy/sLmDBmz07L8ssS0lwl7rvyyxLSXCXuu/2OgIQbPb6r/Y6AhBs9vqv4TzGy4wg+W/hPMbLjCD5b8gYLZOUOvWvyBgtk5Q69a/oPNotLbru7+g82i0tuu7v/+hWppmtYa//6Famma1hr9wc0wKLHvEP3BzTAose8Q/jC5xcdgZ0D+MLnFx2BnQPxukCFbVneI/G6QIVtWd4j98bupFejDkP3xu6kV6MOQ/isWJ3jrg5j+KxYneOuDmP9Sqfqr+Eec/1Kp+qv4R5z8GzXgglZTpPwbNeCCVlOk/YqFSkKMH6z9ioVKQowfrP+Tn7IUXEO8/5OfshRcQ7z/+VAptLxz2P/5UCm0vHPY/yevkGXNw9j/J6+QZc3D2PxekwW87mfg/F6TBbzuZ+D8z2VxR2BX5PzPZXFHYFfk/sWtzqy9z+j+xa3OrL3P6PycGgFgtgfs/JwaAWC2B+z9jU2HFxzT8P2NTYcXHNPw/ErR8Etfr/D8StHwS1+v8P8H+rPAJQf0/wf6s8AlB/T+W0oCotgEAQJbSgKi2AQBAkD3rA1VTAECQPesDVVMAQBRf/2ptXAFAFF//am1cAUCoSqvTnfkCQKhKq9Od+QJAmnDiLR65A0CacOItHrkDQLZT7xN+9gNAtlPvE372A0BSm/mZEUUEQFKb+ZkRRQRAlbOUu5X6BECVs5S7lfoEQN0nmFOHzAVA3SeYU4fMBUAJKo7FTQIGQAkqjsVNAgZAlY5kstNICECVjmSy00gIQNSxCE4mkAlA1LEITiaQCUCMBvG+NucKQIwG8b425wpAD1JnsLv7CkAPUmewu/sKQAALPJQ3qQtAAAs8lDepC0DOyPyH/0INQM7I/If/Qg1ALjpvuOqeDUAuOm+46p4NQCswiNfg6g5AKzCI1+DqDkAl4KmBSCcQQCXgqYFIJxBAikns7XB1EECKSeztcHUQQNfjHdZKkhBA1+Md1kqSEEBXwz5yQ/sQQFfDPnJD+xBA6A6Mv71eEUDoDoy/vV4RQMWolVy3dRFAxaiVXLd1EUBEKrjJdFwSQEQquMl0XBJA7tR2sUXHEkDu1HaxRccSQPtThImL+hJA+1OEiYv6EkCss00mVT8TQKyzTSZVPxNAjONZSMZjE0CM41lIxmMTQCSfU+ouihNAJJ9T6i6KE0D/L8kAXY4TQP8vyQBdjhNAsVCI1Vx2FUCxUIjVXHYVQJ2kT2YtVxZAnaRPZi1XFkCm2xWdeiYYQKbbFZ16JhhA986C95VmGED3zoL3lWYYQBYAM7z0CxtAFgAzvPQLG0D/cMw4Bg4iQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGwPxAEQRAEQbA/FEVRFEVRtD8URVEURVG0PxiGYRiGYbg/GIZhGIZhuD8cx3Ecx3G8PxzHcRzHcbw/EARBEARBwD8QBEEQBEHAP5IkSZIkScI/kiRJkiRJwj8URVEURVHEPxRFURRFUcQ/lmVZlmVZxj+WZVmWZVnGPxiGYRiGYcg/GIZhGIZhyD+apmmapmnKP5qmaZqmaco/HMdxHMdxzD8cx3Ecx3HMP57neZ7nec4/nud5nud5zj8QBEEQBEHQPxAEQRAEQdA/URRFURRF0T9RFEVRFEXRP5IkSZIkSdI/kiRJkiRJ0j/TNE3TNE3TP9M0TdM0TdM/FEVRFEVR1D8URVEURVHUP1VVVVVVVdU/VVVVVVVV1T+WZVmWZVnWP5ZlWZZlWdY/13Vd13Vd1z/XdV3XdV3XPxiGYRiGYdg/GIZhGIZh2D9ZlmVZlmXZP1mWZVmWZdk/mqZpmqZp2j+apmmapmnaP9u2bdu2bds/27Zt27Zt2z8cx3Ecx3HcPxzHcRzHcdw/Xdd1Xdd13T9d13Vd13XdP57neZ7ned4/nud5nud53j/f933f933fP9/3fd/3fd8/EARBEARB4D8QBEEQBEHgPzEMwzAMw+A/MQzDMAzD4D9RFEVRFEXhP1EURVEUReE/chzHcRzH4T9yHMdxHMfhP5IkSZIkSeI/kiRJkiRJ4j+zLMuyLMviP7Msy7Isy+I/0zRN0zRN4z/TNE3TNE3jP/Q8z/M8z+M/9DzP8zzP4z8URVEURVHkPxRFURRFUeQ/NU3TNE3T5D81TdM0TdPkP1VVVVVVVeU/VVVVVVVV5T92Xdd1XdflP3Zd13Vd1+U/lmVZlmVZ5j+WZVmWZVnmP7dt27Zt2+Y/t23btm3b5j/XdV3XdV3nP9d1Xdd1Xec/+H3f933f5z/4fd/3fd/nPxiGYRiGYeg/GIZhGIZh6D85juM4juPoPzmO4ziO4+g/WZZlWZZl6T9ZlmVZlmXpP3qe53me5+k/ep7neZ7n6T+apmmapmnqP5qmaZqmaeo/u67ruq7r6j+7ruu6ruvqP9u2bdu2bes/27Zt27Zt6z/8vu/7vu/rP/y+7/u+7+s/HMdxHMdx7D8cx3Ecx3HsPz3P8zzP8+w/Pc/zPM/z7D9d13Vd13XtP13XdV3Xde0/ft/3fd/37T9+3/d93/ftP57neZ7nee4/nud5nud57j+/7/u+7/vuP7/v+77v++4/3/d93/d97z/f933f933vPwAAAAAAAPA/\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"7579\"},\"selection_policy\":{\"id\":\"7580\"}},\"id\":\"7203\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-1.4083268204446735},\"y\":{\"value\":0.0}},\"id\":\"7209\",\"type\":\"Ray\"},{\"attributes\":{\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7204\",\"type\":\"Line\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":9.027391219097352},\"y\":{\"value\":true}},\"id\":\"7215\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"7208\"}},\"id\":\"7212\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"7203\"}},\"id\":\"7207\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7205\",\"type\":\"Line\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-1.4083268204446735},\"y\":{\"value\":0.0}},\"id\":\"7210\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"7575\",\"type\":\"Selection\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":9.027391219097352},\"y\":{\"value\":true}},\"id\":\"7214\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"7576\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"7208\"},\"glyph\":{\"id\":\"7209\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7210\"},\"selection_glyph\":null,\"view\":{\"id\":\"7212\"}},\"id\":\"7211\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"7583\"},\"selection_policy\":{\"id\":\"7584\"}},\"id\":\"7213\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"7579\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"7213\"}},\"id\":\"7217\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"7213\"},\"glyph\":{\"id\":\"7214\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7215\"},\"selection_glyph\":null,\"view\":{\"id\":\"7217\"}},\"id\":\"7216\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7582\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7564\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"7566\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"7581\",\"type\":\"Selection\"}],\"root_ids\":[\"7147\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"32ec9b75-4184-4373-bf1f-c64e14756b13\",\"root_ids\":[\"7147\"],\"roots\":{\"7147\":\"4c0c0ce3-4dfb-4d94-b165-c361ef0778dc\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "7147" } }, "output_type": "display_data" } ], "source": [ "p = bebi103.viz.predictive_ecdf(data=df['x'], samples=samples)\n", "bokeh.io.show(p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The orange curve is the ECDF of the data. The dark blue curve in the center is the median ECDF of the samples. By default, the coloring shows the middle 68th and middle 95th percentiles of the ECDFs from samples out of the generative model.\n", "\n", "Predictive ECDFs are often easier to look at as differences from the median. We can consider two different differences. First, we can take each value of the ECDF and look at how different the x-values are from the median. Second, we can consider each value of *x* and look at how different the value of the ECDF is. In the first case, we are looking at an inverse ECDF (IECDF). We can look at either different plot using the `diff` kwarg." ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "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 = {\"7797d73c-b585-4894-a378-778785296ef2\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"7723\"},{\"id\":\"7840\"},{\"id\":\"7774\"}]},\"id\":\"7841\",\"type\":\"Column\"},{\"attributes\":{},\"id\":\"8239\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8240\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7730\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"8217\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8219\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"7775\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"8241\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8242\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7777\",\"type\":\"DataRange1d\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8210\",\"type\":\"Title\"},{\"attributes\":{\"height\":30},\"id\":\"7840\",\"type\":\"Spacer\"},{\"attributes\":{},\"id\":\"7724\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"8213\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data_source\":{\"id\":\"7805\"},\"glyph\":{\"id\":\"7806\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7807\"},\"selection_glyph\":null,\"view\":{\"id\":\"7809\"}},\"id\":\"7808\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]}},\"selected\":{\"id\":\"8224\"},\"selection_policy\":{\"id\":\"8225\"}},\"id\":\"7759\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8243\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8244\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"8215\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"axis_label\":\"x difference\",\"formatter\":{\"id\":\"8215\"},\"ticker\":{\"id\":\"7733\"}},\"id\":\"7732\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#9ecae1\",\"line_alpha\":0,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7806\",\"type\":\"Patch\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"7791\"},{\"id\":\"7792\"},{\"id\":\"7793\"},{\"id\":\"7794\"},{\"id\":\"7795\"},{\"id\":\"7796\"}]},\"id\":\"7798\",\"type\":\"Toolbar\"},{\"attributes\":{\"source\":{\"id\":\"7805\"}},\"id\":\"7809\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"7759\"},\"glyph\":{\"id\":\"7760\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7761\"},\"selection_glyph\":null,\"view\":{\"id\":\"7763\"}},\"id\":\"7762\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"7754\"}},\"id\":\"7758\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#9ecae1\",\"line_alpha\":0.1,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7756\",\"type\":\"Patch\"},{\"attributes\":{\"data\":{\"x\":[0.0,0.0],\"y\":[0.0,1.0]},\"selected\":{\"id\":\"8226\"},\"selection_policy\":{\"id\":\"8227\"}},\"id\":\"7764\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"7746\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"7764\"},\"glyph\":{\"id\":\"7765\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7766\"},\"selection_glyph\":null,\"view\":{\"id\":\"7768\"}},\"id\":\"7767\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[266]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[266]}},\"selected\":{\"id\":\"8231\"},\"selection_policy\":{\"id\":\"8232\"}},\"id\":\"7805\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"7759\"}},\"id\":\"7763\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"7797\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"below\":[{\"id\":\"7783\"}],\"center\":[{\"id\":\"7786\"},{\"id\":\"7790\"}],\"frame_height\":175,\"frame_width\":400,\"left\":[{\"id\":\"7787\"}],\"renderers\":[{\"id\":\"7808\"},{\"id\":\"7813\"},{\"id\":\"7818\"},{\"id\":\"7823\"},{\"id\":\"7828\"},{\"id\":\"7833\"},{\"id\":\"7838\"}],\"title\":{\"id\":\"8212\"},\"toolbar\":{\"id\":\"7798\"},\"x_range\":{\"id\":\"7775\"},\"x_scale\":{\"id\":\"7779\"},\"y_range\":{\"id\":\"7777\"},\"y_scale\":{\"id\":\"7781\"}},\"id\":\"7774\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"axis\":{\"id\":\"7732\"},\"ticker\":null},\"id\":\"7735\",\"type\":\"Grid\"},{\"attributes\":{\"axis\":{\"id\":\"7736\"},\"dimension\":1,\"ticker\":null},\"id\":\"7739\",\"type\":\"Grid\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"8235\"},\"selection_policy\":{\"id\":\"8236\"}},\"id\":\"7815\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[260]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBkD8QBEEQBEGQPxAEQRAEQaA/EARBEARBoD8QBEEQBEGgPxAEQRAEQaA/EARBEARBoD8QBEEQBEGgPxAEQRAEQaA/EARBEARBoD8YhmEYhmGoPxiGYRiGYag/GIZhGIZhqD8YhmEYhmGoPxiGYRiGYag/GIZhGIZhqD8YhmEYhmGoPxiGYRiGYag/GIZhGIZhqD8YhmEYhmGoPxiGYRiGYag/GIZhGIZhqD8YhmEYhmGoPxiGYRiGYag/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxQEQRAEQbA/FARBEARBsD8QBEEQBEGwPxAEQRAEQbA/FARBEARBsD8UBEEQBEGwPxRFURRFUbQ/FEVRFEVRtD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxhFURRFUbQ/GEVRFEVRtD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8QBEEQBEGwPxAEQRAEQbA/EARBEARBsD8ghmEYhmGoPyCGYRiGYag/EIZhGIZhqD8QhmEYhmGoPyCGYRiGYag/IIZhGIZhqD8QhmEYhmGoPxCGYRiGYag/IIZhGIZhqD8ghmEYhmGoPxCGYRiGYag/EIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/EARBEARBoD8QBEEQBEGgPxAEQRAEQaA/EARBEARBoD8gBEEQBEGQPyAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEEQBEGQvwAEQRAEQZC/IARBEARBkL8gBEEQBEGQvwAEQRAEQZC/AARBEARBkL8gBEEQBEGQvyAEQRAEQZC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvyCGYRiGYai/IIZhGIZhqL8QhmEYhmGovxCGYRiGYai/IIZhGIZhqL8ghmEYhmGovxCGYRiGYai/EIZhGIZhqL8ghmEYhmGovyCGYRiGYai/EIZhGIZhqL8QhmEYhmGovyCGYRiGYai/IIZhGIZhqL8QhmEYhmGovxCGYRiGYai/IIZhGIZhqL8ghmEYhmGovxCGYRiGYai/EIZhGIZhqL8ghmEYhmGovyCGYRiGYai/EIZhGIZhqL8QhmEYhmGovyCGYRiGYai/IIZhGIZhqL8QhmEYhmGovxCGYRiGYai/IIZhGIZhqL8ghmEYhmGovxCGYRiGYai/EIZhGIZhqL8ghmEYhmGovyCGYRiGYai/EIZhGIZhqL8QhmEYhmGovxAEQRAEQbC/EARBEARBsL8UBEEQBEGwvxQEQRAEQbC/EARBEARBsL8QBEEQBEGwvxQEQRAEQbC/FARBEARBsL8YhmEYhmGovxiGYRiGYai/EARBEARBsL8QBEEQBEGwvxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/GIZhGIZhqL8YhmEYhmGovxiGYRiGYai/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBoL8QBEEQBEGgvxAEQRAEQaC/EARBEARBkL8QBEEQBEGQvxAEQRAEQZC/EARBEARBkL8QBEEQBEGQvxAEQRAEQZC/EARBEARBoL8QBEEQBEGgvxAEQRAEQZC/EARBEARBkL8AAAAAAAAAAA==\",\"dtype\":\"float64\",\"shape\":[260]}},\"selected\":{\"id\":\"8233\"},\"selection_policy\":{\"id\":\"8234\"}},\"id\":\"7810\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"7726\",\"type\":\"DataRange1d\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#6baed6\",\"line_alpha\":0,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7811\",\"type\":\"Patch\"},{\"attributes\":{\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7765\",\"type\":\"Line\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#9ecae1\",\"line_alpha\":0.1,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7807\",\"type\":\"Patch\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7766\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"7754\"},\"glyph\":{\"id\":\"7755\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7756\"},\"selection_glyph\":null,\"view\":{\"id\":\"7758\"}},\"id\":\"7757\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7740\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"7744\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#6baed6\",\"line_alpha\":0.1,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7761\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"7743\",\"type\":\"SaveTool\"},{\"attributes\":{\"overlay\":{\"id\":\"7746\"}},\"id\":\"7742\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"7745\",\"type\":\"HelpTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"7740\"},{\"id\":\"7741\"},{\"id\":\"7742\"},{\"id\":\"7743\"},{\"id\":\"7744\"},{\"id\":\"7745\"}]},\"id\":\"7747\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"7733\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis_label\":\"ECDF\",\"formatter\":{\"id\":\"8213\"},\"ticker\":{\"id\":\"7737\"}},\"id\":\"7736\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"7737\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"7728\",\"type\":\"LinearScale\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7816\",\"type\":\"Ray\"},{\"attributes\":{\"below\":[{\"id\":\"7732\"}],\"center\":[{\"id\":\"7735\"},{\"id\":\"7739\"}],\"frame_height\":175,\"frame_width\":400,\"left\":[{\"id\":\"7736\"}],\"renderers\":[{\"id\":\"7757\"},{\"id\":\"7762\"},{\"id\":\"7767\"},{\"id\":\"7772\"}],\"title\":{\"id\":\"8210\"},\"toolbar\":{\"id\":\"7747\"},\"x_range\":{\"id\":\"7724\"},\"x_scale\":{\"id\":\"7728\"},\"y_range\":{\"id\":\"7726\"},\"y_scale\":{\"id\":\"7730\"}},\"id\":\"7723\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"7741\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#6baed6\",\"line_alpha\":0.1,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7812\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"7794\",\"type\":\"SaveTool\"},{\"attributes\":{\"source\":{\"id\":\"7764\"}},\"id\":\"7768\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"8241\"},\"selection_policy\":{\"id\":\"8242\"}},\"id\":\"7830\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"7815\"}},\"id\":\"7819\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8226\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"7788\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"8227\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"7795\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"7830\"},\"glyph\":{\"id\":\"7831\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7832\"},\"selection_glyph\":null,\"view\":{\"id\":\"7834\"}},\"id\":\"7833\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"7779\",\"type\":\"LinearScale\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7821\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"7825\"},\"glyph\":{\"id\":\"7826\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7827\"},\"selection_glyph\":null,\"view\":{\"id\":\"7829\"}},\"id\":\"7828\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8228\",\"type\":\"Selection\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#9ecae1\",\"line_alpha\":0,\"line_color\":\"#9ecae1\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7755\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"8229\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"7820\"},\"glyph\":{\"id\":\"7821\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7822\"},\"selection_glyph\":null,\"view\":{\"id\":\"7824\"}},\"id\":\"7823\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"7769\"},\"glyph\":{\"id\":\"7770\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7771\"},\"selection_glyph\":null,\"view\":{\"id\":\"7773\"}},\"id\":\"7772\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis_label\":\"ECDF difference\",\"formatter\":{\"id\":\"8217\"},\"ticker\":{\"id\":\"7788\"}},\"id\":\"7787\",\"type\":\"LinearAxis\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":9.027391219097352},\"y\":{\"value\":false}},\"id\":\"7836\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"7830\"}},\"id\":\"7834\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"7792\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"7769\"}},\"id\":\"7773\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7771\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]}},\"selected\":{\"id\":\"8222\"},\"selection_policy\":{\"id\":\"8223\"}},\"id\":\"7754\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"axis\":{\"id\":\"7787\"},\"dimension\":1,\"ticker\":null},\"id\":\"7790\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"7810\"},\"glyph\":{\"id\":\"7811\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7812\"},\"selection_glyph\":null,\"view\":{\"id\":\"7814\"}},\"id\":\"7813\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"7835\"},\"glyph\":{\"id\":\"7836\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7837\"},\"selection_glyph\":null,\"view\":{\"id\":\"7839\"}},\"id\":\"7838\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7826\",\"type\":\"Line\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"#6baed6\",\"line_alpha\":0,\"line_color\":\"#6baed6\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7760\",\"type\":\"Patch\"},{\"attributes\":{\"axis_label\":\"x\",\"formatter\":{\"id\":\"8219\"},\"ticker\":{\"id\":\"7784\"}},\"id\":\"7783\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"vrbNuh/i6j++ts26H+LqP5SXSyUI0OI/lJdLJQjQ4j8otQml3z/KPyi1CaXfP8o/EAOPOY87ur8QA485jzu6v1hDhmWJi8m/WEOGZYmLyb8gryGLQKG6vyCvIYtAobq/wFPhqAozqr/AU+GoCjOqv1hrwjVj7sC/WGvCNWPuwL8IdzjH533Avwh3OMfnfcC/EMFMtpc0x78QwUy2lzTHv8Dj2zpMhYg/wOPbOkyFiD8AR4wNu1SyvwBHjA27VLK/aE/KzGx6u79oT8rMbHq7vyxfauNaNsy/LF9q41o2zL8U6xsUCoHQvxTrGxQKgdC/rGIKh2aX1L+sYgqHZpfUvzj8RTJrWtO/OPxFMmta07+ATVGeli6CP4BNUZ6WLoI/cB+nAhhisb9wH6cCGGKxv0CeccmeaJq/QJ5xyZ5omr+Q/H3SER+3v5D8fdIRH7e/sDQWe63BuL+wNBZ7rcG4v3CrzHxUA7+/cKvMfFQDv7/QgP0rllHFv9CA/SuWUcW/UMDftWoay79QwN+1ahrLvzQihG1X+tG/NCKEbVf60b8Ae5pRwITIvwB7mlHAhMi/0PGvFZaezr/Q8a8Vlp7Ov8AmUohKnci/wCZSiEqdyL+ApZO0HY6yv4Clk7QdjrK/gN5ZBhYNsL+A3lkGFg2wv6C1h/AaGL+/oLWH8BoYv79QGXHxyB7Fv1AZcfHIHsW/8B6gsauFxL/wHqCxq4XEv/Dwuo5siMK/8PC6jmyIwr9QoLsyhM/Jv1CguzKEz8m/ALzJetq/ZL8AvMl62r9kvyD1ivIeMbI/IPWK8h4xsj+gOBcFBmPDP6A4FwUGY8M/wNwgKrWxsj/A3CAqtbGyP0A8br/qwLA/QDxuv+rAsD+AR06lDMzGP4BHTqUMzMY/ULJKCOYowT9QskoI5ijBPzCAPSKH6Mk/MIA9IofoyT+A9fDc98nRP4D18Nz3ydE/YD/qnNpy0D9gP+qc2nLQPxBz1rLHxsc/EHPWssfGxz8gjK1N6bnHPyCMrU3pucc/4PLxam1cxj/g8vFqbVzGP8CZBECogbQ/wJkEQKiBtD/A5X98PDvIP8Dlf3w8O8g/QCv4aXNGxj9AK/hpc0bGP8CUGzUe07g/wJQbNR7TuD8ANU19k0yWPwA1TX2TTJY/wGvw8FoBt7/Aa/DwWgG3vwCJYBDd7cq/AIlgEN3tyr9QPP6LmVvYv1A8/ouZW9i/ANsumAswuL8A2y6YCzC4vwCThPi/Dbu/AJOE+L8Nu7+Ap+92q2q3P4Cn73ararc/YO0Z4QKKxb9g7RnhAorFvwDu7asw3qg/AO7tqzDeqD/YalzFesb4P9hqXMV6xvg/\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGwPxAEQRAEQbA/FEVRFEVRtD8URVEURVG0PxiGYRiGYbg/GIZhGIZhuD8cx3Ecx3G8PxzHcRzHcbw/EARBEARBwD8QBEEQBEHAP5IkSZIkScI/kiRJkiRJwj8URVEURVHEPxRFURRFUcQ/lmVZlmVZxj+WZVmWZVnGPxiGYRiGYcg/GIZhGIZhyD+apmmapmnKP5qmaZqmaco/HMdxHMdxzD8cx3Ecx3HMP57neZ7nec4/nud5nud5zj8QBEEQBEHQPxAEQRAEQdA/URRFURRF0T9RFEVRFEXRP5IkSZIkSdI/kiRJkiRJ0j/TNE3TNE3TP9M0TdM0TdM/FEVRFEVR1D8URVEURVHUP1VVVVVVVdU/VVVVVVVV1T+WZVmWZVnWP5ZlWZZlWdY/13Vd13Vd1z/XdV3XdV3XPxiGYRiGYdg/GIZhGIZh2D9ZlmVZlmXZP1mWZVmWZdk/mqZpmqZp2j+apmmapmnaP9u2bdu2bds/27Zt27Zt2z8cx3Ecx3HcPxzHcRzHcdw/Xdd1Xdd13T9d13Vd13XdP57neZ7ned4/nud5nud53j/f933f933fP9/3fd/3fd8/EARBEARB4D8QBEEQBEHgPzEMwzAMw+A/MQzDMAzD4D9RFEVRFEXhP1EURVEUReE/chzHcRzH4T9yHMdxHMfhP5IkSZIkSeI/kiRJkiRJ4j+zLMuyLMviP7Msy7Isy+I/0zRN0zRN4z/TNE3TNE3jP/Q8z/M8z+M/9DzP8zzP4z8URVEURVHkPxRFURRFUeQ/NU3TNE3T5D81TdM0TdPkP1VVVVVVVeU/VVVVVVVV5T92Xdd1XdflP3Zd13Vd1+U/lmVZlmVZ5j+WZVmWZVnmP7dt27Zt2+Y/t23btm3b5j/XdV3XdV3nP9d1Xdd1Xec/+H3f933f5z/4fd/3fd/nPxiGYRiGYeg/GIZhGIZh6D85juM4juPoPzmO4ziO4+g/WZZlWZZl6T9ZlmVZlmXpP3qe53me5+k/ep7neZ7n6T+apmmapmnqP5qmaZqmaeo/u67ruq7r6j+7ruu6ruvqP9u2bdu2bes/27Zt27Zt6z/8vu/7vu/rP/y+7/u+7+s/HMdxHMdx7D8cx3Ecx3HsPz3P8zzP8+w/Pc/zPM/z7D9d13Vd13XtP13XdV3Xde0/ft/3fd/37T9+3/d93/ftP57neZ7nee4/nud5nud57j+/7/u+7/vuP7/v+77v++4/3/d93/d97z/f933f933vPwAAAAAAAPA/\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"8228\"},\"selection_policy\":{\"id\":\"8229\"}},\"id\":\"7769\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8231\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"7825\"}},\"id\":\"7829\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8232\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"axis\":{\"id\":\"7783\"},\"ticker\":null},\"id\":\"7786\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"7791\",\"type\":\"PanTool\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"8243\"},\"selection_policy\":{\"id\":\"8244\"}},\"id\":\"7835\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"7781\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"7810\"}},\"id\":\"7814\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"7796\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"8233\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"7835\"}},\"id\":\"7839\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8234\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7770\",\"type\":\"Line\"},{\"attributes\":{\"overlay\":{\"id\":\"7797\"}},\"id\":\"7793\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7831\",\"type\":\"Ray\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"orange\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"7827\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"7784\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"8237\"},\"selection_policy\":{\"id\":\"8238\"}},\"id\":\"7820\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8235\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8222\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8236\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7817\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"8223\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8212\",\"type\":\"Title\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":9.027391219097352},\"y\":{\"value\":false}},\"id\":\"7837\",\"type\":\"Ray\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7832\",\"type\":\"Ray\"},{\"attributes\":{\"angle\":{\"units\":\"rad\",\"value\":0},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#084594\"},\"line_width\":{\"value\":2},\"x\":{\"value\":-2.2484298409703407},\"y\":{\"value\":0.0}},\"id\":\"7822\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"8237\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8238\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"8224\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"7815\"},\"glyph\":{\"id\":\"7816\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"7817\"},\"selection_glyph\":null,\"view\":{\"id\":\"7819\"}},\"id\":\"7818\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8225\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"7820\"}},\"id\":\"7824\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[252]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAQBEEQBEGQvxAEQRAEQZC/EARBEARBoL8QBEEQBEGgvxAEQRAEQZC/EARBEARBkL8QBEEQBEGgvxAEQRAEQaC/EARBEARBkL8QBEEQBEGQvwAAAAAAAAAAAAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAABAEQRAEQZA/EARBEARBkD8AAAAAAAAAAAAAAAAAAAAAEARBEARBkD8QBEEQBEGQPwAAAAAAAAAAAAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAABAEQRAEQZA/EARBEARBkD8AAAAAAAAAAAAAAAAAAAAAEARBEARBkD8QBEEQBEGQPxAEQRAEQaA/EARBEARBoD8QBEEQBEGQPxAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAABAEQRAEQZC/EARBEARBkL8AAAAAAAAAAAAAAAAAAAAAEARBEARBkD8QBEEQBEGQPwAAAAAAAAAAAAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/GIZhGIZhqD8YhmEYhmGoPxAEQRAEQaA/EARBEARBoD8YhmEYhmGoPxiGYRiGYag/EARBEARBoD8QBEEQBEGgPxAEQRAEQZA/EARBEARBkD8AAAAAAAAAAAAAAAAAAAAAEARBEARBkL8QBEEQBEGQvwAAAAAAAAAAAAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAABAEQRAEQZA/EARBEARBkD8AAAAAAAAAAAAAAAAAAAAAEARBEARBkD8QBEEQBEGQPxAEQRAEQaA/EARBEARBoD8QBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxAEQRAEQZA/EARBEARBkD8QBEEQBEGgPxAEQRAEQaA/GIZhGIZhqD8YhmEYhmGoPxAEQRAEQbA/EARBEARBsD8YhmEYhmGoPxiGYRiGYag/EARBEARBoD8QBEEQBEGgPxiGYRiGYag/GIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/GIZhGIZhqD8YhmEYhmGoPxAEQRAEQaA/EARBEARBoD8YhmEYhmGoPxiGYRiGYag/EARBEARBoD8QBEEQBEGgPxAEQRAEQZA/EARBEARBkD8AAAAAAAAAAAAAAAAAAAAAEARBEARBkD8QBEEQBEGQPwAAAAAAAAAAAAAAAAAAAAAQBEEQBEGQPxAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxAEQRAEQZA/EARBEARBkD8YBEEQBEGgPxgEQRAEQaA/IARBEARBkD8gBEEQBEGQPxAEQRAEQaA/EARBEARBoD8ABEEQBEGQPwAEQRAEQZA/EARBEARBoD8QBEEQBEGgPxCGYRiGYag/EIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/AARBEARBkD8ABEEQBEGQPwAAAAAAAAAAAAAAAAAAAAAgBEEQBEGQPyAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAAAAEQRAEQZC/AARBEARBkL8AAAAAAAAAAAAAAAAAAAAAIARBEARBkL8gBEEQBEGQvxAEQRAEQaC/EARBEARBoL8ABEEQBEGQvwAEQRAEQZC/AAAAAAAAAAAAAAAAAAAAACAEQRAEQZC/IARBEARBkL8AAAAAAAAAAAAAAAAAAAAAAARBEARBkL8ABEEQBEGQvxAEQRAEQaC/EARBEARBoL8gBEEQBEGQvyAEQRAEQZC/EARBEARBoL8QBEEQBEGgvwAEQRAEQZC/AARBEARBkL8QBEEQBEGgvxAEQRAEQaC/EIZhGIZhqL8QhmEYhmGovxAEQRAEQaC/EARBEARBoL8ghmEYhmGovyCGYRiGYai/EARBEARBoL8QBEEQBEGgvxCGYRiGYai/EIZhGIZhqL8QBEEQBEGgvxAEQRAEQaC/AARBEARBkL8ABEEQBEGQvxAEQRAEQaC/EARBEARBoL8gBEEQBEGQvyAEQRAEQZC/EARBEARBoL8QBEEQBEGgvwAEQRAEQZC/AARBEARBkL8AAAAAAAAAAAAAAAAAAAAAIARBEARBkL8gBEEQBEGQvxAEQRAEQaC/EARBEARBoL8ABEEQBEGQvwAEQRAEQZC/EARBEARBoL8QBEEQBEGgvyAEQRAEQZC/IARBEARBkL8AAAAAAAAAAAAAAAAAAAAAAARBEARBkL8ABEEQBEGQvwAAAAAAAAAAAAAAAAAAAAAgBEEQBEGQPyAEQRAEQZA/EARBEARBoD8QBEEQBEGgPyCGYRiGYag/IIZhGIZhqD8QBEEQBEGgPxAEQRAEQaA/IARBEARBkD8gBEEQBEGQPwAAAAAAAAAAAAAAAAAAAAAABEEQBEGQPwAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAACAEQRAEQZA/IARBEARBkD8AAAAAAAAAAAAAAAAAAAAAAARBEARBkL8ABEEQBEGQvwAAAAAAAAAAAAAAAAAAAAAgBEEQBEGQPyAEQRAEQZA/AAAAAAAAAAAAAAAAAAAAAAAEQRAEQZC/AARBEARBkL8AAAAAAAAAAAAAAAAAAAAAIARBEARBkL8gBEEQBEGQvwAAAAAAAAAA\",\"dtype\":\"float64\",\"shape\":[252]}},\"selected\":{\"id\":\"8239\"},\"selection_policy\":{\"id\":\"8240\"}},\"id\":\"7825\",\"type\":\"ColumnDataSource\"}],\"root_ids\":[\"7841\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"7797d73c-b585-4894-a378-778785296ef2\",\"root_ids\":[\"7841\"],\"roots\":{\"7841\":\"9366ab9b-bc6e-4a34-afaa-3e9588004a13\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "7841" } }, "output_type": "display_data" } ], "source": [ "p_iecdf = bebi103.viz.predictive_ecdf(\n", " data=df[\"x\"], samples=samples, diff=\"iecdf\", frame_height=175\n", ")\n", "\n", "p_ecdf = bebi103.viz.predictive_ecdf(\n", " data=df[\"x\"], samples=samples, diff=\"ecdf\", frame_height=175\n", ")\n", "\n", "\n", "bokeh.io.show(\n", " bokeh.layouts.column([p_iecdf, bokeh.layouts.Spacer(height=30), p_ecdf])\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### MLE for a multivariate data set\n", "\n", "The MLE analysis generalizes to multivariate data. As a simple example, we will consider a bivariate example where $y$ is a linear function of $x$.\n", "\n", "\\begin{align}\n", "y_i \\sim \\text{Norm}(a_0 + a_1 x_i, \\sigma) \\;\\;\\forall i.\n", "\\end{align}\n", "\n", "The MLE for $a_0$, and $a_1$ are given by the slope and intercept from a least squares calculation, and the MLE for $\\sigma$ is given by\n", "\n", "\\begin{align}\n", "\\sigma_\\mathrm{MLE} = \\sqrt{\\text{RSS}/n},\n", "\\end{align}\n", "\n", "where RSS is the residual sum of squares. We can write `mle_fun()` to return the MLEs for the three parameters." ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [], "source": [ "def mle_fun(y, x):\n", " \"\"\"Given x, y data and a linear model with homoscedastic error, \n", " compute MLE for slope, intercept, and standard deviation.\"\"\"\n", " # Obtain MLEs\n", " a1, a0 = np.polyfit(x, y, deg=1)\n", " sigma = np.sqrt(np.sum((a0 + a1 * x - y)**2) / len(x))\n", " \n", " return a0, a1, sigma" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note that we have identified the dependent variable *y* as the \"data,\" and the independent variable *x* as a \"parameter.\"\n", "\n", "We can use this function to get the MLEs." ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [], "source": [ "x = df[\"x\"].values\n", "y = df[\"y\"].values\n", "\n", "mle_params = mle_fun(y, x)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To obtain bootstrap replicates of the MLE using `bebi103.bootstrap.draw_bs_reps_mle()`, we need to specify a function to generate data from the model. As with the MLE function, we need to pass an additional parameter here, `x`, the values of the dependent variable." ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [], "source": [ "def gen_fun(params, x, size, rg):\n", " \"\"\"Generate a new data set\"\"\"\n", " a0, a1, sigma = params\n", " \n", " return rg.normal(a0 + a1 * x, sigma)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can now draw our bootstrap replicates and compute confidence intervals for the MLEs. We use the `mle_args` and `gen_args` keyword arguments to specify the `x` must be passed as an argument to `mle_fun()` and `gen_fun()`. In this case, we will use the `n_jobs` kwargs to enable parallel acquisition of the bootstrap samples." ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.15616345, 0.71864661, 1.9791932 ],\n", " [6.09647939, 1.29010591, 2.8266433 ]])" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Get reps\n", "bs_reps = bebi103.bootstrap.draw_bs_reps_mle(\n", " mle_fun, gen_fun, y, mle_args=(x,), gen_args=(x,), size=10000, n_jobs=2\n", ")\n", "\n", "# Confidence intervals\n", "np.percentile(bs_reps, [2.5, 97.5], axis=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first column is the confidence interval for $a_0$, the second for $a_1$, and the third for $\\sigma$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Graphical display of confidence region\n", "\n", "We can again use the `bebi103.viz.corner()` function to display the confidence regions. This time, we will plot the samples for the individual parameters with an ECDF." ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "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 = {\"d8146acc-b3d0-4c96-a551-3578cb9dbcb3\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"8840\"},{\"id\":\"8838\"}]},\"id\":\"8841\",\"type\":\"Row\"},{\"attributes\":{\"data_source\":{\"id\":\"8648\"},\"glyph\":{\"id\":\"8649\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8650\"},\"selection_glyph\":null,\"view\":{\"id\":\"8652\"}},\"id\":\"8651\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8610\",\"type\":\"LinearScale\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8793\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"8608\",\"type\":\"LinearScale\"},{\"attributes\":{\"children\":[[{\"id\":\"8463\"},0,0],[{\"id\":\"8508\"},1,0],[{\"id\":\"8558\"},1,1],[{\"id\":\"8603\"},2,0],[{\"id\":\"8653\"},2,1],[{\"id\":\"8703\"},2,2]]},\"id\":\"8838\",\"type\":\"GridBox\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"__ECDF_0\"}},\"id\":\"8504\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8620\",\"type\":\"PanTool\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8502\",\"type\":\"CDSView\"},{\"attributes\":{\"axis_label\":\"a\\u2080\",\"formatter\":{\"id\":\"8796\"},\"major_label_orientation\":\"horizontal\",\"ticker\":{\"id\":\"8613\"}},\"id\":\"8612\",\"type\":\"LinearAxis\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8677\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"__ECDF_0\"}},\"id\":\"8500\",\"type\":\"Circle\"},{\"attributes\":{\"data\":{\"0\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"1\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"2\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"__ECDF_0\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"__ECDF_1\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"__ECDF_2\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"shape\":[0]},\"chain__\":[],\"divergent__\":[],\"index\":[]},\"selected\":{\"id\":\"8759\"},\"selection_policy\":{\"id\":\"8760\"}},\"id\":\"8462\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8613\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"8612\"},\"ticker\":null},\"id\":\"8615\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"\\u03c3\",\"formatter\":{\"id\":\"8794\"},\"ticker\":{\"id\":\"8617\"}},\"id\":\"8616\",\"type\":\"LinearAxis\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8728\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1414213562373095},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.1414213562373095},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"8544\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"8582\"}},\"id\":\"8578\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"8617\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8499\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8500\"},\"selection_glyph\":null,\"view\":{\"id\":\"8502\"}},\"id\":\"8501\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"8616\"},\"dimension\":1,\"ticker\":null},\"id\":\"8619\",\"type\":\"Grid\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8727\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"8485\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"8626\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8679\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"formatter\":{\"id\":\"8780\"},\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8572\"}},\"id\":\"8571\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8602\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8794\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"overlay\":{\"id\":\"8628\"}},\"id\":\"8621\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"8625\",\"type\":\"SaveTool\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"8549\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8622\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"8545\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8796\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"overlay\":{\"id\":\"8627\"}},\"id\":\"8623\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"overlay\":{\"id\":\"8629\"}},\"id\":\"8624\",\"type\":\"LassoSelectTool\"},{\"attributes\":{},\"id\":\"8565\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8547\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8531\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8544\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8545\"},\"selection_glyph\":null,\"view\":{\"id\":\"8547\"}},\"id\":\"8546\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8567\"}],\"center\":[{\"id\":\"8570\"},{\"id\":\"8574\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8571\"}],\"renderers\":[{\"id\":\"8596\"},{\"id\":\"8601\"}],\"title\":{\"id\":\"8779\"},\"toolbar\":{\"id\":\"8585\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8559\"},\"x_scale\":{\"id\":\"8563\"},\"y_range\":{\"id\":\"8561\"},\"y_scale\":{\"id\":\"8565\"}},\"id\":\"8558\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8628\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"8658\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"1\"}},\"id\":\"8550\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"8584\"}},\"id\":\"8579\",\"type\":\"LassoSelectTool\"},{\"attributes\":{},\"id\":\"8663\",\"type\":\"BasicTicker\"},{\"attributes\":{\"toolbars\":[{\"id\":\"8490\"},{\"id\":\"8535\"},{\"id\":\"8585\"},{\"id\":\"8630\"},{\"id\":\"8680\"},{\"id\":\"8730\"}],\"tools\":[{\"id\":\"8480\"},{\"id\":\"8481\"},{\"id\":\"8482\"},{\"id\":\"8483\"},{\"id\":\"8484\"},{\"id\":\"8485\"},{\"id\":\"8486\"},{\"id\":\"8525\"},{\"id\":\"8526\"},{\"id\":\"8527\"},{\"id\":\"8528\"},{\"id\":\"8529\"},{\"id\":\"8530\"},{\"id\":\"8531\"},{\"id\":\"8575\"},{\"id\":\"8576\"},{\"id\":\"8577\"},{\"id\":\"8578\"},{\"id\":\"8579\"},{\"id\":\"8580\"},{\"id\":\"8581\"},{\"id\":\"8620\"},{\"id\":\"8621\"},{\"id\":\"8622\"},{\"id\":\"8623\"},{\"id\":\"8624\"},{\"id\":\"8625\"},{\"id\":\"8626\"},{\"id\":\"8670\"},{\"id\":\"8671\"},{\"id\":\"8672\"},{\"id\":\"8673\"},{\"id\":\"8674\"},{\"id\":\"8675\"},{\"id\":\"8676\"},{\"id\":\"8720\"},{\"id\":\"8721\"},{\"id\":\"8722\"},{\"id\":\"8723\"},{\"id\":\"8724\"},{\"id\":\"8725\"},{\"id\":\"8726\"}]},\"id\":\"8839\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8554\",\"type\":\"MultiLine\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8549\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8550\"},\"selection_glyph\":null,\"view\":{\"id\":\"8552\"}},\"id\":\"8551\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"8567\"},\"ticker\":null},\"id\":\"8570\",\"type\":\"Grid\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"2\"}},\"id\":\"8690\",\"type\":\"Circle\"},{\"attributes\":{\"axis_label\":\"a\\u2081\",\"formatter\":{\"id\":\"8812\"},\"major_label_orientation\":\"horizontal\",\"ticker\":{\"id\":\"8663\"}},\"id\":\"8662\",\"type\":\"LinearAxis\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8532\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{\"0\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"1\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"2\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"__ECDF_0\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"__ECDF_1\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"__ECDF_2\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[1000]},\"chain__\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"divergent__\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"index\":[3663,5674,4451,7820,7809,4455,2561,3777,5994,820,9894,3546,4517,5523,5006,7740,7610,6281,5700,4552,7221,1900,9256,887,1237,8974,6847,2243,9192,1360,4111,8529,4745,4764,1231,4213,1003,1873,479,4855,9892,8545,3187,6966,2138,5606,7911,1278,1519,5607,2106,3547,637,2312,4842,6175,2544,5600,700,9862,8201,5613,2306,4139,1047,2669,9511,7504,9619,2043,8817,9833,2780,9208,1033,4494,4298,9170,3680,4054,8828,7493,7406,1627,3760,6444,9295,9825,5351,7267,3736,7924,1736,5764,6774,832,1817,7245,3209,8583,7430,4656,3974,1978,1636,1044,4601,3120,6400,3358,1159,1512,4899,5310,180,5550,7399,1331,5299,2511,1235,9030,4463,3263,1229,6666,7153,7797,1558,4273,5075,7001,1534,7969,3131,194,1994,4686,7668,1732,5608,7552,2478,6206,4432,9402,7619,232,6648,8920,8037,5041,6955,786,2308,3980,9921,9380,2385,8161,5619,2678,8415,5720,6771,889,323,8878,1713,6032,5162,888,5823,3274,3234,2059,7628,555,768,7604,2801,4965,1051,1639,8593,8556,3857,4209,4795,9806,1820,4174,3260,4223,2647,4380,4895,7128,6188,879,2073,4919,8868,4493,1046,8582,389,3875,9347,4960,9290,25,1310,8833,1887,7072,1486,8212,6298,1308,7872,6070,4138,3821,1387,9573,6472,212,3820,4952,720,5939,8588,3491,2497,3060,1807,3116,6865,5566,9215,2463,2330,3666,9221,1886,678,7530,8933,4490,2589,6720,7854,9497,6668,4032,7043,6605,3957,7179,190,5530,2045,3795,8608,5250,3756,7918,5441,8080,9660,80,3232,2996,2693,7833,666,7455,126,8032,751,4858,9567,3162,1530,289,7281,45,948,5365,7704,8677,8110,1018,2804,7646,6595,2770,9002,1029,9562,99,5927,1987,3966,7783,1916,9755,5032,3824,3223,6380,2283,5452,973,6208,4520,1908,9987,2629,5730,3509,4646,1355,9441,7157,1592,5315,2460,622,613,6348,2489,2985,2537,5937,7841,5553,8678,7793,9495,5790,8215,5007,7092,711,6464,1537,9796,3708,1370,8727,7410,8483,3066,8307,8592,3951,5003,503,6867,9104,6976,48,2188,988,1832,1108,2767,6628,6035,7953,347,3166,4523,4516,2364,5867,5622,3330,7656,7357,9944,1096,7511,1625,6108,3125,4302,1494,2495,5977,4524,3130,149,4800,732,6990,8622,6193,8647,9499,8970,5692,3495,6044,9649,6245,408,8549,5472,547,7032,757,5453,2790,3839,9035,5371,4797,7518,1021,9760,4133,6929,7056,2213,1569,7208,4976,8586,5080,6029,5402,8321,5802,9200,1064,2085,7394,7236,1723,487,9069,3598,469,8635,339,6741,1704,1197,9456,1907,6057,8711,8412,8658,1473,534,7288,7051,6448,2210,6576,9731,4317,1071,4454,3299,1110,6164,2755,5391,2562,8745,6169,1776,9938,3498,3832,2163,1395,9819,9581,3197,7451,8546,4671,3580,1279,4749,8022,8099,6981,8217,648,6172,5679,3393,2175,6875,7957,2404,5847,4758,6742,1985,9362,3093,6582,9614,5281,2313,6709,4847,4426,3106,4481,4055,7565,7757,9394,5199,6748,8765,4987,1566,4255,4969,6578,4649,8916,8653,5217,3340,7075,2305,5916,790,7298,493,3730,2775,1559,3806,2083,4576,7664,4859,3178,9331,3797,9926,5604,2886,6692,7371,657,1765,8728,1707,9765,7290,4978,4006,369,5002,4896,471,1415,6596,4288,7781,1855,8105,8357,870,3331,1315,9596,350,9113,8667,6566,5590,7037,8392,5046,2105,9836,795,8031,7642,4854,4441,961,4592,764,3324,9531,5132,5449,7264,2884,579,1048,5545,6154,3525,9809,4295,522,5094,1656,4975,7268,8892,4612,3455,3763,2113,3068,9268,875,3143,3237,9220,1015,6417,9718,2235,7532,6133,9615,9741,9431,3296,8522,1944,8853,9670,9055,7479,9982,2731,8772,8499,516,2757,5071,638,3061,5752,8027,3042,4282,1243,384,7719,7077,5901,4485,1816,2067,8466,5515,2620,5231,9607,6644,6558,7291,5185,4072,2135,1365,9886,1291,6372,2980,7324,9460,5234,831,9847,1861,9309,2754,1699,8526,2451,1857,3860,296,64,8875,8528,7336,6303,825,8205,6178,6471,5180,9058,3224,7562,729,187,4,2248,4128,7624,4532,4802,3233,7404,1388,3545,188,7098,594,7057,1711,2174,8165,8746,5220,3706,7260,5084,8148,9646,8274,7696,1809,8036,617,4732,5512,6614,8492,4185,4297,6191,9907,2082,8790,1929,5438,750,8931,3628,3876,2315,197,960,9771,9003,100,9160,3346,8704,5326,8802,9902,5154,1361,1881,6217,5005,198,6678,7844,6229,5205,7175,5454,9826,93,1431,3894,8612,9017,2603,7449,2104,6995,1479,591,9657,7444,7926,66,8831,5406,8513,1591,2686,5557,3906,588,1165,3186,4308,4665,683,2398,1847,1256,1187,2791,307,9483,2439,2587,4654,7474,8943,2613,5786,4575,4249,9435,419,1733,6716,4016,8595,7053,8628,9528,582,2548,7427,430,2514,4669,3711,4591,6878,7825,2625,9552,1966,7852,4398,8881,5283,7831,6751,5147,7965,7385,5696,5223,2632,2110,7045,260,539,3626,9692,4410,5010,4668,3303,6433,9605,9219,5721,4853,8389,235,7243,3983,1942,6863,968,9687,7829,9800,8166,5538,2260,3011,9036,7892,9943,5133,1862,317,4850,1729,7722,5631,6277,3246,6989,8681,9904,3741,6299,1603,5767,5374,4770,2062,2736,2374,8046,7301,8005,9250,709,7571,8324,4527,3171,8156,1152,3194,7587,9498,6969,6862,8047,6539,8598,5861,5008,2120,8665,1307,8364,3430,7984,4363,8701,9525,2881,4329,7246,886,5636,3411,3107,4044,2515,7761,6479,6869,923,2437,2640,9846,210,448,6815,6733,6507,3308,1065,9283,7293,9781,7705,6349,353,6033,1902,204,2207,4566,4934,1440,9186,1199,3086,2168,7685,8120,8945,8951,6627,9885,4825,5440,165,5671,3218,1960,4393,9707,4117,5521,1542,6025,7992,5110]},\"selected\":{\"id\":\"8757\"},\"selection_policy\":{\"id\":\"8758\"}},\"id\":\"8461\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8577\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"8662\"},\"ticker\":null},\"id\":\"8665\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8552\",\"type\":\"CDSView\"},{\"attributes\":{\"axis\":{\"id\":\"8472\"},\"ticker\":null},\"id\":\"8475\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"8553\"},\"glyph\":{\"id\":\"8554\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8555\"},\"selection_glyph\":null,\"view\":{\"id\":\"8557\"}},\"id\":\"8556\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"formatter\":{\"id\":\"8810\"},\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8667\"}},\"id\":\"8666\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8489\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8533\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{\"xs\":[{\"__ndarray__\":\"1/eb9cNJF0AMsmMydJsXQEJsK28k7RdA7ip5QZIAGEB4JvOr1D4YQK7guuiEkBhA4pqCJTXiGEAaVUpi5TMZQOxbWgIZWRlATg8Sn5WFGUCZlK5kjZQZQE8PEp+VhRlA2jmc/YF9GUAmzN9sGmcZQGxMtqI5bRlAChiuRQ1gGUDgJxMBOEYZQBpVSmLlMxlAUOjqav8sGUB61jVFmgMZQOOagiU14hhAik4CxcvGGEDekcmGZ5EYQK3guuiEkBhA9tH7ZoRXGEB4JvOr1D4YQJHhuEk8HhhAQmwrbyTtF0BRsn2VBeYXQM4jP2JwuBdADbJjMnSbF0CAkL5kCX8XQNf3m/XDSRdAZpdztOE8F0BM71433PsWQKE91LgT+BZAbIMMfGOmFkD8hM8b/poWQDbJRD+zVBZA4oMFjvtDFkAAD30CAwMWQKI0U6hl+xVAyW1nGWLIFUDLVLXFUrEVQLvXHjNcdhVAlZrtiKJfFUBf4CVM8g0VQLoVQq0s2xRAKiZeD0K8FEBEZK317JUUQPRrltKRahRAvUlbv3Q0FEC+sc6V4RgUQIn3BlkxxxNAaMg/vHGmE0BTPT8cgXUTQMZ7k4imQBNAHYN339AjE0DoyK+iINISQKjG3FaiuxJAsg7oZXCAEkB8VCApwC4SQLE8jcJJ6BFAR5pY7A/dEUAR4JCvX4sRQNwlyXKvORFApmsBNv/nEEBwsTn5TpYQQDr3cbyeRBBACnpU/9zlD0DFMRhR4cYPQDLKBFSXcw9AQAQKbfJMD0CybIS15oYPQBnxnuXtnw9AijX4l52ZD0DgWUfrhqUPQIjT7mettQ9ACnpU/9zlD0CsZyp6legPQHxQViO5LxBAOvdxvJ5EEEBSVRYJtHIQQHCxOflOlhBAM0jZTiS0EECmawE2/+cQQGj6OuAV9xBArs8VLUE3EUDcJclyrzkRQF34Y6Q4WRFAEeCQr1+LEUD71NzPZJIRQEeaWOwP3RFAyrwb7HbdEUCz5f4J0h8SQHxUICnALhJA1H6qCHpZEkCyDuhlcIASQCnMb22bkBJA6MivoiDSEkAb0FkuiNcSQB2Dd9/QIxNAEAYtP2w5E0BTPT8cgXUTQIn3BlkxxxNA4OqL8kPRE0C+sc6V4RgUQJUKu83dMRRA9GuW0pFqFEA9eUtIMm8UQComXg9CvBRAVmHw5sDOFEBf4CVM8g0VQJaa7YiiXxVAcZUZMM5xFUDLVLXFUrEVQIICbd6b3hVAAA99AgMDFkA2yUQ/s1QWQGaz4PvGhhZAbIMMfGOmFkChPdS4E/gWQHHDC6SUQhdA1/eb9cNJF0A=\",\"dtype\":\"float64\",\"shape\":[124]}],\"ys\":[{\"__ndarray__\":\"CnnXlBfY5D9YKT2447rkP+Se2YDezeQ/m/OjbX3d5D9Uc+ntlAHlP2aTv0mvJeU/W43R2mw95T+/5q1+l1/lP746iBhCneU/3KdsxIUb5j/hgWzDBl3mP/gOfSG/2OY/A8lQbssc5z8mEDUZkNznP0lXGcRUnOg/bJ79bhlc6T+O5eEZ3hvqP9G1OFPnl+o/sSzGxKLb6j/Uc6pvZ5vrPyqw9WeQ/us/9rqOGixb7D8ZAnPF8BrtP/CCOo/iHe0/PElXcLXa7T8AD3rJvx3uP2CQOxt6mu4/YrrdMqw57z+C1x/GPlrvP1IPgrgBDfA/Up0VS3468D/kMvQN5GzwPzSlkolntvA/dVZmY8bM8D8Feti4qCzxP/WoAMIwMfE/MqPE6KeC8T+YnUoOi4zxP9emF1bI2PE/KcG8Y23s8T+wmgRoYEHyP7rkLrlPTPI/TAihDjKs8j+5ctIBQtPyP94rE2QUDPM/V1Czu7oZ8z8+h3swsUHzP25Phbn2a/M/U5G5EkWX8z8Ac/cO2cvzP8wdvBo/BPQ/kpZpZLsr9D+iXaXie0H0P+JzqcaPcfQ/IrrbuZ2L9D+Weg00pMH0P7TdTQ+A6/Q/zy6hJvgD9T/vxedYkz71P0YBwGRiS/U/lGTpdW9v9T/SnYZZ3Y/1P9ckMrpEq/U/p2CZV3mw9T+zUjdkBMr1P/4QHKzE2fU/ihu4RPLc9T/XJDK6RKv1PzRzvX7dnfU/RRVuIG5x9T9GAcBkYkv1P7TdTQ+A6/Q/IrrbuZ2L9D+Slmlkuyv0PwBz9w7Zy/M/bk+FufZr8z/eKxNkFAzzP0wIoQ4yrPI/2LG5A5ZR8j+65C65T0zyPynBvGNt7PE/QnxiOnLR8T+YnUoOi4zxP5bRbgl2WfE/BnrYuKgs8T+mu2ZcfeXwP3VWZmPGzPA/5DL0DeRs8D/68aKrKWjwP1IPgrgBDfA/d1DuFDZz7z+C1x/GPlrvPyqU3r9xm+4/X5A7G3qa7j88SVdwtdrtPynrVW5JrO0/GQJzxfAa7T+MW/2VeKDsP/e6jhosW+w/HRfL/hiq6z/Uc6pvZ5vrP/sQus3z9uo/sSzGxKLb6j8UL3JLxITqPwouxX2UKeo/juXhGd4b6j+MxUcrC5PpP2ye/W4ZXOk/WpQZfUeq6D9JVxnEVJzoP5SaWHTl7uc/JhA1GZDc5z/vlT8JtpznP6r7MEEhPec/AslQbssc5z9SW/4eBqTmP+GBbMMGXeY/V9woFwMk5j+KONjUScnlP746iBhCneU/sA2Frutt5T+K5WWNkwvlP5vzo2193eQ/CnnXlBfY5D8=\",\"dtype\":\"float64\",\"shape\":[124]}]},\"selected\":{\"id\":\"8775\"},\"selection_policy\":{\"id\":\"8776\"}},\"id\":\"8553\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"8660\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"8568\",\"type\":\"BasicTicker\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"2\"},\"y\":{\"field\":\"__ECDF_2\"}},\"id\":\"8740\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"8532\"}},\"id\":\"8528\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"source\":{\"id\":\"8553\"}},\"id\":\"8557\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1414213562373095},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.1414213562373095},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"2\"}},\"id\":\"8689\",\"type\":\"Circle\"},{\"attributes\":{\"formatter\":{\"id\":\"8782\"},\"major_label_orientation\":\"horizontal\",\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8568\"}},\"id\":\"8567\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8555\",\"type\":\"MultiLine\"},{\"attributes\":{\"source\":{\"id\":\"8648\"}},\"id\":\"8652\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8739\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8740\"},\"selection_glyph\":null,\"view\":{\"id\":\"8742\"}},\"id\":\"8741\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8582\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8650\",\"type\":\"MultiLine\"},{\"attributes\":{\"end\":1.5767010671328725,\"start\":0.35942224691446},\"id\":\"8559\",\"type\":\"Range1d\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8627\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"8522\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"8571\"},\"dimension\":1,\"ticker\":null},\"id\":\"8574\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"8563\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"8667\",\"type\":\"BasicTicker\"},{\"attributes\":{\"end\":1.02,\"start\":-0.02},\"id\":\"8561\",\"type\":\"Range1d\"},{\"attributes\":{\"fill_color\":{\"value\":\"black\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"__ECDF_1\"}},\"id\":\"8594\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"2\"},\"y\":{\"field\":\"__ECDF_2\"}},\"id\":\"8745\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"8534\"}},\"id\":\"8529\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8584\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"__ECDF_1\"}},\"id\":\"8600\",\"type\":\"Circle\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8525\"},{\"id\":\"8526\"},{\"id\":\"8527\"},{\"id\":\"8528\"},{\"id\":\"8529\"},{\"id\":\"8530\"},{\"id\":\"8531\"}]},\"id\":\"8535\",\"type\":\"Toolbar\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8647\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8580\",\"type\":\"SaveTool\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8749\",\"type\":\"Title\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8583\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8575\"},{\"id\":\"8576\"},{\"id\":\"8577\"},{\"id\":\"8578\"},{\"id\":\"8579\"},{\"id\":\"8580\"},{\"id\":\"8581\"}]},\"id\":\"8585\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"8581\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8744\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8745\"},\"selection_glyph\":null,\"view\":{\"id\":\"8747\"}},\"id\":\"8746\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8747\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8629\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1414213562373095},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.1414213562373095},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"2\"}},\"id\":\"8639\",\"type\":\"Circle\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8487\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8534\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"2\"}},\"id\":\"8694\",\"type\":\"Circle\"},{\"attributes\":{\"toolbar\":{\"id\":\"8839\"},\"toolbar_location\":\"left\"},\"id\":\"8840\",\"type\":\"ToolbarBox\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8692\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8689\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8690\"},\"selection_glyph\":null,\"view\":{\"id\":\"8692\"}},\"id\":\"8691\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8712\"}],\"center\":[{\"id\":\"8715\"},{\"id\":\"8719\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8716\"}],\"renderers\":[{\"id\":\"8741\"},{\"id\":\"8746\"}],\"title\":{\"id\":\"8825\"},\"toolbar\":{\"id\":\"8730\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8704\"},\"x_scale\":{\"id\":\"8708\"},\"y_range\":{\"id\":\"8706\"},\"y_scale\":{\"id\":\"8710\"}},\"id\":\"8703\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8472\"}],\"center\":[{\"id\":\"8475\"},{\"id\":\"8479\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8476\"}],\"renderers\":[{\"id\":\"8501\"},{\"id\":\"8506\"}],\"title\":{\"id\":\"8749\"},\"toolbar\":{\"id\":\"8490\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8464\"},\"x_scale\":{\"id\":\"8468\"},\"y_range\":{\"id\":\"8466\"},\"y_scale\":{\"id\":\"8470\"}},\"id\":\"8463\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"8518\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"8476\"},\"dimension\":1,\"ticker\":null},\"id\":\"8479\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"8513\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"2\"}},\"id\":\"8695\",\"type\":\"Circle\"},{\"attributes\":{\"fill_color\":{\"value\":\"black\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"__ECDF_0\"}},\"id\":\"8499\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8572\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"8473\",\"type\":\"BasicTicker\"},{\"attributes\":{\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8699\",\"type\":\"MultiLine\"},{\"attributes\":{\"end\":7.218079049326322,\"start\":3.069838593793886},\"id\":\"8464\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8694\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8695\"},\"selection_glyph\":null,\"view\":{\"id\":\"8697\"}},\"id\":\"8696\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8530\",\"type\":\"SaveTool\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8697\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8805\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"8583\"}},\"id\":\"8576\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"formatter\":{\"id\":\"8752\"},\"major_label_orientation\":\"horizontal\",\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8473\"}},\"id\":\"8472\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data\":{\"xs\":[{\"__ndarray__\":\"X5A7G3qa7j/tatsW2jPvP4LXH8Y+Wu8/Ug+CuAEN8D/kMvQN5GzwPxDZvScns/A/dVZmY8bM8D8Geti4qCzxP1mF/uHoe/E/mJ1KDouM8T8pwbxjbezxP7rkLrlPTPI/iK38fdJ78j9MCKEOMqzyP36oVf2R+PI/3isTZBQM8z9uT4W59mvzP13P5YlJdvM/AHP3DtnL8z/yk7sqK93zP5KWaWS7K/Q//5O0eqRA9D8iutu5nYv0P8wmFxVZqfQ/tN1ND4Dr9D8eIekc1/f0P0YBwGRiS/U/s+JmgcxL9T9mooPo7Uz1P0YBwGRiS/U/9jV6VDJC9T9GAcBkYkv1P6hwAGvmbfU/PJw9ZKyl9T/XJDK6RKv1P13HV+UwrfU/1yQyukSr9T9qlaaQHav1P9ckMrpEq/U/0K6hoc+09T/XJDK6RKv1P0EKjadinfU/0bVe6GOh9T/XJDK6RKv1PzqzscHYxvU/PoUQDC7a9T+IZMW08rv1P9YkMrpEq/U/St9OPNdS9T9GAcBkYkv1P38vZVQ4SvU/RgHAZGJL9T++ForvQGL1P0YBwGRiS/U/PuRdBYor9T9AWVJC5gj1P8qtV8GlFfU/tN1ND4Dr9D8iutu5nYv0P5KWaWS7K/Q/4V1u60QJ9D8Ac/cO2cvzP3pq82q+ufM/bk+FufZr8z9jqpPbi1vzP94rE2QUDPM/ekBUSRfV8j9MCKEOMqzyP+RTPuzYWvI/uuQuuU9M8j/jEtDpfQ/yPynBvGNt7PE/mJ1KDouM8T8Geti4qCzxP9K224hiG/E/dVZmY8bM8D9HbqIwVqbwP+Qy9A3kbPA/Ug+CuAEN8D+C1x/GPlrvP1+QOxt6mu4/GGcOYf1g7j88SVdwtdrtPzpsVhFtOO0/GQJzxfAa7T/3uo4aLFvsP9Rzqm9nm+s/sCzGxKLb6j8o2S/Zl23qP47l4RneG+o/lrT+9grc6T9snv1uGVzpPyrCiwBELOk/SVcZxFSc6D+oaZN172boPyYQNRmQ3Oc/A8lQbssc5z+APzfA147mP+GBbMMGXeY/8qeUjLZC5j9AfjOVWw3mP5McvhlVvuU/vjqIGEKd5T+dMP9OxYPlP/HWpzBtaeU/va7ZCZBH5T874JOPWU3lP5ETs8NwIOU/nPOjbX3d5D+PM6wsXNDkP2mNU/ofwuQ/kRiSu4uU5D8IhWV7Ko7kPyTM4VxdoOQ/9/OkSMjV5D+b86Ntfd3kP2o4H3TID+U/77JB4ZEv5T8Sk1PhJBblP75zTOKTIeU/vjqIGEKd5T+gg80iP+XlP+GBbMMGXeY/Vlo8Yym/5j88T9aJ6uvmPwPJUG7LHOc/pFbawd6h5z8mEDUZkNznP3XY/lOXc+g/SVcZxFSc6D9uQhgm86boP7/r4uY0P+k/bJ79bhlc6T+O5eEZ3hvqPzEA0Qxhneo/sSzGxKLb6j90BFPfIF7rP9Rzqm9nm+s/97qOGixb7D8fp4YFgYzsPxkCc8XwGu0/PElXcLXa7T+Ws/Ls/EHuP1+QOxt6mu4/\",\"dtype\":\"float64\",\"shape\":[144]}],\"ys\":[{\"__ndarray__\":\"Mn8GzDfd/T89v6Eem+39P7HLsO+v8P0/UWI/daX3/T94A7cHHh3+P9ZRra9bcv4/2jm3WAOE/j/mykOp7Zj+P9ZRra9bcv4/0zUANsBn/j+8cLcSAkT+P/a4mQeyVf4/1lGtr1ty/j/Mwd6HXpf+P27kuEAc9/4/v9Jm1RwO/z/UNnstsHP/PwZ3xNHce/8/E/sVZgfj/z/PBGixTgAAQPP8BWQDNQBAG87t+a5CAECobKbAR3AAQGeXc0IPhQBAkReHaza+AECzYPmKb8cAQGUpAJRcCQFA/yl/088JAUBL8wQcMEwBQHsnwMdRVAFAmLyKZJCOAUAKuQbilqcBQOSFEK3w0AFAME+W9VATAkBIkhtQnEoCQHwYHD6xVQJAIlBA1b2NAkDI4aGGEZgCQGTROrHamwJAFKsnz3HaAkBCSAG1EOsCQGB0rRfSHANArD0zYDJfA0DROgB/Im0DQPgGuaiSoQNARNA+8fLjA0CPmcQ5UyYEQOWcujdTNQRA3GJKgrNoBEAg6NqThZoEQCgs0MoTqwRAJ2yahyWyBEB09VUTdO0EQPLt0gnE/gRAwL7bW9QvBUAMiGGkNHIFQFhR5+yUtAVApBptNfX2BUCh5yFDGBEGQGgrfNWLKAZA8OPyfVU5BkCwrKQh7WkGQD2teMa1ewZAQeKqGMG3BkCIdv4OFr4GQE6CcCop3AZA1D+EV3YAB0BUoIVpnB4HQCIJCqDWQgdAsRUM3adHB0AhCQqg1kIHQPT4HYgVQAdAe60XtY4sB0BAuWFmdTsHQCEJCqDWQgdAas1y4PF2B0Bt0o/oNoUHQHKEohEcoAdAOH0C8ze7B0BMH47PDqYHQIdAavgfjAdAbNKP6DaFB0BTcolAVnIHQCIJCqDWQgdAkgBDq388B0ByU1WwmSkHQPLoZPoiMwdAk3QM63UrB0DVP4RXdgAHQHoQx+AE2QZAiXb+Dha+BkATvir5tI4GQD2teMa1ewZAfnKmZZVCBkDv4/J9VTkGQF7mFTz6JAZADP5AxqEqBkCkGm019fYFQJI4gizn1QVAWFHn7JS0BUAMiGGkNHIFQMC+21vULwVA8MSuKnsGBUB09VUTdO0EQCgs0MoTqwRA3GJKgrNoBECQmcQ5UyYEQETQPvHy4wNAvzNLwamtA0D4BrmokqEDQKw9M2AyXwNAYHStF9IcA0AUqyfPcdoCQMjhoYYRmAJAfBgcPrFVAkCplony0U8CQDBPlvVQEwJA5IUQrfDQAUCYvIpkkI4BQEvzBBwwTAFAGPxHug8eAUD/KX/TzwkBQLM9C5iH5wBAsmD5im/HAEBnl3NCD4UAQL2PCu78WABAG87t+a5CAEAdswRvhzwAQM8EaLFOAABAVloN+wmr/z8Gd8TR3Hv/P27kuEAc9/4/g3dsMa3l/j/+VZdY9Yr+P9ZRra9bcv4/LSi1/2dk/j/WUa2vW3L+P144yym6dv4/fhsOZpF8/j/WUa2vW3L+P5hKtOXmSf4/9YnhDK76/T88v6Eem+39PzJ/Bsw33f0/\",\"dtype\":\"float64\",\"shape\":[144]}]},\"selected\":{\"id\":\"8821\"},\"selection_policy\":{\"id\":\"8822\"}},\"id\":\"8698\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"8698\"},\"glyph\":{\"id\":\"8699\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8700\"},\"selection_glyph\":null,\"view\":{\"id\":\"8702\"}},\"id\":\"8701\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8488\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"__ECDF_1\"}},\"id\":\"8595\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"8678\"}},\"id\":\"8671\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"2\"}},\"id\":\"8640\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8806\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8480\"},{\"id\":\"8481\"},{\"id\":\"8482\"},{\"id\":\"8483\"},{\"id\":\"8484\"},{\"id\":\"8485\"},{\"id\":\"8486\"}]},\"id\":\"8490\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"8750\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"fill_color\":{\"value\":\"black\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"2\"},\"y\":{\"field\":\"__ECDF_2\"}},\"id\":\"8739\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8527\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"8477\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"8480\",\"type\":\"PanTool\"},{\"attributes\":{\"source\":{\"id\":\"8698\"}},\"id\":\"8702\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8468\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis_label\":\"a\\u2081\",\"formatter\":{\"id\":\"8764\"},\"ticker\":{\"id\":\"8522\"}},\"id\":\"8521\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8700\",\"type\":\"MultiLine\"},{\"attributes\":{},\"id\":\"8575\",\"type\":\"PanTool\"},{\"attributes\":{\"axis_label\":\"ECDF\",\"formatter\":{\"id\":\"8750\"},\"ticker\":{\"id\":\"8477\"}},\"id\":\"8476\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"8710\",\"type\":\"LinearScale\"},{\"attributes\":{\"end\":3.280353322991237,\"start\":1.5950224911703792},\"id\":\"8704\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"8752\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8717\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"8533\"}},\"id\":\"8526\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"8470\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"8708\",\"type\":\"LinearScale\"},{\"attributes\":{\"end\":1.02,\"start\":-0.02},\"id\":\"8466\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"8515\",\"type\":\"LinearScale\"},{\"attributes\":{\"end\":1.02,\"start\":-0.02},\"id\":\"8706\",\"type\":\"Range1d\"},{\"attributes\":{\"overlay\":{\"id\":\"8488\"}},\"id\":\"8481\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"8720\",\"type\":\"PanTool\"},{\"attributes\":{\"axis\":{\"id\":\"8521\"},\"dimension\":1,\"ticker\":null},\"id\":\"8524\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"8486\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"8517\"},\"ticker\":null},\"id\":\"8520\",\"type\":\"Grid\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8620\"},{\"id\":\"8621\"},{\"id\":\"8622\"},{\"id\":\"8623\"},{\"id\":\"8624\"},{\"id\":\"8625\"},{\"id\":\"8626\"}]},\"id\":\"8630\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"8482\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis_label\":\"\\u03c3\",\"formatter\":{\"id\":\"8828\"},\"major_label_orientation\":\"horizontal\",\"ticker\":{\"id\":\"8713\"}},\"id\":\"8712\",\"type\":\"LinearAxis\"},{\"attributes\":{\"overlay\":{\"id\":\"8487\"}},\"id\":\"8483\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"source\":{\"id\":\"8462\"}},\"id\":\"8507\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8713\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"8489\"}},\"id\":\"8484\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"axis\":{\"id\":\"8712\"},\"ticker\":null},\"id\":\"8715\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"8670\",\"type\":\"PanTool\"},{\"attributes\":{\"formatter\":{\"id\":\"8826\"},\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8717\"}},\"id\":\"8716\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8597\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8525\",\"type\":\"PanTool\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"8729\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"1\"},\"y\":{\"field\":\"__ECDF_1\"}},\"id\":\"8599\",\"type\":\"Circle\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8670\"},{\"id\":\"8671\"},{\"id\":\"8672\"},{\"id\":\"8673\"},{\"id\":\"8674\"},{\"id\":\"8675\"},{\"id\":\"8676\"}]},\"id\":\"8680\",\"type\":\"Toolbar\"},{\"attributes\":{\"axis\":{\"id\":\"8666\"},\"dimension\":1,\"ticker\":null},\"id\":\"8669\",\"type\":\"Grid\"},{\"attributes\":{\"axis\":{\"id\":\"8716\"},\"dimension\":1,\"ticker\":null},\"id\":\"8719\",\"type\":\"Grid\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8517\"}],\"center\":[{\"id\":\"8520\"},{\"id\":\"8524\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8521\"}],\"renderers\":[{\"id\":\"8546\"},{\"id\":\"8551\"},{\"id\":\"8556\"}],\"title\":{\"id\":\"8763\"},\"toolbar\":{\"id\":\"8535\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8464\"},\"x_scale\":{\"id\":\"8513\"},\"y_range\":{\"id\":\"8559\"},\"y_scale\":{\"id\":\"8515\"}},\"id\":\"8508\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"8726\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8594\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8595\"},\"selection_glyph\":null,\"view\":{\"id\":\"8597\"}},\"id\":\"8596\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8672\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8809\",\"type\":\"Title\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8642\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8676\",\"type\":\"ResetTool\"},{\"attributes\":{\"overlay\":{\"id\":\"8728\"}},\"id\":\"8721\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"formatter\":{\"id\":\"8766\"},\"major_label_orientation\":\"horizontal\",\"major_label_text_font_size\":\"0pt\",\"ticker\":{\"id\":\"8518\"}},\"id\":\"8517\",\"type\":\"LinearAxis\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8662\"}],\"center\":[{\"id\":\"8665\"},{\"id\":\"8669\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8666\"}],\"renderers\":[{\"id\":\"8691\"},{\"id\":\"8696\"},{\"id\":\"8701\"}],\"title\":{\"id\":\"8809\"},\"toolbar\":{\"id\":\"8680\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8559\"},\"x_scale\":{\"id\":\"8658\"},\"y_range\":{\"id\":\"8704\"},\"y_scale\":{\"id\":\"8660\"}},\"id\":\"8653\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"8725\",\"type\":\"SaveTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8504\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8505\"},\"selection_glyph\":null,\"view\":{\"id\":\"8507\"}},\"id\":\"8506\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"8675\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"8722\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8461\"},\"glyph\":{\"id\":\"8639\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8640\"},\"selection_glyph\":null,\"view\":{\"id\":\"8642\"}},\"id\":\"8641\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"overlay\":{\"id\":\"8677\"}},\"id\":\"8673\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"overlay\":{\"id\":\"8727\"}},\"id\":\"8723\",\"type\":\"BoxSelectTool\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"8612\"}],\"center\":[{\"id\":\"8615\"},{\"id\":\"8619\"}],\"frame_height\":150,\"frame_width\":150,\"left\":[{\"id\":\"8616\"}],\"renderers\":[{\"id\":\"8641\"},{\"id\":\"8646\"},{\"id\":\"8651\"}],\"title\":{\"id\":\"8793\"},\"toolbar\":{\"id\":\"8630\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"8464\"},\"x_scale\":{\"id\":\"8608\"},\"y_range\":{\"id\":\"8704\"},\"y_scale\":{\"id\":\"8610\"}},\"id\":\"8603\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"overlay\":{\"id\":\"8729\"}},\"id\":\"8724\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"overlay\":{\"id\":\"8679\"}},\"id\":\"8674\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8644\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8645\"},\"selection_glyph\":null,\"view\":{\"id\":\"8647\"}},\"id\":\"8646\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"8720\"},{\"id\":\"8721\"},{\"id\":\"8722\"},{\"id\":\"8723\"},{\"id\":\"8724\"},{\"id\":\"8725\"},{\"id\":\"8726\"}]},\"id\":\"8730\",\"type\":\"Toolbar\"},{\"attributes\":{\"data_source\":{\"id\":\"8462\"},\"glyph\":{\"id\":\"8599\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"8600\"},\"selection_glyph\":null,\"view\":{\"id\":\"8602\"}},\"id\":\"8601\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"__ECDF_0\"}},\"id\":\"8505\",\"type\":\"Circle\"},{\"attributes\":{\"line_width\":{\"value\":2},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"8649\",\"type\":\"MultiLine\"},{\"attributes\":{\"source\":{\"id\":\"8461\"}},\"id\":\"8742\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"8757\",\"type\":\"Selection\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"2\"},\"y\":{\"field\":\"__ECDF_2\"}},\"id\":\"8744\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8758\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"8775\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8776\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"8810\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8812\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8759\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"8760\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8779\",\"type\":\"Title\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8763\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"8780\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8782\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8821\",\"type\":\"Selection\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"8678\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"8822\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"2\"}},\"id\":\"8644\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8764\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8766\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data\":{\"xs\":[{\"__ndarray__\":\"HYN339AjE0BTPT8cgXUTQIn3BlkxxxNAvrHOleEYFED0a5bSkWoUQComXg9CvBRAX+AlTPINFUCVmu2Iol8VQMtUtcVSsRVAAA99AgMDFkA2yUQ/s1QWQIogAT/1mBZAbIMMfGOmFkChPdS4E/gWQNf3m/XDSRdAMWW9nLh6F0ANsmMydJsXQAykLS03rxdAYPA+QvfDF0BCbCtvJO0XQIoSZJbzARhAeCbzq9Q+GEBUavbqh1kYQK7guuiEkBhA5GQMl1ufGEAJ16O2yckYQKXFoSED1hhA5JqCJTXiGEB+bkE8ROgYQDS+7DEWFxlAGVVKYuUzGUD+vOq7fVMZQEAqcQ/eZRlA9cUP0mNJGUBHLF5EwVMZQB60G/jJcRlAatPrvT93GUD2PXIQ02IZQGAgudLWWBlAGEczw5xoGUBPDxKflYUZQFXzgocuiBlATw8Sn5WFGUCHDUauo3cZQMpp9OCiWhlAGVVKYuUzGUB7MsEwrAQZQOKagiU14hhAXLwClXvNGEAehayzcb4YQJPnvuCZkxhAruC66ISQGEA+94dqhEkYQHgm86vUPhhAQmwrbyTtF0Ct8Vhm370XQA6yYzJ0mxdA1/eb9cNJF0BrXL3akEIXQKE91LgT+BZAtuRBbLvoFkBsgwx8Y6YWQDbJRD+zVBZAAA99AgMDFkDKVLXFUrEVQAaA8hX1lRVAlZrtiKJfFUBmwgpH5B8VQF/gJUzyDRVAzfP+1wX/FEArJl4PQrwUQPRrltKRahRAI3SYWks4FEC+sc6V4RgUQEidp8K+9RNAifcGWTHHE0BTPT8cgXUTQB2Dd9/QIxNA6MivoiDSEkBFOeKmkJISQLIO6GVwgBJAfFQgKcAuEkBHmljsD90RQKQJSRMq2xFAEeCQr1+LEUD/bGTokUcRQNwlyXKvORFApmsBNv/nEEDdx4if8doQQD4fcADCuBBAXYazpsXFEECAXdlOf9sQQHCxOflOlhBAt6m9wt1mEEA693G8nkQQQLj8H+C0DxBACnpU/9zlD0CsnnIvhI8PQBN0D930aQ9ALLAf2Ah1D0DGgD+N0YgPQDBOzIlfkg9AJEcvvy6DD0AeqtFqTVEPQGaxib+8Rg9AyFHqVFdmD0AOmfzQ2JMPQNr2763Yzg9ACnpU/9zlD0BLouYcpgsQQAgdTN6yMRBA/PgzHYYnEECsiNuJdQwQQF+sfpacMxBAOvdxvJ5EEED0WftN6ZAQQHCxOflOlhBACU0hQWXVEECmawE2/+cQQNwlyXKvORFAr8vlvddUEUCr8FtyOnQRQBHgkK9fixFAW6FcJAO2EUBImljsD90RQHxUICnALhJAsg7oZXCAEkDoyK+iINISQC5O7IlpCBNAHYN339AjE0A=\",\"dtype\":\"float64\",\"shape\":[130]}],\"ys\":[{\"__ndarray__\":\"oiE+Mdg3/j/2Z8jgGQf+PxhgOeLNKv4/jGA07FwQ/j+6LZx1Fv39P967XT4KKv4/7QmHWglI/j/8Pq/ByD/+P6hF3DtbO/4/hPs8yTo8/j9H4LLoelD+P9ZRra9bcv4/yxAnUY54/j9swquca6X+P8JQeIYAy/4/buS4QBz3/j83W2hsQzr/PwZ3xNHce/8/zwRosU4AAEBbrhBc5y0AQBzO7fmuQgBAtUZoxkNvAEBnl3NCD4UAQHBidmWmtwBAs2D5im/HAED/KX/TzwkBQEvzBBwwTAFAVhaFjXp9AUCYvIpkkI4BQOSFEK3w0AFAhPDhv/zxAUAwT5b1UBMCQHwYHD6xVQJAyOGhhhGYAkAUqyfPcdoCQGB0rRfSHANArD0zYDJfA0D4BrmokqEDQETQPvHy4wNAkJnEOVMmBED5Ihtu0mIEQNxiSoKzaARAL4HEOJB1BEAoLNDKE6sEQHT1VRN07QRAg1IQGYciBUDAvttb1C8FQACv+154QAVADIhhpDRyBUBYUefslLQFQKQabTX19gVA6kKzsBn6BUDw4/J9VTkGQEX39S0sQQZABw3sn8ZqBkA+rXjGtXsGQAcXPWZPjAZAxXTnzuC2BkCJdv4OFr4GQD+kcYzJ9gZA1T+EV3YAB0Dr8w0A4i8HQCEJCqDWQgdABLPlhKdjB0BlG6lJWIIHQG3Sj+g2hQdA56PxuUiMB0Bs0o/oNoUHQOBOK2QGgwdAbdKP6DaFB0C4frMDQI8HQFKsrybImQdAbdKP6DaFB0Cz4aUG/2MHQCEJCqDWQgdAA3HEkKQ5B0BN4bUWwDoHQOdv5YS0MQdAxwGoE/IZB0DVP4RXdgAHQFW5UrbF6wZALN4YTVjIBkAhh1EQCr8GQIl2/g4WvgZAaM7liFOkBkA9rXjGtXsGQFK9uxBVcAZAXSHSzZBBBkDw4/J9VTkGQKQabTX19gVAWFHn7JS0BUAMiGGkNHIFQAvRW+C5PgVAwL7bW9QvBUAlNVZe8yQFQHT1VRN07QRAeb8SwnLVBEAoLNDKE6sEQNxiSoKzaARAkJnEOVMmBEBE0D7x8uMDQPgGuaiSoQNArD0zYDJfA0BgdK0X0hwDQBSrJ89x2gJAyOGhhhGYAkB8GBw+sVUCQDBPlvVQEwJA+EWG+Ev/AUDkhRCt8NABQJi8imSQjgFATPMEHDBMAUD/KX/TzwkBQLNg+YpvxwBAmWJJHXe5AEBnl3NCD4UAQPUzJ6sqfwBAG87t+a5CAEDB+eKWBTkAQFehdDbDGwBAzwRosU4AAEAGd8TR3Hv/P/meZGHNRf8/buS4QBz3/j+oR8C57MX+P/gqBiu9xf4/Ni7/cHfm/j+zJTeTF8z+P9VRra9bcv4/oiE+Mdg3/j8=\",\"dtype\":\"float64\",\"shape\":[130]}]},\"selected\":{\"id\":\"8805\"},\"selection_policy\":{\"id\":\"8806\"}},\"id\":\"8648\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"text\":\"\"},\"id\":\"8825\",\"type\":\"Title\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"0\"},\"y\":{\"field\":\"2\"}},\"id\":\"8645\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"8826\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"8828\",\"type\":\"BasicTickFormatter\"}],\"root_ids\":[\"8841\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"d8146acc-b3d0-4c96-a551-3578cb9dbcb3\",\"root_ids\":[\"8841\"],\"roots\":{\"8841\":\"2baddffe-d75e-4128-bec9-65832e7e32b4\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "8841" } }, "output_type": "display_data" } ], "source": [ "bokeh.io.show(\n", " bebi103.viz.corner(\n", " bs_reps,\n", " labels=[\"a₀\", \"a₁\", \"σ\"],\n", " show_contours=True,\n", " levels=[0.95],\n", " plot_ecdf=True,\n", " max_plotted=1000,\n", " )\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The corner plot reveals in this case that the MLEs for $a_0$ and $a_1$ are correlated, as we might expect." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Predictive regression plots\n", "\n", "It is traditional to display a plot of the curve parametrized by the MLEs. Such a plot might look like this:" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "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 = {\"ba89656c-dc15-4b33-8859-71e3091dc3a1\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"9722\"}],\"center\":[{\"id\":\"9725\"},{\"id\":\"9729\"}],\"frame_height\":200,\"frame_width\":200,\"left\":[{\"id\":\"9726\"}],\"renderers\":[{\"id\":\"9747\"},{\"id\":\"9752\"}],\"title\":{\"id\":\"10222\"},\"toolbar\":{\"id\":\"9737\"},\"x_range\":{\"id\":\"9714\"},\"x_scale\":{\"id\":\"9718\"},\"y_range\":{\"id\":\"9716\"},\"y_scale\":{\"id\":\"9720\"}},\"id\":\"9713\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"source\":{\"id\":\"9744\"}},\"id\":\"9748\",\"type\":\"CDSView\"},{\"attributes\":{\"line_color\":\"tomato\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"9750\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"9714\",\"type\":\"DataRange1d\"},{\"attributes\":{\"axis\":{\"id\":\"9726\"},\"dimension\":1,\"ticker\":null},\"id\":\"9729\",\"type\":\"Grid\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"Y1Nhxcc0/D/FqJVct3URQAALPJQ3qQtA2OgIQbPb6r/u1HaxRccSQC46b7jqng1A986C95VmGECQPesDVVMAQCswiNfg6g5A/3DMOAYOIkAPUmewu/sKQNfjHdZKkhBAlY5kstNICEBSm/mZEUUEQJpw4i0euQNAErR8Etfr/D+dpE9mLVcWQIzjWUjGYxNAtlPvE372A0BXwz5yQ/sQQEQquMl0XBJAzsj8h/9CDUAnBoBYLYH7P90nmFOHzAVAJeCpgUgnEEAUX/9qbVwBQIwG8b425wpAhPMbLjCD5b8WADO89AsbQIwucXHYGdA/M9lcUdgV+T+m2xWdeiYYQMnr5BlzcPY/sVCI1Vx2FUCW0oCotgEAQLC5gwZs9Oy/fG7qRXow5D8JKo7FTQIGQGKhUpCjB+s/izs+tIGI9r8XpMFvO5n4P7Frc6svc/o//y/JAF2OE0Dk5+yFFxDvP/tThImL+hJAwf6s8AlB/T/+VAptLxz2P6hKq9Od+QJAisWJ3jrg5j+Vs5S7lfoEQCyxLSXCXuu/IGC2TlDr1r8kn1PqLooTQHBzTAose8Q/oPNotLbru78bpAhW1Z3iP+gOjL+9XhFAikns7XB1EEAGzXgglZTpP/+hWppmtYa/1LEITiaQCUDUqn6q/hHnP6yzTSZVPxNA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"aRRfd0bpJ0DbzxTI9EUmQLFvA6I/mihATP3uvMXNJEC8TLNpxdknQI1ViYUv7iZAttyuZ/3xJUBGDm99B/UiQJCPlIA2ASpA9P8DFWLJMEAmqG9+LHAhQIDV2G7tfCVAebqhup9IJUDxQ3x9tKgYQM0OLDXm/iFAPt/elb5DI0BVe5i5nYsnQGIx5WqXzSFAodMvXO4cGUCiHOO7NsspQG/KTCTvvSRAT0Vh+/BMFECNIAV1Lz4iQMke2jGJ6iNALzXJj0yxIUAH8o8ZGh4iQHKn6nSwdhFAEPKF5Fvr4L+u0IZJy5koQOTalQtCXhFAdVgxf+fHF0Bw9YdE4UogQL2A6uBf2w1AZuQMZk5kF0BRFVStDREZQL171fCZcxBAWtZW/flQFUDZM3Hs/kcfQJsAzTnhBA5AfQDxE/EqD0CmX3c/zIAWQGGX1h03OBpAF9yk95mFI0CQ/RrX+Qv2P/pD3ySmECRADOmPs14ZIEAE2nhl2yIXQI4zM6x16CFA76I1GrV6C0A7U5WyDV0TQIt99NMJrxdASWmGTZ88H0BfiO/9WqMgQEbChEW8LhVAnY/6IzHsEkDLQOQEWEIRQPZQqvcFNxdA2X7/8uoaFEAXhDciW/MMQDQD49DFohFAkols8F1tJkCRtA3Dz/IbQLjX0NV8SyFA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"10228\"},\"selection_policy\":{\"id\":\"10229\"}},\"id\":\"9744\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"10228\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"9720\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"9749\"},\"glyph\":{\"id\":\"9750\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"9751\"},\"selection_glyph\":null,\"view\":{\"id\":\"9753\"}},\"id\":\"9752\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"9716\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"9727\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"10230\",\"type\":\"Selection\"},{\"attributes\":{\"formatter\":{\"id\":\"10223\"},\"ticker\":{\"id\":\"9727\"}},\"id\":\"9726\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"9745\",\"type\":\"Circle\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"tomato\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"9751\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"10231\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"9749\"}},\"id\":\"9753\",\"type\":\"CDSView\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"9730\"},{\"id\":\"9731\"},{\"id\":\"9732\"},{\"id\":\"9733\"},{\"id\":\"9734\"},{\"id\":\"9735\"}]},\"id\":\"9737\",\"type\":\"Toolbar\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"9736\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"10223\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"10229\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"text\":\"\"},\"id\":\"10222\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"9718\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"10225\"},\"ticker\":{\"id\":\"9723\"}},\"id\":\"9722\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"9734\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"9733\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"9730\",\"type\":\"PanTool\"},{\"attributes\":{\"axis\":{\"id\":\"9722\"},\"ticker\":null},\"id\":\"9725\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"9723\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"10225\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data_source\":{\"id\":\"9744\"},\"glyph\":{\"id\":\"9745\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"9746\"},\"selection_glyph\":null,\"view\":{\"id\":\"9748\"}},\"id\":\"9747\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"overlay\":{\"id\":\"9736\"}},\"id\":\"9732\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"Y1Nhxcc0/D/FqJVct3URQAALPJQ3qQtA2OgIQbPb6r/u1HaxRccSQC46b7jqng1A986C95VmGECQPesDVVMAQCswiNfg6g5A/3DMOAYOIkAPUmewu/sKQNfjHdZKkhBAlY5kstNICEBSm/mZEUUEQJpw4i0euQNAErR8Etfr/D+dpE9mLVcWQIzjWUjGYxNAtlPvE372A0BXwz5yQ/sQQEQquMl0XBJAzsj8h/9CDUAnBoBYLYH7P90nmFOHzAVAJeCpgUgnEEAUX/9qbVwBQIwG8b425wpAhPMbLjCD5b8WADO89AsbQIwucXHYGdA/M9lcUdgV+T+m2xWdeiYYQMnr5BlzcPY/sVCI1Vx2FUCW0oCotgEAQLC5gwZs9Oy/fG7qRXow5D8JKo7FTQIGQGKhUpCjB+s/izs+tIGI9r8XpMFvO5n4P7Frc6svc/o//y/JAF2OE0Dk5+yFFxDvP/tThImL+hJAwf6s8AlB/T/+VAptLxz2P6hKq9Od+QJAisWJ3jrg5j+Vs5S7lfoEQCyxLSXCXuu/IGC2TlDr1r8kn1PqLooTQHBzTAose8Q/oPNotLbru78bpAhW1Z3iP+gOjL+9XhFAikns7XB1EEAGzXgglZTpP/+hWppmtYa/1LEITiaQCUDUqn6q/hHnP6yzTSZVPxNA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"yBCMkeeYG0ACEKXPJwcjQHCCLupaNCFAXYtTalwjEUByJ97rv7AjQEaKZflisiFAhMlX++KDJkDGMdBNwLYcQH6fzD7HBSJAz8Q4oN1lLEBKues/xgghQESHXsbklCJAqJg9azZbIECvr7GdD7IeQKp9wka/ax5AVTvUDOTGG0BGGJA86HolQAge+RZh/yNAITdTN5WKHkC2cV0OoskiQFR9t1kVeyNAUbl5ukubIUC0ADBgyWsbQA1vAMq8dh9ApkNFXyFfIkCho+CY8DsdQI1OyqmeAyFAb2b3kkDPEUCUkxinNdgnQFQ6P0bXhRVA4zUccDTQGkCcFaKfrWMmQNj4insJJhpAVP2Xy/QJJUCgK6qavo0cQN4+JUPy3xBAdhM16ykMF0BKWE1MwZEfQLMinxEe6BdAgGphIsKzDUBAS4Om5rAaQGyWR2X2JxtA1Tzjz8YUJEAX3HNVzGkYQLLir5SCyiNAssPAIkvcG0ChVvt73hAaQBXc94+ICx5ARVLua4xiF0C8eeYJQg0fQPXv30XmEhFAAWuE038SE0DmQEgurRIkQPCvuAqfJxVABZLZtMESFEARcEX+ltkWQINCdMic+yJAxWl09mWGIkAkKQ/YgrkXQA8C8RCSdxRAJp0/YHCtIEBeOuKYzGgXQKBOSvcR7SNA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"10230\"},\"selection_policy\":{\"id\":\"10231\"}},\"id\":\"9749\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"9735\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"9731\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"9746\",\"type\":\"Circle\"}],\"root_ids\":[\"9713\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"ba89656c-dc15-4b33-8859-71e3091dc3a1\",\"root_ids\":[\"9713\"],\"roots\":{\"9713\":\"8995e834-41f8-4619-a963-b29ba0493621\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "9713" } }, "output_type": "display_data" } ], "source": [ "a0, a1, sigma = mle_params\n", "\n", "p = bokeh.plotting.figure(frame_height=200, frame_width=200)\n", "p.circle(x, y)\n", "p.line(x, a0 + a1 * x, color='tomato')\n", "\n", "bokeh.io.show(p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "However, this kind of plot does not display what might be predicted from the generative model, which has variability in measured beyond the (in this case linear) theoretical curve. It is more instructive to make a predictive regression plot. This is generated by drawing samples out of the generative model, and then plotting percentiles of the samples. This is accomplished with the `bebi103.viz.predictive_regression()` function.\n", "\n", "It expects the data to come as a two-column Numpy array, so we need to create one." ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [], "source": [ "xy = df[['x', 'y']].values" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We also need to specify for which x-values we want the samples. We can choose arbitrary x-values, so we will choose 200 point spanning the range of the data set in order to get smooth curves." ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "samples_x = np.linspace(-3, 10, 200)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, we can draw sample (we'll do 10,000 of them), and make the plot." ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "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 = {\"32b1d886-e1df-486f-82b1-be0503eb077a\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"10307\"}],\"center\":[{\"id\":\"10310\"},{\"id\":\"10314\"}],\"frame_height\":325,\"frame_width\":400,\"left\":[{\"id\":\"10311\"}],\"renderers\":[{\"id\":\"10332\"},{\"id\":\"10337\"},{\"id\":\"10342\"},{\"id\":\"10347\"}],\"title\":{\"id\":\"10828\"},\"toolbar\":{\"id\":\"10322\"},\"x_range\":{\"id\":\"10299\"},\"x_scale\":{\"id\":\"10303\"},\"y_range\":{\"id\":\"10301\"},\"y_scale\":{\"id\":\"10305\"}},\"id\":\"10298\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"overlay\":{\"id\":\"10321\"}},\"id\":\"10317\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#6baed6\",\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10336\",\"type\":\"Patch\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10346\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"10344\"}},\"id\":\"10348\",\"type\":\"CDSView\"},{\"attributes\":{\"axis\":{\"id\":\"10307\"},\"ticker\":null},\"id\":\"10310\",\"type\":\"Grid\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10345\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"10840\",\"type\":\"Selection\"},{\"attributes\":{\"axis_label\":\"y\",\"formatter\":{\"id\":\"10829\"},\"ticker\":{\"id\":\"10312\"}},\"id\":\"10311\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis_label\":\"x\",\"formatter\":{\"id\":\"10831\"},\"ticker\":{\"id\":\"10308\"}},\"id\":\"10307\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"10841\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"10320\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"10315\",\"type\":\"PanTool\"},{\"attributes\":{\"source\":{\"id\":\"10339\"}},\"id\":\"10343\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"10831\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"10303\",\"type\":\"LinearScale\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[200]}},\"selected\":{\"id\":\"10838\"},\"selection_policy\":{\"id\":\"10839\"}},\"id\":\"10339\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"10308\",\"type\":\"BasicTicker\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"10315\"},{\"id\":\"10316\"},{\"id\":\"10317\"},{\"id\":\"10318\"},{\"id\":\"10319\"},{\"id\":\"10320\"}]},\"id\":\"10322\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"10835\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"10836\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"10837\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"10321\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10340\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"10334\"},\"glyph\":{\"id\":\"10335\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10336\"},\"selection_glyph\":null,\"view\":{\"id\":\"10338\"}},\"id\":\"10337\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"fQDxE/EqD0C9e9XwmXMQQIt99NMJrxdATP3uvMXNJEAQ8oXkW+vgv0lphk2fPB9AnY/6IzHsEkA0A+PQxaIRQEbChEW8LhVA5NqVC0JeEUDLQOQEWEIRQFrWVv35UBVA76I1GrV6C0CRtA3Dz/IbQBeENyJb8wxAmwDNOeEEDkCQ/RrX+Qv2PwTaeGXbIhdAvYDq4F/bDUCmX3c/zIAWQHVYMX/nxxdAYZfWHTc4GkCNIAV1Lz4iQGkUX3dG6SdAPt/elb5DI0AM6Y+zXhkgQFEVVK0NERlARg5vfQf1IkAH8o8ZGh4iQI4zM6x16CFAzQ4sNeb+IUCh0y9c7hwZQPFDfH20qBhAO1OVsg1dE0DJHtoxieojQNkzcez+Rx9Aebqhup9IJUCSiWzwXW0mQHKn6nSwdhFAJqhvfixwIUCxbwOiP5ooQE9FYfvwTBRAjVWJhS/uJkCQj5SANgEqQC81yY9MsSFA2X7/8uoaFECA1dhu7XwlQKIc47s2yylA9lCq9wU3F0DbzxTI9EUmQG/KTCTvvSRAvEyzacXZJ0D6Q98kphAkQLjX0NV8SyFAYjHlapfNIUBfiO/9WqMgQBfcpPeZhSNAZuQMZk5kF0BVe5i5nYsnQHD1h0ThSiBAttyuZ/3xJUCu0IZJy5koQPT/AxViyTBA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"10840\"},\"selection_policy\":{\"id\":\"10841\"}},\"id\":\"10344\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"10334\"}},\"id\":\"10338\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"10834\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"10829\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"10305\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_color\":\"#6baed6\",\"line_alpha\":0,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10335\",\"type\":\"Patch\"},{\"attributes\":{\"end\":10,\"start\":-3},\"id\":\"10299\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"10329\"},\"glyph\":{\"id\":\"10330\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10331\"},\"selection_glyph\":null,\"view\":{\"id\":\"10333\"}},\"id\":\"10332\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"10339\"},\"glyph\":{\"id\":\"10340\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10341\"},\"selection_glyph\":null,\"view\":{\"id\":\"10343\"}},\"id\":\"10342\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"AAAAAAAACMC19bcHNnoHwGvrbw9s9AbAIOEnF6JuBsDW1t8e2OgFwIvMlyYOYwXAQMJPLkTdBMD2twc2elcEwKutvz2w0QPAYKN3ReZLA8AWmS9NHMYCwMuO51RSQALAgISfXIi6AcA2eldkvjQBwOtvD2z0rgDAoGXHcyopAMCstv72wEb/vxeibgYtO/6/go3eFZkv/b/seE4lBST8v1dkvjRxGPu/wk8uRN0M+r8sO55TSQH5v5cmDmO19fe/AhJ+ciHq9r9t/e2Bjd71v9joXZH50vS/QtTNoGXH87+tvz2w0bvyvxirrb89sPG/gpYdz6mk8L/cAxu9KzLvv7Da+tsDG+2/hLHa+tsD679ciLoZtOzovzBfmjiM1ea/CDZ6V2S+5L/cDFp2PKfiv7DjOZUUkOC/EHUzaNnx3L+4IvOlicPYv2DQsuM5ldS/EH5yIepm0L9wV2S+NHHIv8Cy4zmVFMC/gDiM1dbfrr8A0rLjOZV0P2B2PKeSArI/4N8e2OhdwT+QhJ9ciLrJP5gUkPCTC9E/8GbQsuM51T9AuRB1M2jZP5gLUTeDlt0/+K7IfGni4D8g2OhdkfniP0wBCT+5EOU/eCopIOEn5z+gU0kBCT/pP8x8aeIwVus/+KWJw1ht7T8gz6mkgITvPyT85ELUzfA/vBB1M2jZ8T9QJQUk/OTyP+Q5lRSQ8PM/fE4lBST89D8QY7X1twf2P6R3ReZLE/c/PIzV1t8e+D/QoGXHcyr5P2S19bcHNvo/+MmFqJtB+z+Q3hWZL038PyTzpYnDWP0/uAc2eldk/j9QHMZq62//P3IYq62/PQBAvCLzpYnDAEAILTueU0kBQFI3g5YdzwFAnEHLjudUAkDoSxOHsdoCQDJWW397YANAfGCjd0XmA0DIautvD2wEQBJ1M2jZ8QRAXH97YKN3BUCoicNYbf0FQPKTC1E3gwZAPJ5TSQEJB0CGqJtBy44HQNKy4zmVFAhAHL0rMl+aCEBmx3MqKSAJQLLRuyLzpQlA/NsDG70rCkBG5ksTh7EKQJLwkwtRNwtA3PrbAxu9C0AmBST85EIMQHIPbPSuyAxAvBm07HhODUAGJPzkQtQNQFAuRN0MWg5AnDiM1dbfDkDmQtTNoGUPQDBNHMZq6w9AvisyX5o4EEDjMFZbf3sQQAg2eldkvhBALjueU0kBEUBTQMJPLkQRQHhF5ksThxFAnkoKSPjJEUDDTy5E3QwSQOhUUkDCTxJADlp2PKeSEkAzX5o4jNUSQFhkvjRxGBNAfmniMFZbE0CjbgYtO54TQMhzKikg4RNA7nhOJQUkFEASfnIh6mYUQDiDlh3PqRRAXoi6GbTsFECCjd4VmS8VQKiSAhJ+chVAzpcmDmO1FUDynEoKSPgVQBiibgYtOxZAPqeSAhJ+FkBirLb+9sAWQIix2vrbAxdArrb+9sBGF0DSuyLzpYkXQPjARu+KzBdAHsZq628PGEBCy47nVFIYQGjQsuM5lRhAjtXW3x7YGECy2vrbAxsZQNjfHtjoXRlA/ORC1M2gGUAi6mbQsuMZQEjvisyXJhpAbPSuyHxpGkCS+dLEYawaQLj+9sBG7xpA3AMbvSsyG0ACCT+5EHUbQCgOY7X1txtATBOHsdr6G0ByGKutvz0cQJgdz6mkgBxAvCLzpYnDHEDiJxeibgYdQAgtO55TSR1ALDJfmjiMHUBSN4OWHc8dQHg8p5ICEh5AnEHLjudUHkDCRu+KzJceQOhLE4ex2h5ADFE3g5YdH0AyVlt/e2AfQFhbf3tgox9AfGCjd0XmH0DRsuM5lRQgQGS19bcHNiBA9rcHNnpXIECJuhm07HggQBy9KzJfmiBArr89sNG7IEBBwk8uRN0gQNTEYay2/iBAZsdzKikgIUD5yYWom0EhQIvMlyYOYyFAHs+ppICEIUCx0bsi86UhQEPUzaBlxyFA1tbfHtjoIUBp2fGcSgoiQPvbAxu9KyJAjt4VmS9NIkAh4ScXom4iQLPjOZUUkCJARuZLE4exIkDZ6F2R+dIiQGvrbw9s9CJA/u2Bjd4VI0CR8JMLUTcjQCPzpYnDWCNAtvW3BzZ6I0BJ+MmFqJsjQNv62wMbvSNAbv3tgY3eI0AAAAAAAAAkQAAAAAAAACRAbv3tgY3eI0Db+tsDG70jQEn4yYWomyNAtvW3BzZ6I0Aj86WJw1gjQJHwkwtRNyNA/u2Bjd4VI0Br628PbPQiQNnoXZH50iJARuZLE4exIkCz4zmVFJAiQCHhJxeibiJAjt4VmS9NIkD72wMbvSsiQGnZ8ZxKCiJA1tbfHtjoIUBD1M2gZcchQLHRuyLzpSFAHs+ppICEIUCLzJcmDmMhQPnJhaibQSFAZsdzKikgIUDUxGGstv4gQEHCTy5E3SBArr89sNG7IEAcvSsyX5ogQIm6GbTseCBA9rcHNnpXIEBktfW3BzYgQNGy4zmVFCBAfGCjd0XmH0BYW397YKMfQDJWW397YB9ADFE3g5YdH0DoSxOHsdoeQMJG74rMlx5AnEHLjudUHkB4PKeSAhIeQFI3g5Ydzx1ALDJfmjiMHUAILTueU0kdQOInF6JuBh1AvCLzpYnDHECYHc+ppIAcQHIYq62/PRxATBOHsdr6G0AoDmO19bcbQAIJP7kQdRtA3AMbvSsyG0C4/vbARu8aQJL50sRhrBpAbPSuyHxpGkBI74rMlyYaQCLqZtCy4xlA/ORC1M2gGUDY3x7Y6F0ZQLLa+tsDGxlAjtXW3x7YGEBo0LLjOZUYQELLjudUUhhAHsZq628PGED4wEbviswXQNK7IvOliRdArrb+9sBGF0CIsdr62wMXQGKstv72wBZAPqeSAhJ+FkAYom4GLTsWQPKcSgpI+BVAzpcmDmO1FUCokgISfnIVQIKN3hWZLxVAXoi6GbTsFEA4g5Ydz6kUQBJ+ciHqZhRA7nhOJQUkFEDIcyopIOETQKNuBi07nhNAfmniMFZbE0BYZL40cRgTQDNfmjiM1RJADlp2PKeSEkDoVFJAwk8SQMNPLkTdDBJAnkoKSPjJEUB4ReZLE4cRQFNAwk8uRBFALjueU0kBEUAINnpXZL4QQOMwVlt/exBAvisyX5o4EEAwTRzGausPQOZC1M2gZQ9AnDiM1dbfDkBQLkTdDFoOQAYk/ORC1A1AvBm07HhODUByD2z0rsgMQCYFJPzkQgxA3PrbAxu9C0CS8JMLUTcLQEbmSxOHsQpA/NsDG70rCkCy0bsi86UJQGbHcyopIAlAHL0rMl+aCEDSsuM5lRQIQIaom0HLjgdAPJ5TSQEJB0DykwtRN4MGQKiJw1ht/QVAXH97YKN3BUASdTNo2fEEQMhq628PbARAfGCjd0XmA0AyVlt/e2ADQOhLE4ex2gJAnEHLjudUAkBSN4OWHc8BQAgtO55TSQFAvCLzpYnDAEByGKutvz0AQFAcxmrrb/8/uAc2eldk/j8k86WJw1j9P5DeFZkvTfw/+MmFqJtB+z9ktfW3Bzb6P9CgZcdzKvk/PIzV1t8e+D+kd0XmSxP3PxBjtfW3B/Y/fE4lBST89D/kOZUUkPDzP1AlBST85PI/vBB1M2jZ8T8k/ORC1M3wPyDPqaSAhO8/+KWJw1ht7T/MfGniMFbrP6BTSQEJP+k/eCopIOEn5z9MAQk/uRDlPyDY6F2R+eI/+K7IfGni4D+YC1E3g5bdP0C5EHUzaNk/8GbQsuM51T+YFJDwkwvRP5CEn1yIusk/4N8e2OhdwT9gdjynkgKyPwDSsuM5lXQ/gDiM1dbfrr/AsuM5lRTAv3BXZL40cci/EH5yIepm0L9g0LLjOZXUv7gi86WJw9i/EHUzaNnx3L+w4zmVFJDgv9wMWnY8p+K/CDZ6V2S+5L8wX5o4jNXmv1yIuhm07Oi/hLHa+tsD67+w2vrbAxvtv9wDG70rMu+/gpYdz6mk8L8Yq62/PbDxv62/PbDRu/K/QtTNoGXH87/Y6F2R+dL0v2397YGN3vW/AhJ+ciHq9r+XJg5jtfX3vyw7nlNJAfm/wk8uRN0M+r9XZL40cRj7v+x4TiUFJPy/go3eFZkv/b8Xom4GLTv+v6y2/vbARv+/oGXHcyopAMDrbw9s9K4AwDZ6V2S+NAHAgISfXIi6AcDLjudUUkACwBaZL00cxgLAYKN3ReZLA8Crrb89sNEDwPa3BzZ6VwTAQMJPLkTdBMCLzJcmDmMFwNbW3x7Y6AXAIOEnF6JuBsBr628PbPQGwLX1twc2egfAAAAAAAAACMA=\",\"dtype\":\"float64\",\"shape\":[400]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[400]}},\"selected\":{\"id\":\"10836\"},\"selection_policy\":{\"id\":\"10837\"}},\"id\":\"10334\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"10312\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"10838\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"10301\",\"type\":\"DataRange1d\"},{\"attributes\":{\"text\":\"\"},\"id\":\"10828\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"10839\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"10318\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"10319\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_color\":\"#9ecae1\",\"line_alpha\":0,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10330\",\"type\":\"Patch\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#9ecae1\",\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10331\",\"type\":\"Patch\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10341\",\"type\":\"Line\"},{\"attributes\":{\"axis\":{\"id\":\"10311\"},\"dimension\":1,\"ticker\":null},\"id\":\"10314\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"10329\"}},\"id\":\"10333\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"10316\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[400]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[400]}},\"selected\":{\"id\":\"10834\"},\"selection_policy\":{\"id\":\"10835\"}},\"id\":\"10329\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"10344\"},\"glyph\":{\"id\":\"10345\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10346\"},\"selection_glyph\":null,\"view\":{\"id\":\"10348\"}},\"id\":\"10347\",\"type\":\"GlyphRenderer\"}],\"root_ids\":[\"10298\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"32b1d886-e1df-486f-82b1-be0503eb077a\",\"root_ids\":[\"10298\"],\"roots\":{\"10298\":\"6ac4ddf0-1f43-462f-a0ea-f8247f119c85\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "10298" } }, "output_type": "display_data" } ], "source": [ "samples = np.array(\n", " [gen_fun(mle_params, samples_x, size=1, rg=rg) for _ in range(5000)]\n", ")\n", "\n", "bokeh.io.show(\n", " bebi103.viz.predictive_regression(\n", " samples, samples_x, data=xy, x_range=[-3, 10],\n", " )\n", ")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By default, the middle 68% and 95% of samples are shown in the shaded blue regions, and the dark blue line is the median of the samples.\n", "\n", "If we would like to compare the difference between compared to the median, we can use the `diff=True` kwarg. However, for this kind of plot, the x-values for which the samples were generated have to match those of the data. This is a necessary because the x-values can in general be floats and it is not entirely ambiguous which samples correspond to which x-values otherwise." ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "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 = {\"10e4857d-d97e-429a-ac85-b9ad6cfe0394\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"10941\"}],\"center\":[{\"id\":\"10944\"},{\"id\":\"10948\"}],\"frame_height\":325,\"frame_width\":400,\"left\":[{\"id\":\"10945\"}],\"renderers\":[{\"id\":\"10966\"},{\"id\":\"10971\"},{\"id\":\"10976\"},{\"id\":\"10981\"}],\"title\":{\"id\":\"11477\"},\"toolbar\":{\"id\":\"10956\"},\"x_range\":{\"id\":\"10933\"},\"x_scale\":{\"id\":\"10937\"},\"y_range\":{\"id\":\"10935\"},\"y_scale\":{\"id\":\"10939\"}},\"id\":\"10932\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"10954\",\"type\":\"HelpTool\"},{\"attributes\":{\"overlay\":{\"id\":\"10955\"}},\"id\":\"10951\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"10941\"},\"ticker\":null},\"id\":\"10944\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"10952\",\"type\":\"SaveTool\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA/3DMOAYOIkAWADO89AsbQPfOgveVZhhAptsVnXomGECdpE9mLVcWQLFQiNVcdhVA/y/JAF2OE0Akn1PqLooTQIzjWUjGYxNArLNNJlU/E0D7U4SJi/oSQO7UdrFFxxJARCq4yXRcEkDFqJVct3URQOgOjL+9XhFAV8M+ckP7EEDX4x3WSpIQQIpJ7O1wdRBAJeCpgUgnEEArMIjX4OoOQC46b7jqng1Azsj8h/9CDUAACzyUN6kLQA9SZ7C7+wpAjAbxvjbnCkDUsQhOJpAJQJWOZLLTSAhACSqOxU0CBkDdJ5hTh8wFQJWzlLuV+gRAUpv5mRFFBEC2U+8TfvYDQJpw4i0euQNAqEqr0535AkAUX/9qbVwBQJA96wNVUwBAltKAqLYBAEDB/qzwCUH9PxK0fBLX6/w/Y1Nhxcc0/D8nBoBYLYH7P7Frc6svc/o/M9lcUdgV+T8XpMFvO5n4P8nr5BlzcPY//lQKbS8c9j/k5+yFFxDvP2KhUpCjB+s/Bs14IJWU6T/Uqn6q/hHnP4rFid464OY/fG7qRXow5D8bpAhW1Z3iP4wucXHYGdA/cHNMCix7xD//oVqaZrWGv6DzaLS267u/IGC2TlDr1r+E8xsuMIPlv9joCEGz2+q/LLEtJcJe67+wuYMGbPTsv4s7PrSBiPa/\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"/LMfgwQaE8AyXRx8QhkTwF0OdlM74RPAo0EE/dX3EsDHwog0IDETwMrQ8OKEcxPAySzC8wlXEsAARvTHM7oSwCl9IxPoLBPAUtwhdZLDEsCuxoYEFdsTwMD+/vB15RLAID6DaOi2EsCS/P0GMvkSwOEIT06kiBPAau2UFoumE8BWw3AlO/ASwG2q7+miMRPA1yRonMg1E8BqnaofVR8TwH37FRE6PBPA/2WnSBnZEsDF1myWF18TwM+oA5B/LhPAOiTJnTF2E8AUPlqOqowTwOuF93fwVBPAaGKAL3XKE8DMDufwdKsSwMCYUwN6bhLAMycrIek+FMAykxyeC0sTwGdRTC4WwBLA1A/3OCnoEsC4Gbfsd1cTwH5VAjT5SxPAOkuArVoZE8DcvwoGpo8SwNQcxMlgzxLA3NNAu8vHEsAKGg9Ume4SwORJ9pMsDxPAY8t7XplbE8DWu8K2O+kSwO3UD7G9PxPAqkkgHAhnE8BlEq6T5twSwJvnZ5qtMRPACtGFmZvFEsC3F6yjWLgTwKtD/5igxBLACB9v7hdLE8BnWAPY6k4TwIxWqHJP2hLAEWeYPMuSE8AI8BpCjLMTwJcjssz58xLATqHDbyR/EsCCA+1EWoETwPFoJRW5NRPAVh4WXQTtEsD8Bk562JgSwJinLNy58BLAzExAbsePE0Bsn7PRiR0TQNgT3bHVHRNAVJrWrF6iE0B622/bE+ESQK4fG/wn7hJAnpq2mXYZE0B6fIGcp00TQKY+Z9lEmRNA1mACFzdQE0BcvFGNGCATQHZg+TdNjBNApMz9bNUXE0AmUEB7YEkTQMoVkU/sGhNAjFF1Gjd6E0DaR9zL5EITQJxc14NQ7hJAcqyNkyl3EkC0/PU0LDMTQMbqaEmM0xNAIpLayLjTEkC8MLr80bQSQIb89I+PNRNAPCiksIHHEkAgIIUld7YTQILAeigdrxNAKPx6bd/UEkBeGemjrWwTQOBQGNKP5xNAWFmgjROrEkC0Y9Y1jeYSQAq2euLhFhNA0CcVvFqqEkDKWSauPacSQB5cnLdulhNAAnS43lyfEkDM1K/S1WcTQDTOhgj+AxNAgh0+9TWEE0Dvjc7E7gQTQPLYqga76hJAYZptvq01E0AgPAmqpf0SQGbUxoRknxNAk8AlbdfxEkBGMewhwI0TQOwOEivBQRNAcEbrdmevEkDoRn5UqyYTQBCVcZsjMxNAGmeDvKc7E0BMEvx7JFsTQOZJ+h+w4RJA1up2v0VDE0Akd1/MEzQTQE5b4pkaBxNA4ED8J2zgEkB262g2CYgTQMVd+9KrqRNACF3s7AExE0CQT2F3ENgSQPWb3YLEOhNA\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"11483\"},\"selection_policy\":{\"id\":\"11484\"}},\"id\":\"10963\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"10953\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"11487\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"11488\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"10973\"},\"glyph\":{\"id\":\"10974\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10975\"},\"selection_glyph\":null,\"view\":{\"id\":\"10977\"}},\"id\":\"10976\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":\"#9ecae1\",\"line_alpha\":0,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10964\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"10935\",\"type\":\"DataRange1d\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#9ecae1\",\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10965\",\"type\":\"Patch\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA/3DMOAYOIkAWADO89AsbQPfOgveVZhhAptsVnXomGECdpE9mLVcWQLFQiNVcdhVA/y/JAF2OE0Akn1PqLooTQIzjWUjGYxNArLNNJlU/E0D7U4SJi/oSQO7UdrFFxxJARCq4yXRcEkDFqJVct3URQOgOjL+9XhFAV8M+ckP7EEDX4x3WSpIQQIpJ7O1wdRBAJeCpgUgnEEArMIjX4OoOQC46b7jqng1Azsj8h/9CDUAACzyUN6kLQA9SZ7C7+wpAjAbxvjbnCkDUsQhOJpAJQJWOZLLTSAhACSqOxU0CBkDdJ5hTh8wFQJWzlLuV+gRAUpv5mRFFBEC2U+8TfvYDQJpw4i0euQNAqEqr0535AkAUX/9qbVwBQJA96wNVUwBAltKAqLYBAEDB/qzwCUH9PxK0fBLX6/w/Y1Nhxcc0/D8nBoBYLYH7P7Frc6svc/o/M9lcUdgV+T8XpMFvO5n4P8nr5BlzcPY//lQKbS8c9j/k5+yFFxDvP2KhUpCjB+s/Bs14IJWU6T/Uqn6q/hHnP4rFid464OY/fG7qRXow5D8bpAhW1Z3iP4wucXHYGdA/cHNMCix7xD//oVqaZrWGv6DzaLS267u/IGC2TlDr1r+E8xsuMIPlv9joCEGz2+q/LLEtJcJe67+wuYMGbPTsv4s7PrSBiPa/\",\"dtype\":\"float64\",\"shape\":[126]},\"y\":{\"__ndarray__\":\"JKqp5dYmA8CN8EJ7B28DwEbaHjfxAgTAQYjkFrzoAsA0Yq4Z2YMDwGJVz6QC1wPAAgPxrl5NA8BflQEYD8ACwJWC0+Y1twPAomgsoBiWAsCbJukQMPsDwEqcGFMRWgPAlCnpspNqA8DEHkya8SwDwIYxmC9pqQPAkGvIuONSA8D5Li1Fx+sCwJQ6Jw+CaAPAMgtKSinFAsD2OryhUMADwDawpQK6ZwPAqK0eZGeGA8CWUXNZXnwDwIB9LmgvPwTAlNq5FxcqA8AWT3ILbMEDwHBOJr3TCATAWGUAhf/IA8BkgL1arMICwJziAott8QPA0Fbj5OmmA8AeEhLtO4EDwGhCxtKuYwPAns8h/qmDAsC01kGh0bMDwJTgu56TPgPAZvc0Et17A8DMgMA6LM4CwB4SpgukKgPA/A1ap3X7AsCya1oXhBUDwA4R85wNNgPAOHquEV/NA8BkDuXp/yYDwBxZ+T9d6QPAqBSm0K9SBMDAmePYJigDwE694UrbGgPAxMfh3ReZA8DaDNfGYIwDwPZpShCLPAPAtPIyX08LA8BmPdkULw4EwP4Li5QPAQPAPq5BuD3cA8DakXdz/fEDwGCpcxTCTwPAqEZUyxo/A8A8qZEvl94DwDAQNEVQtwPANPDKku0lA8DoO9q+gGYDwNhS5O/J/ALAYC2flHGpA0AQ9fy4z3YDQETZ2v0uDgRAUMtr3K/4A0BYjA61Fh0DQCCMOu0ObgNAdA7Tdqf7AkDIfZvg4WkDQEw8FsEOaQNAuGdCiFT0A0CIp/k+rFAEQLj0P0dy0wNA4NR8vfxfA0Bo0jlwzbYDQHhRwWe1YwNAGPASaDcpA0Bsfg7yiyQEQAwsHXHxxwJALKp82hIEA0BskW1nSUEDQNxqksWTvwNA8N+x1h5oA0CobEO+mzkDQChRdb0i3gNAAFrvXJKZA0B40OWwOqEDQDS1aolLaQNAzH0YF2ZoAkBcgfHoV3QDQLyPf+uF3gNA9N1szHl6A0BoHUF7q8QDQCRMzwcDzwNAZPPdnW14A0BwhNB1i6sDQID7SuqydwNAtHnLHZz9AkAQzaWmrH4DQKypKe7aXANArCvvYKMCA0AKXd9d4bYDQGCRbat7ogNA3koHrtxoBED86+xTadwDQCSMdtTJJQNAksMTFVWzA0AIA37/PZsDQDCHY7aM2wNAlCWXptjtAkBonEgHkjEDQBgtkI7VZQNA/BPi4X8lA0Bk4SyaP2EDQOia3ojMuwNABiKhRVuAA0AwExpLcTUEQB6T3MScmwNAdHmDJxhqA0DKeJ7lWWkDQJ4HXThPxwNAun0BklBjA0BM+AtnIJkDQOyhB5W2GwNA\",\"dtype\":\"float64\",\"shape\":[126]}},\"selected\":{\"id\":\"11485\"},\"selection_policy\":{\"id\":\"11486\"}},\"id\":\"10968\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"end\":9.027391219097352,\"start\":-1.4083268204446735},\"id\":\"10933\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"11489\",\"type\":\"Selection\"},{\"attributes\":{\"fill_color\":\"#6baed6\",\"line_alpha\":0,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10969\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"11490\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"10963\"}},\"id\":\"10967\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"10963\"},\"glyph\":{\"id\":\"10964\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10965\"},\"selection_glyph\":null,\"view\":{\"id\":\"10967\"}},\"id\":\"10966\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis_label\":\"x\",\"formatter\":{\"id\":\"11480\"},\"ticker\":{\"id\":\"10942\"}},\"id\":\"10941\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"10945\"},\"dimension\":1,\"ticker\":null},\"id\":\"10948\",\"type\":\"Grid\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"11487\"},\"selection_policy\":{\"id\":\"11488\"}},\"id\":\"10973\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"10955\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":0.1,\"fill_color\":\"#6baed6\",\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":0,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10970\",\"type\":\"Patch\"},{\"attributes\":{},\"id\":\"11483\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10974\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"11484\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10979\",\"type\":\"Circle\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"10949\"},{\"id\":\"10950\"},{\"id\":\"10951\"},{\"id\":\"10952\"},{\"id\":\"10953\"},{\"id\":\"10954\"}]},\"id\":\"10956\",\"type\":\"Toolbar\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"izs+tIGI9r+wuYMGbPTsvyyxLSXCXuu/2OgIQbPb6r+E8xsuMIPlvyBgtk5Q69a/oPNotLbru7//oVqaZrWGv3BzTAose8Q/jC5xcdgZ0D8bpAhW1Z3iP3xu6kV6MOQ/isWJ3jrg5j/Uqn6q/hHnPwbNeCCVlOk/YqFSkKMH6z/k5+yFFxDvP/5UCm0vHPY/yevkGXNw9j8XpMFvO5n4PzPZXFHYFfk/sWtzqy9z+j8nBoBYLYH7P2NTYcXHNPw/ErR8Etfr/D/B/qzwCUH9P5bSgKi2AQBAkD3rA1VTAEAUX/9qbVwBQKhKq9Od+QJAmnDiLR65A0C2U+8TfvYDQFKb+ZkRRQRAlbOUu5X6BEDdJ5hTh8wFQAkqjsVNAgZAlY5kstNICEDUsQhOJpAJQIwG8b425wpAD1JnsLv7CkAACzyUN6kLQM7I/If/Qg1ALjpvuOqeDUArMIjX4OoOQCXgqYFIJxBAikns7XB1EEDX4x3WSpIQQFfDPnJD+xBA6A6Mv71eEUDFqJVct3URQEQquMl0XBJA7tR2sUXHEkD7U4SJi/oSQKyzTSZVPxNAjONZSMZjE0Akn1PqLooTQP8vyQBdjhNAsVCI1Vx2FUCdpE9mLVcWQKbbFZ16JhhA986C95VmGEAWADO89AsbQP9wzDgGDiJA\",\"dtype\":\"float64\",\"shape\":[63]},\"y\":{\"__ndarray__\":\"sJqLNJA8yz9AjFtxSHK4v0SjDx7LHvw/R2pjqquQGECOm5tJm8UTwOJcNHUMnQdA0NCkFgvl0r+ADh33jXXlvwA8wDIDApk/uPZX6XR+8L8U23FVdI33vwAzeqLtjdy/Pb4kY+F/AsCU+hVbGsfyP+Vri0L1WQPAnQng0NjQAcDwNO4jNm8SwHhrf7xVz+e/Y5UmkQd5BsA4aerzj+LwvxAabZSCA+e/4FFthsiMz79e2YzjzrABQJZ9GZBQBBRARALqZvtVBUBABrjOsa7wP4hn+eP/Su6/KMB9xjjKAkBIgLQ4Wwj9P5DdBe4O+/Y/QAtYPI1b9T90PTyo50P2v0yGLJBjqvi/Np243wvlBsB0jvtRHXMAQECyf67fBbu/eMJYdMLYA0Bg4sZT564HQDaSUDgwkRDAwI8he41L0D8My279UWcNQJbga8IBHg7AzCrryi6+BEDYpdigS+kPQCBIzBNp8dS/H6+je/oaEcAI5EOl78n3P2AqNWg+JwxAAK7RzuR1DcCwimC8IJr5PxBZ16KB/+U/HLGCX/b+AECA5InKaLa8P0ge7obTMfS/sHW3sQEB8r+IMhBZ1QL7v8D/Zbs5ktC/Sj75IBTOEsAQbyUR9JrwP/gEL/88pQfAwF0U2xc/0r+AFsJwk+HWP8hkiEfKFgVA\",\"dtype\":\"float64\",\"shape\":[63]}},\"selected\":{\"id\":\"11489\"},\"selection_policy\":{\"id\":\"11490\"}},\"id\":\"10978\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#084594\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10975\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"10968\"}},\"id\":\"10972\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"10968\"},\"glyph\":{\"id\":\"10969\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10970\"},\"selection_glyph\":null,\"view\":{\"id\":\"10972\"}},\"id\":\"10971\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"10939\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"orange\"},\"size\":{\"units\":\"screen\",\"value\":2},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"10980\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"10973\"}},\"id\":\"10977\",\"type\":\"CDSView\"},{\"attributes\":{\"text\":\"\"},\"id\":\"11477\",\"type\":\"Title\"},{\"attributes\":{\"axis_label\":\"y difference\",\"formatter\":{\"id\":\"11478\"},\"ticker\":{\"id\":\"10946\"}},\"id\":\"10945\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"11478\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"11485\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"10937\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"10978\"}},\"id\":\"10982\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"11486\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"10978\"},\"glyph\":{\"id\":\"10979\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"10980\"},\"selection_glyph\":null,\"view\":{\"id\":\"10982\"}},\"id\":\"10981\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"11480\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"10946\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"10942\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"10950\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"10949\",\"type\":\"PanTool\"}],\"root_ids\":[\"10932\"]},\"title\":\"Bokeh Application\",\"version\":\"2.0.2\"}};\n", " var render_items = [{\"docid\":\"10e4857d-d97e-429a-ac85-b9ad6cfe0394\",\"root_ids\":[\"10932\"],\"roots\":{\"10932\":\"e81f63aa-ba06-4da2-8a57-fef5993abefb\"}}];\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", " clearInterval(timer);\n", " embed_document(root);\n", " } else {\n", " attempts++;\n", " if (attempts > 100) {\n", " clearInterval(timer);\n", " console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n", " }\n", " }\n", " }, 10, root)\n", " }\n", "})(window);" ], "application/vnd.bokehjs_exec.v0+json": "" }, "metadata": { "application/vnd.bokehjs_exec.v0+json": { "id": "10932" } }, "output_type": "display_data" } ], "source": [ "samples = np.array(\n", " [gen_fun(mle_params, x, size=1, rg=rg) for _ in range(5000)]\n", ")\n", "\n", "bokeh.io.show(\n", " bebi103.viz.predictive_regression(\n", " samples, x, data=xy, x_range=[x.min(), x.max()], diff=True\n", " )\n", ")" ] } ], "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.8.2" } }, "nbformat": 4, "nbformat_minor": 4 }