Created
February 20, 2021 11:52
-
-
Save FinanceData/c6c336c4727386810bec9264e81f6bba to your computer and use it in GitHub Desktop.
FinanceDataReader Tutorial - 차트 그리기와 활용하기.ipynb
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"FinanceDataReader Tutorial - 차트 그리기와 활용하기.ipynb","provenance":[],"collapsed_sections":[],"authorship_tag":"ABX9TyOkr/QxiMdkZs38q2Fpud6q"},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"cell_type":"markdown","metadata":{"id":"joJxpbs2LhYB"},"source":["# FinanceDataReader Tutorial \n","## 차트 그리기와 활용하기\n","\n","<img width='320' src=\"https://i.imgur.com/r0YE5Xs.png\" >\n","\n","**2021 [FinanceData.KR](http://financedata.kr) | [facebook.com/financedata](http://facebook.com/financedata)**"]},{"cell_type":"markdown","metadata":{"id":"LFeolFMbgvN9"},"source":["## FinanceDataReader 설치 (구글 Colab 경우)"]},{"cell_type":"code","metadata":{"id":"cAgcFyMZkgby","executionInfo":{"status":"ok","timestamp":1613821292605,"user_tz":-540,"elapsed":3797,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}}},"source":["!pip install -q finance-datareader"],"execution_count":1,"outputs":[]},{"cell_type":"markdown","metadata":{"id":"vcJBMTZ_AadC"},"source":["FinanceDataReader는 [Bokeh](https://bokeh.org/) 기반의 캔들 차트를 지원합니다.\n","\n","구글 Colab에는 이미 [Bokeh](https://bokeh.org/)가 있기 때문에 별도의 설치는 필요하지 않습니다. \n","\n","로컬 PC의 경우, bokeh가 설치되어 있지 않아면 명령창에서 다음과 같이 bokeh를 설치하세요\n","\n","```\n","pip install bokeh\n","```"]},{"cell_type":"markdown","metadata":{"id":"RasvlL_uBAEc"},"source":["## FinanceDataReader.chart\n","\n","FinanceDataReader의 chart 객체를 사용하여 차트를 그립니다.\n","\n","다음은 2021-01-01 ~ 2021-02-15 (1.5개월)간의 삼성전자 캔틀차트 입니다.\n","\n","`fdr.DataReader()`에서 가져온 가격 데이터(df)를 `fdr.chart.plot(df)`에 전달해주면 됩니다. 차트 내에서 확대/축소, 이미지 저장, 이동 등을 자체지원합니다.\n"]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":528},"id":"AyQhUzAjAaZm","executionInfo":{"status":"ok","timestamp":1613821295261,"user_tz":-540,"elapsed":6447,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}},"outputId":"ee8a964d-a286-4063-9c5d-1bcae4a631e8"},"source":["import FinanceDataReader as fdr\n","\n","df = fdr.DataReader('005930', '2021-01-01', '2021-02-15')\n","fdr.chart.plot(df)"],"execution_count":2,"outputs":[{"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"," \"<div style='background-color: #fdd'>\\n\"+\n"," \"<p>\\n\"+\n"," \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n"," \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n"," \"</p>\\n\"+\n"," \"<ul>\\n\"+\n"," \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n"," \"<li>use INLINE resources instead, as so:</li>\\n\"+\n"," \"</ul>\\n\"+\n"," \"<code>\\n\"+\n"," \"from bokeh.resources import INLINE\\n\"+\n"," \"output_notebook(resources=INLINE)\\n\"+\n"," \"</code>\\n\"+\n"," \"</div>\"}};\n","\n"," function display_loaded() {\n"," var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n"," var css_urls = [];\n"," \n","\n"," var inline_js = [\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"," } 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(null)).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 \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\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 } 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(null)).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":{"tags":[]}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","\n","\n","\n"," <div class=\"bk-root\" id=\"5cfb6aec-386f-469b-bd73-a94e0362fac9\" data-root-id=\"1148\"></div>\n"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"application/javascript":["(function(root) {\n"," function embed_document(root) {\n"," \n"," var docs_json = {\"7fb49e47-14b8-401d-a51b-b4dad1f39343\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"1147\"},{\"id\":\"1145\"}]},\"id\":\"1148\",\"type\":\"Column\"},{\"attributes\":{},\"id\":\"1142\",\"type\":\"Selection\"},{\"attributes\":{\"end\":29,\"start\":-1},\"id\":\"1004\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"1056\"},\"glyph\":{\"id\":\"1057\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1058\"},\"selection_glyph\":null,\"view\":{\"id\":\"1060\"}},\"id\":\"1059\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1120\",\"type\":\"Selection\"},{\"attributes\":{\"toolbars\":[{\"id\":\"1027\"},{\"id\":\"1094\"}],\"tools\":[{\"id\":\"1020\"},{\"id\":\"1021\"},{\"id\":\"1022\"},{\"id\":\"1023\"},{\"id\":\"1024\"},{\"id\":\"1025\"},{\"id\":\"1087\"},{\"id\":\"1088\"},{\"id\":\"1089\"},{\"id\":\"1090\"},{\"id\":\"1091\"},{\"id\":\"1092\"}]},\"id\":\"1146\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAIz0QAAAAAAA8PRAAAAAAMBD9UAAAAAAgKH1QAAAAACA9vVAAAAAAIDs9UAAAAAAgKH1QAAAAACAdPVAAAAAAEBV9UAAAAAAQEH1QAAAAABAMvVAAAAAAEBp9UAAAAAAgGX1QAAAAACAUfVAAAAAAIAa9UAAAAAAgN70QAAAAACAjvRAAAAAAMBx9EAAAAAAQGX0QAAAAABAVvRAAAAAAABp9EAAAAAAAGn0QAAAAADAU/RAAAAAAEAu9EAAAAAAgEP0QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1128\"},\"selection_policy\":{\"id\":\"1127\"}},\"id\":\"1056\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"1056\"}},\"id\":\"1060\",\"type\":\"CDSView\"},{\"attributes\":{\"toolbar\":{\"id\":\"1146\"},\"toolbar_location\":\"above\"},\"id\":\"1147\",\"type\":\"ToolbarBox\"},{\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1026\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1058\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x0\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"x1\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"y0\":[84400,83900,84200,90000,96800,91400,90000,88000,88600,89900,85600,83400,86400,84000,84500],\"y1\":[80200,81600,82700,83000,89500,87800,88700,83600,86500,86300,83200,81000,83700,82500,83300]},\"selected\":{\"id\":\"1120\"},\"selection_policy\":{\"id\":\"1119\"}},\"id\":\"1034\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"1034\"}},\"id\":\"1038\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAUCL1QAAAAABQIvVAAAAAAOAj9UAAAAAAYCv1QAAAAAAgKvVAAAAAAJAZ9UAAAAAAkAD1QAAAAADg5/RAAAAAAJDO9EAAAAAAYL30QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1130\"},\"selection_policy\":{\"id\":\"1129\"}},\"id\":\"1061\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1119\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1121\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1093\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"1034\"},\"glyph\":{\"id\":\"1035\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1036\"},\"selection_glyph\":null,\"view\":{\"id\":\"1038\"}},\"id\":\"1037\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1062\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1063\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"1101\"}},\"id\":\"1105\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1061\"}},\"id\":\"1065\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1103\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"1101\"},\"glyph\":{\"id\":\"1102\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1103\"},\"selection_glyph\":null,\"view\":{\"id\":\"1105\"}},\"id\":\"1104\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1061\"},\"glyph\":{\"id\":\"1062\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1063\"},\"selection_glyph\":null,\"view\":{\"id\":\"1065\"}},\"id\":\"1064\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1036\",\"type\":\"Segment\"},{\"attributes\":{\"below\":[{\"id\":\"1012\"}],\"center\":[{\"id\":\"1015\"},{\"id\":\"1019\"}],\"left\":[{\"id\":\"1016\"}],\"plot_height\":336,\"plot_width\":800,\"renderers\":[{\"id\":\"1037\"},{\"id\":\"1042\"},{\"id\":\"1047\"},{\"id\":\"1052\"},{\"id\":\"1059\"},{\"id\":\"1064\"},{\"id\":\"1069\"}],\"title\":{\"id\":\"1002\"},\"toolbar\":{\"id\":\"1027\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1004\"},\"x_scale\":{\"id\":\"1008\"},\"y_range\":{\"id\":\"1006\"},\"y_scale\":{\"id\":\"1010\"}},\"id\":\"1001\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fw==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1132\"},\"selection_policy\":{\"id\":\"1131\"}},\"id\":\"1066\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"text\":\"\"},\"id\":\"1002\",\"type\":\"Title\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1067\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"top\":[35335669,32644642,48682416,36068848,26393970,39895044,25211127,27258534,26423070,28046832,26302077,22112205,18036835,15338765],\"x\":[1,3,6,7,8,11,12,15,17,20,21,22,24,25]},\"selected\":{\"id\":\"1142\"},\"selection_policy\":{\"id\":\"1141\"}},\"id\":\"1106\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1068\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x0\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"x1\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"y0\":[84500,91200,91800,87300,89000,89700,89200,87700,85000,85400,83800,84200,84800,82600],\"y1\":[82100,89100,88000,84100,86500,86800,86500,85600,82000,83400,82100,83000,82700,81600]},\"selected\":{\"id\":\"1122\"},\"selection_policy\":{\"id\":\"1121\"}},\"id\":\"1039\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1111\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1035\",\"type\":\"Segment\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1108\",\"type\":\"VBar\"},{\"attributes\":{\"end\":96800,\"start\":80200},\"id\":\"1006\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"1106\"},\"glyph\":{\"id\":\"1107\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1108\"},\"selection_glyph\":null,\"view\":{\"id\":\"1110\"}},\"id\":\"1109\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1040\",\"type\":\"Segment\"},{\"attributes\":{\"source\":{\"id\":\"1066\"}},\"id\":\"1070\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1008\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1041\",\"type\":\"Segment\"},{\"attributes\":{\"fill_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1107\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"1066\"},\"glyph\":{\"id\":\"1067\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1068\"},\"selection_glyph\":null,\"view\":{\"id\":\"1070\"}},\"id\":\"1069\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1010\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"1106\"}},\"id\":\"1110\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1039\"}},\"id\":\"1043\",\"type\":\"CDSView\"},{\"attributes\":{\"range_padding\":0},\"id\":\"1073\",\"type\":\"DataRange1d\"},{\"attributes\":{\"formatter\":{\"id\":\"1116\"},\"ticker\":{\"id\":\"1013\"},\"visible\":false},\"id\":\"1012\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1075\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1013\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data_source\":{\"id\":\"1039\"},\"glyph\":{\"id\":\"1040\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1041\"},\"selection_glyph\":null,\"view\":{\"id\":\"1043\"}},\"id\":\"1042\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"days\":[\"%Y-%m-%d\"],\"hours\":[\"%H:%M\"]},\"id\":\"1113\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"children\":[[{\"id\":\"1001\"},0,0],[{\"id\":\"1071\"},1,0]]},\"id\":\"1145\",\"type\":\"GridBox\"},{\"attributes\":{\"axis\":{\"id\":\"1012\"},\"ticker\":null},\"id\":\"1015\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1077\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"1054\"},\"ticker\":{\"id\":\"1017\"}},\"id\":\"1016\",\"type\":\"LinearAxis\"},{\"attributes\":{\"formatter\":{\"id\":\"1113\"},\"major_label_orientation\":0.6283185307179586,\"major_label_overrides\":{\"0\":\"2021-01-04\",\"1\":\"2021-01-05\",\"10\":\"2021-01-18\",\"11\":\"2021-01-19\",\"12\":\"2021-01-20\",\"13\":\"2021-01-21\",\"14\":\"2021-01-22\",\"15\":\"2021-01-25\",\"16\":\"2021-01-26\",\"17\":\"2021-01-27\",\"18\":\"2021-01-28\",\"19\":\"2021-01-29\",\"2\":\"2021-01-06\",\"20\":\"2021-02-01\",\"21\":\"2021-02-02\",\"22\":\"2021-02-03\",\"23\":\"2021-02-04\",\"24\":\"2021-02-05\",\"25\":\"2021-02-08\",\"26\":\"2021-02-09\",\"27\":\"2021-02-10\",\"28\":\"2021-02-15\",\"29\":\"\",\"3\":\"2021-01-07\",\"4\":\"2021-01-08\",\"5\":\"2021-01-11\",\"6\":\"2021-01-12\",\"7\":\"2021-01-13\",\"8\":\"2021-01-14\",\"9\":\"2021-01-15\"},\"ticker\":{\"id\":\"1080\"}},\"id\":\"1079\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1122\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1017\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1080\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data\":{\"bottom\":[83000,83900,82900,88800,91000,90600,89700,87000,88100,89400,83700,83000,84400,83500,84200],\"top\":[81000,81600,82800,83300,90000,90300,88700,84500,87500,87000,83200,81700,84100,83100,83800],\"x\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28]},\"selected\":{\"id\":\"1124\"},\"selection_policy\":{\"id\":\"1123\"}},\"id\":\"1044\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"axis\":{\"id\":\"1016\"},\"dimension\":1,\"ticker\":null},\"id\":\"1019\",\"type\":\"Grid\"},{\"attributes\":{\"axis\":{\"id\":\"1079\"},\"ticker\":null},\"id\":\"1082\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1123\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"below\":[{\"id\":\"1079\"}],\"center\":[{\"id\":\"1082\"},{\"id\":\"1086\"}],\"left\":[{\"id\":\"1083\"}],\"plot_height\":144,\"plot_width\":800,\"renderers\":[{\"id\":\"1104\"},{\"id\":\"1109\"}],\"title\":{\"id\":\"1136\"},\"toolbar\":{\"id\":\"1094\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1004\"},\"x_scale\":{\"id\":\"1075\"},\"y_range\":{\"id\":\"1073\"},\"y_scale\":{\"id\":\"1077\"}},\"id\":\"1071\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"formatter\":{\"id\":\"1111\"},\"ticker\":{\"id\":\"1084\"}},\"id\":\"1083\",\"type\":\"LinearAxis\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1046\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"1124\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"1044\"},\"glyph\":{\"id\":\"1045\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1046\"},\"selection_glyph\":null,\"view\":{\"id\":\"1048\"}},\"id\":\"1047\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1084\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1125\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"red\"},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1045\",\"type\":\"VBar\"},{\"attributes\":{\"axis\":{\"id\":\"1083\"},\"dimension\":1,\"ticker\":null},\"id\":\"1086\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1126\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1020\",\"type\":\"PanTool\"},{\"attributes\":{\"source\":{\"id\":\"1044\"}},\"id\":\"1048\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"top\":[42089013,59013307,90306177,33431809,43227951,25318011,30861661,33178936,31859808,39615978,24171688,20898332,23025766,23529706],\"x\":[2,4,5,9,10,13,14,16,18,19,23,26,27,28]},\"selected\":{\"id\":\"1140\"},\"selection_policy\":{\"id\":\"1139\"}},\"id\":\"1101\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1127\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1021\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1128\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"1026\"}},\"id\":\"1022\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1129\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1023\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1087\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1130\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1024\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1088\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1131\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1025\",\"type\":\"HelpTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1093\"}},\"id\":\"1089\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"data\":{\"bottom\":[82200,89700,88000,85000,87200,86800,86700,85600,82000,84600,82500,83000,82700,81600],\"top\":[83300,89800,89800,86600,89000,89000,88800,86600,84500,84800,83500,83800,84000,82600],\"x\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27]},\"selected\":{\"id\":\"1126\"},\"selection_policy\":{\"id\":\"1125\"}},\"id\":\"1049\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1132\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1090\",\"type\":\"SaveTool\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1057\",\"type\":\"Line\"},{\"attributes\":{\"text\":\"\"},\"id\":\"1136\",\"type\":\"Title\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1051\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"1116\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1091\",\"type\":\"ResetTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1020\"},{\"id\":\"1021\"},{\"id\":\"1022\"},{\"id\":\"1023\"},{\"id\":\"1024\"},{\"id\":\"1025\"}]},\"id\":\"1027\",\"type\":\"Toolbar\"},{\"attributes\":{\"data_source\":{\"id\":\"1049\"},\"glyph\":{\"id\":\"1050\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1051\"},\"selection_glyph\":null,\"view\":{\"id\":\"1053\"}},\"id\":\"1052\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1139\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1092\",\"type\":\"HelpTool\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"blue\"},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1050\",\"type\":\"VBar\"},{\"attributes\":{\"source\":{\"id\":\"1049\"}},\"id\":\"1053\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1140\",\"type\":\"Selection\"},{\"attributes\":{\"fill_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1102\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"1141\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1087\"},{\"id\":\"1088\"},{\"id\":\"1089\"},{\"id\":\"1090\"},{\"id\":\"1091\"},{\"id\":\"1092\"}]},\"id\":\"1094\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1054\",\"type\":\"NumeralTickFormatter\"}],\"root_ids\":[\"1148\"]},\"title\":\"Bokeh Application\",\"version\":\"2.1.1\"}};\n"," var render_items = [{\"docid\":\"7fb49e47-14b8-401d-a51b-b4dad1f39343\",\"root_ids\":[\"1148\"],\"roots\":{\"1148\":\"5cfb6aec-386f-469b-bd73-a94e0362fac9\"}}];\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":{"tags":[],"application/vnd.bokehjs_exec.v0+json":{"id":"1148"}}}]},{"cell_type":"markdown","metadata":{"id":"V-rHd0VqAaUs"},"source":["## fdr.chart.plot() 파라미터\n","\n","fdr.chart.plot()는 다양한 파라미터가 있으며, 원하는 값들을 지정할 수 있습니다. "]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":528},"id":"o5HRwZseD9v9","executionInfo":{"status":"ok","timestamp":1613821295262,"user_tz":-540,"elapsed":6443,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}},"outputId":"f6facf04-ca90-448f-d01f-5a1614764fa7"},"source":["fdr.chart.plot(df, title='삼성전자(005930)')"],"execution_count":3,"outputs":[{"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"," \"<div style='background-color: #fdd'>\\n\"+\n"," \"<p>\\n\"+\n"," \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n"," \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n"," \"</p>\\n\"+\n"," \"<ul>\\n\"+\n"," \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n"," \"<li>use INLINE resources instead, as so:</li>\\n\"+\n"," \"</ul>\\n\"+\n"," \"<code>\\n\"+\n"," \"from bokeh.resources import INLINE\\n\"+\n"," \"output_notebook(resources=INLINE)\\n\"+\n"," \"</code>\\n\"+\n"," \"</div>\"}};\n","\n"," function display_loaded() {\n"," var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n"," var css_urls = [];\n"," \n","\n"," var inline_js = [\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"," } 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(null)).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 \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\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 } 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(null)).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":{"tags":[]}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","\n","\n","\n"," <div class=\"bk-root\" id=\"2bbc22ed-0c9d-4c69-b925-604c495eb4cb\" data-root-id=\"1492\"></div>\n"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"application/javascript":["(function(root) {\n"," function embed_document(root) {\n"," \n"," var docs_json = {\"a4a6a244-00fa-478f-84c3-fe3cc4e6aee0\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"1491\"},{\"id\":\"1489\"}]},\"id\":\"1492\",\"type\":\"Column\"},{\"attributes\":{\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1384\",\"type\":\"Segment\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1385\",\"type\":\"Segment\"},{\"attributes\":{\"data\":{\"x0\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"x1\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"y0\":[84500,91200,91800,87300,89000,89700,89200,87700,85000,85400,83800,84200,84800,82600],\"y1\":[82100,89100,88000,84100,86500,86800,86500,85600,82000,83400,82100,83000,82700,81600]},\"selected\":{\"id\":\"1466\"},\"selection_policy\":{\"id\":\"1465\"}},\"id\":\"1383\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"1400\"}},\"id\":\"1404\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1380\",\"type\":\"Segment\"},{\"attributes\":{\"data_source\":{\"id\":\"1400\"},\"glyph\":{\"id\":\"1401\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1402\"},\"selection_glyph\":null,\"view\":{\"id\":\"1404\"}},\"id\":\"1403\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1378\"},\"glyph\":{\"id\":\"1379\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1380\"},\"selection_glyph\":null,\"view\":{\"id\":\"1382\"}},\"id\":\"1381\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"1378\"}},\"id\":\"1382\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1390\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"1383\"},\"glyph\":{\"id\":\"1384\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1385\"},\"selection_glyph\":null,\"view\":{\"id\":\"1387\"}},\"id\":\"1386\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"bottom\":[83000,83900,82900,88800,91000,90600,89700,87000,88100,89400,83700,83000,84400,83500,84200],\"top\":[81000,81600,82800,83300,90000,90300,88700,84500,87500,87000,83200,81700,84100,83100,83800],\"x\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28]},\"selected\":{\"id\":\"1468\"},\"selection_policy\":{\"id\":\"1467\"}},\"id\":\"1388\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"1383\"}},\"id\":\"1387\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1388\"}},\"id\":\"1392\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"1388\"},\"glyph\":{\"id\":\"1389\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1390\"},\"selection_glyph\":null,\"view\":{\"id\":\"1392\"}},\"id\":\"1391\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"red\"},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1389\",\"type\":\"VBar\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1401\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAIz0QAAAAAAA8PRAAAAAAMBD9UAAAAAAgKH1QAAAAACA9vVAAAAAAIDs9UAAAAAAgKH1QAAAAACAdPVAAAAAAEBV9UAAAAAAQEH1QAAAAABAMvVAAAAAAEBp9UAAAAAAgGX1QAAAAACAUfVAAAAAAIAa9UAAAAAAgN70QAAAAACAjvRAAAAAAMBx9EAAAAAAQGX0QAAAAABAVvRAAAAAAABp9EAAAAAAAGn0QAAAAADAU/RAAAAAAEAu9EAAAAAAgEP0QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1472\"},\"selection_policy\":{\"id\":\"1471\"}},\"id\":\"1400\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data\":{\"bottom\":[82200,89700,88000,85000,87200,86800,86700,85600,82000,84600,82500,83000,82700,81600],\"top\":[83300,89800,89800,86600,89000,89000,88800,86600,84500,84800,83500,83800,84000,82600],\"x\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27]},\"selected\":{\"id\":\"1470\"},\"selection_policy\":{\"id\":\"1469\"}},\"id\":\"1393\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1402\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1467\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAUCL1QAAAAABQIvVAAAAAAOAj9UAAAAAAYCv1QAAAAAAgKvVAAAAAAJAZ9UAAAAAAkAD1QAAAAADg5/RAAAAAAJDO9EAAAAAAYL30QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1474\"},\"selection_policy\":{\"id\":\"1473\"}},\"id\":\"1405\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1437\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1406\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x0\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"x1\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"y0\":[84400,83900,84200,90000,96800,91400,90000,88000,88600,89900,85600,83400,86400,84000,84500],\"y1\":[80200,81600,82700,83000,89500,87800,88700,83600,86500,86300,83200,81000,83700,82500,83300]},\"selected\":{\"id\":\"1464\"},\"selection_policy\":{\"id\":\"1463\"}},\"id\":\"1378\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1407\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"1445\"}},\"id\":\"1449\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1393\"}},\"id\":\"1397\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1405\"}},\"id\":\"1409\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1447\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"1445\"},\"glyph\":{\"id\":\"1446\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1447\"},\"selection_glyph\":null,\"view\":{\"id\":\"1449\"}},\"id\":\"1448\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1405\"},\"glyph\":{\"id\":\"1406\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1407\"},\"selection_glyph\":null,\"view\":{\"id\":\"1409\"}},\"id\":\"1408\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1379\",\"type\":\"Segment\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fw==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1476\"},\"selection_policy\":{\"id\":\"1475\"}},\"id\":\"1410\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1398\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1411\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"top\":[35335669,32644642,48682416,36068848,26393970,39895044,25211127,27258534,26423070,28046832,26302077,22112205,18036835,15338765],\"x\":[1,3,6,7,8,11,12,15,17,20,21,22,24,25]},\"selected\":{\"id\":\"1486\"},\"selection_policy\":{\"id\":\"1485\"}},\"id\":\"1450\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1412\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1455\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1452\",\"type\":\"VBar\"},{\"attributes\":{\"end\":29,\"start\":-1},\"id\":\"1348\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"1450\"},\"glyph\":{\"id\":\"1451\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1452\"},\"selection_glyph\":null,\"view\":{\"id\":\"1454\"}},\"id\":\"1453\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"1410\"}},\"id\":\"1414\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1370\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1451\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"1410\"},\"glyph\":{\"id\":\"1411\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1412\"},\"selection_glyph\":null,\"view\":{\"id\":\"1414\"}},\"id\":\"1413\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1393\"},\"glyph\":{\"id\":\"1394\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1395\"},\"selection_glyph\":null,\"view\":{\"id\":\"1397\"}},\"id\":\"1396\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"1450\"}},\"id\":\"1454\",\"type\":\"CDSView\"},{\"attributes\":{\"end\":96800,\"start\":80200},\"id\":\"1350\",\"type\":\"Range1d\"},{\"attributes\":{\"range_padding\":0},\"id\":\"1417\",\"type\":\"DataRange1d\"},{\"attributes\":{\"text\":\"\\uc0bc\\uc131\\uc804\\uc790(005930)\"},\"id\":\"1346\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1419\",\"type\":\"LinearScale\"},{\"attributes\":{\"days\":[\"%Y-%m-%d\"],\"hours\":[\"%H:%M\"]},\"id\":\"1457\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"children\":[[{\"id\":\"1345\"},0,0],[{\"id\":\"1415\"},1,0]]},\"id\":\"1489\",\"type\":\"GridBox\"},{\"attributes\":{\"below\":[{\"id\":\"1356\"}],\"center\":[{\"id\":\"1359\"},{\"id\":\"1363\"}],\"left\":[{\"id\":\"1360\"}],\"plot_height\":336,\"plot_width\":800,\"renderers\":[{\"id\":\"1381\"},{\"id\":\"1386\"},{\"id\":\"1391\"},{\"id\":\"1396\"},{\"id\":\"1403\"},{\"id\":\"1408\"},{\"id\":\"1413\"}],\"title\":{\"id\":\"1346\"},\"toolbar\":{\"id\":\"1371\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1348\"},\"x_scale\":{\"id\":\"1352\"},\"y_range\":{\"id\":\"1350\"},\"y_scale\":{\"id\":\"1354\"}},\"id\":\"1345\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1421\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"1457\"},\"major_label_orientation\":0.6283185307179586,\"major_label_overrides\":{\"0\":\"2021-01-04\",\"1\":\"2021-01-05\",\"10\":\"2021-01-18\",\"11\":\"2021-01-19\",\"12\":\"2021-01-20\",\"13\":\"2021-01-21\",\"14\":\"2021-01-22\",\"15\":\"2021-01-25\",\"16\":\"2021-01-26\",\"17\":\"2021-01-27\",\"18\":\"2021-01-28\",\"19\":\"2021-01-29\",\"2\":\"2021-01-06\",\"20\":\"2021-02-01\",\"21\":\"2021-02-02\",\"22\":\"2021-02-03\",\"23\":\"2021-02-04\",\"24\":\"2021-02-05\",\"25\":\"2021-02-08\",\"26\":\"2021-02-09\",\"27\":\"2021-02-10\",\"28\":\"2021-02-15\",\"29\":\"\",\"3\":\"2021-01-07\",\"4\":\"2021-01-08\",\"5\":\"2021-01-11\",\"6\":\"2021-01-12\",\"7\":\"2021-01-13\",\"8\":\"2021-01-14\",\"9\":\"2021-01-15\"},\"ticker\":{\"id\":\"1424\"}},\"id\":\"1423\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1460\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1357\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1424\",\"type\":\"BasicTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"1460\"},\"ticker\":{\"id\":\"1357\"},\"visible\":false},\"id\":\"1356\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1463\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"axis\":{\"id\":\"1423\"},\"ticker\":null},\"id\":\"1426\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1466\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1354\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"1455\"},\"ticker\":{\"id\":\"1428\"}},\"id\":\"1427\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1468\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1352\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1428\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1469\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1365\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"1427\"},\"dimension\":1,\"ticker\":null},\"id\":\"1430\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1470\",\"type\":\"Selection\"},{\"attributes\":{\"below\":[{\"id\":\"1423\"}],\"center\":[{\"id\":\"1426\"},{\"id\":\"1430\"}],\"left\":[{\"id\":\"1427\"}],\"plot_height\":144,\"plot_width\":800,\"renderers\":[{\"id\":\"1448\"},{\"id\":\"1453\"}],\"title\":{\"id\":\"1480\"},\"toolbar\":{\"id\":\"1438\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1348\"},\"x_scale\":{\"id\":\"1419\"},\"y_range\":{\"id\":\"1417\"},\"y_scale\":{\"id\":\"1421\"}},\"id\":\"1415\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data\":{\"top\":[42089013,59013307,90306177,33431809,43227951,25318011,30861661,33178936,31859808,39615978,24171688,20898332,23025766,23529706],\"x\":[2,4,5,9,10,13,14,16,18,19,23,26,27,28]},\"selected\":{\"id\":\"1484\"},\"selection_policy\":{\"id\":\"1483\"}},\"id\":\"1445\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1471\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"formatter\":{\"id\":\"1398\"},\"ticker\":{\"id\":\"1361\"}},\"id\":\"1360\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1364\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1472\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1473\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1431\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1361\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1474\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1432\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"1360\"},\"dimension\":1,\"ticker\":null},\"id\":\"1363\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1475\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"overlay\":{\"id\":\"1437\"}},\"id\":\"1433\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1476\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1434\",\"type\":\"SaveTool\"},{\"attributes\":{\"axis\":{\"id\":\"1356\"},\"ticker\":null},\"id\":\"1359\",\"type\":\"Grid\"},{\"attributes\":{\"text\":\"\"},\"id\":\"1480\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1435\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1369\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1483\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1436\",\"type\":\"HelpTool\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"blue\"},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1394\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"1484\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1368\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1446\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"1485\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1431\"},{\"id\":\"1432\"},{\"id\":\"1433\"},{\"id\":\"1434\"},{\"id\":\"1435\"},{\"id\":\"1436\"}]},\"id\":\"1438\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1367\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1486\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1464\",\"type\":\"Selection\"},{\"attributes\":{\"toolbars\":[{\"id\":\"1371\"},{\"id\":\"1438\"}],\"tools\":[{\"id\":\"1364\"},{\"id\":\"1365\"},{\"id\":\"1366\"},{\"id\":\"1367\"},{\"id\":\"1368\"},{\"id\":\"1369\"},{\"id\":\"1431\"},{\"id\":\"1432\"},{\"id\":\"1433\"},{\"id\":\"1434\"},{\"id\":\"1435\"},{\"id\":\"1436\"}]},\"id\":\"1490\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"overlay\":{\"id\":\"1370\"}},\"id\":\"1366\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"toolbar\":{\"id\":\"1490\"},\"toolbar_location\":\"above\"},\"id\":\"1491\",\"type\":\"ToolbarBox\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1395\",\"type\":\"VBar\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1364\"},{\"id\":\"1365\"},{\"id\":\"1366\"},{\"id\":\"1367\"},{\"id\":\"1368\"},{\"id\":\"1369\"}]},\"id\":\"1371\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1465\",\"type\":\"UnionRenderers\"}],\"root_ids\":[\"1492\"]},\"title\":\"Bokeh Application\",\"version\":\"2.1.1\"}};\n"," var render_items = [{\"docid\":\"a4a6a244-00fa-478f-84c3-fe3cc4e6aee0\",\"root_ids\":[\"1492\"],\"roots\":{\"1492\":\"2bbc22ed-0c9d-4c69-b925-604c495eb4cb\"}}];\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":{"tags":[],"application/vnd.bokehjs_exec.v0+json":{"id":"1492"}}}]},{"cell_type":"markdown","metadata":{"id":"kabPZ6r_Dttt"},"source":["`fdr.chart.plot(df)` 에 지정 가능한 인자와 기본값\n","\n","* `width`: 차트의 너비를 지정합니다 (pixel값) (기본값: 800)\n","* `height`: 차트의 높이를 지정합니다 (pixel값) (기본값: 480)\n","* `volume_height`: 0.3, # 30% size of figure height\n","* `recent_high`: 이전 고점을 표시할지 여부(기본값: False)\n","* `volume`: 거래량 막대를 표시할지 여부 (기본값: True)\n","* `title`: 제목을 지정합니다. 차트 왼쪽 상단에 표시됩니다 (기본값: '')\n","* `ylabel`: y축의 레이블을 지정합니다. 차트 왼쪽에 표시됩니다 (기본값: '')\n","* `moving_average_type`: 이동평균을 표시합니다. 'SMA', 'WMA', 'EMA', 'None'중 하나를 지정할 수 있습니다. (기본값: 'SMA')\n","* `moving_average_lines`: 이동평균선의 데이터 개수와 몇개캔들을 사용할지 지정합니다. (기본값: (5, 20, 60) - 즉, 5일, 20일, 60일을 표시합니다)\n","* `color_up`: 상승캔들의 색상 (기본값:'red')\n","* `color_down`: 하락캔들의 색상 (기본값:'blue')\n","* `color_volume_up`: 전일거래량 대비 상승 막대의 색상 (기본값:'red')\n","* `color_volume_down`: 전일거래량 대비 하락 막대의 색상 (기본값:'blue')\n","\n","`moving_average_type`은 이동평균선의 종류를 지정합니다. 종류는 다음과 같습니다.\n","* 'SMA'(Simple Moving Average, 단순 이동평균) - 기본값\n","* 'WMA'(Weighted Moving Average, 가중 이동평균)\n","* 'EMA'(Exponential Moving Average, 지수 이동평균)\n","* 'None'(표시하지 않음)\n","\n","`moving_average_lines`는 이동평균선의 데이터 개수와 몇개캔들을 사용할지 튜플값으로 지정합니다. 예를 들어, (5, 20)으로 지정하면 5일 이동평균선과 20일 이동평균선 2개 선이 표시됩니다.\n","\n","이동평균선의 색상 순서는 다음과 같습니다. (참고로 색상의 tab의 의미는 tablue 표준색상을 의미합니다)\n","\n","```python\n","['tab:blue', 'tab:orange', 'tab:green', 'tab:red', 'tab:purple', 'tab:brown', 'tab:pink', 'tab:gray', 'tab:olive', 'tab:cyan']\n","```\n","\n","거래량 막대의 색상은 가격의 상승 혹은 하락(시가대비 종가)을 표시하는 것이 아니라, 전일 거래량 대비 상승과 하락을 표현합니다."]},{"cell_type":"markdown","metadata":{"id":"eNiqypw8H9a5"},"source":["## 차트 설정 다루기\n","\n","차트 그리기에 사용되는 기본 값을 바꿀 수 있습니다. \n","\n","예를 들어, 차트의 기본 크기를 지정하고 싶은 경우 다음과 같이 `fdr.chart.config()` 를 사용하여 지정할 수 있습니다.\n","\n","```python\n","fdr.chart.config(width=400, height=200)\n","```\n","\n","title, width, height, volume 등 plot()에 가능한 설정을 지정할 수 있습니다."]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":248},"id":"uqV4jMp8H9WM","executionInfo":{"status":"ok","timestamp":1613821295646,"user_tz":-540,"elapsed":6823,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}},"outputId":"242733e7-64fa-480b-eb28-6ecdea0ba935"},"source":["fdr.chart.config(title='삼성전자(005930) 2021년')\n","fdr.chart.config(width=400, height=200)\n","fdr.chart.config(volume=False)\n","\n","fdr.chart.plot(df)"],"execution_count":4,"outputs":[{"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"," \"<div style='background-color: #fdd'>\\n\"+\n"," \"<p>\\n\"+\n"," \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n"," \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n"," \"</p>\\n\"+\n"," \"<ul>\\n\"+\n"," \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n"," \"<li>use INLINE resources instead, as so:</li>\\n\"+\n"," \"</ul>\\n\"+\n"," \"<code>\\n\"+\n"," \"from bokeh.resources import INLINE\\n\"+\n"," \"output_notebook(resources=INLINE)\\n\"+\n"," \"</code>\\n\"+\n"," \"</div>\"}};\n","\n"," function display_loaded() {\n"," var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n"," var css_urls = [];\n"," \n","\n"," var inline_js = [\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"," } 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(null)).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 \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\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 } 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(null)).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":{"tags":[]}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","\n","\n","\n"," <div class=\"bk-root\" id=\"5aad7b64-c6bf-46c8-a026-b4a14a26bad2\" data-root-id=\"1811\"></div>\n"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"application/javascript":["(function(root) {\n"," function embed_document(root) {\n"," \n"," var docs_json = {\"5437f71f-cf10-4092-bddf-175c0c285b31\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"1810\"},{\"id\":\"1808\"}]},\"id\":\"1811\",\"type\":\"Column\"},{\"attributes\":{\"source\":{\"id\":\"1755\"}},\"id\":\"1759\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1792\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAIz0QAAAAAAA8PRAAAAAAMBD9UAAAAAAgKH1QAAAAACA9vVAAAAAAIDs9UAAAAAAgKH1QAAAAACAdPVAAAAAAEBV9UAAAAAAQEH1QAAAAABAMvVAAAAAAEBp9UAAAAAAgGX1QAAAAACAUfVAAAAAAIAa9UAAAAAAgN70QAAAAACAjvRAAAAAAMBx9EAAAAAAQGX0QAAAAABAVvRAAAAAAABp9EAAAAAAAGn0QAAAAADAU/RAAAAAAEAu9EAAAAAAgEP0QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1801\"},\"selection_policy\":{\"id\":\"1800\"}},\"id\":\"1774\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"1755\"},\"glyph\":{\"id\":\"1756\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1757\"},\"selection_glyph\":null,\"view\":{\"id\":\"1759\"}},\"id\":\"1758\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"text\":\"\\uc0bc\\uc131\\uc804\\uc790(005930) 2021\\ub144\"},\"id\":\"1718\",\"type\":\"Title\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1736\"},{\"id\":\"1737\"},{\"id\":\"1738\"},{\"id\":\"1739\"},{\"id\":\"1740\"},{\"id\":\"1741\"}]},\"id\":\"1743\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1793\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1794\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1775\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1776\",\"type\":\"Line\"},{\"attributes\":{\"end\":29,\"start\":-1},\"id\":\"1720\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1770\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"children\":[[{\"id\":\"1717\"},0,0]]},\"id\":\"1808\",\"type\":\"GridBox\"},{\"attributes\":{},\"id\":\"1795\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1726\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"1765\"}},\"id\":\"1769\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1796\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"days\":[\"%Y-%m-%d\"],\"hours\":[\"%H:%M\"]},\"id\":\"1772\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"data\":{\"bottom\":[83000,83900,82900,88800,91000,90600,89700,87000,88100,89400,83700,83000,84400,83500,84200],\"top\":[81000,81600,82800,83300,90000,90300,88700,84500,87500,87000,83200,81700,84100,83100,83800],\"x\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28]},\"selected\":{\"id\":\"1797\"},\"selection_policy\":{\"id\":\"1796\"}},\"id\":\"1760\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1742\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"source\":{\"id\":\"1774\"}},\"id\":\"1778\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1797\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1740\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1774\"},\"glyph\":{\"id\":\"1775\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1776\"},\"selection_glyph\":null,\"view\":{\"id\":\"1778\"}},\"id\":\"1777\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1724\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"1765\"},\"glyph\":{\"id\":\"1766\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1767\"},\"selection_glyph\":null,\"view\":{\"id\":\"1769\"}},\"id\":\"1768\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1762\",\"type\":\"VBar\"},{\"attributes\":{\"formatter\":{\"id\":\"1770\"},\"ticker\":{\"id\":\"1733\"}},\"id\":\"1732\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1798\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x0\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"x1\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"y0\":[84400,83900,84200,90000,96800,91400,90000,88000,88600,89900,85600,83400,86400,84000,84500],\"y1\":[80200,81600,82700,83000,89500,87800,88700,83600,86500,86300,83200,81000,83700,82500,83300]},\"selected\":{\"id\":\"1793\"},\"selection_policy\":{\"id\":\"1792\"}},\"id\":\"1750\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"1760\"},\"glyph\":{\"id\":\"1761\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1762\"},\"selection_glyph\":null,\"view\":{\"id\":\"1764\"}},\"id\":\"1763\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"end\":96800,\"start\":80200},\"id\":\"1722\",\"type\":\"Range1d\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAUCL1QAAAAABQIvVAAAAAAOAj9UAAAAAAYCv1QAAAAAAgKvVAAAAAAJAZ9UAAAAAAkAD1QAAAAADg5/RAAAAAAJDO9EAAAAAAYL30QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1803\"},\"selection_policy\":{\"id\":\"1802\"}},\"id\":\"1779\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1799\",\"type\":\"Selection\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"red\"},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1761\",\"type\":\"VBar\"},{\"attributes\":{\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1751\",\"type\":\"Segment\"},{\"attributes\":{},\"id\":\"1729\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1800\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1752\",\"type\":\"Segment\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1780\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1781\",\"type\":\"Line\"},{\"attributes\":{\"axis\":{\"id\":\"1728\"},\"ticker\":null},\"id\":\"1731\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"1760\"}},\"id\":\"1764\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1801\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1741\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1802\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"1750\"}},\"id\":\"1754\",\"type\":\"CDSView\"},{\"attributes\":{\"formatter\":{\"id\":\"1772\"},\"major_label_orientation\":0.6283185307179586,\"major_label_overrides\":{\"0\":\"2021-01-04\",\"1\":\"2021-01-05\",\"10\":\"2021-01-18\",\"11\":\"2021-01-19\",\"12\":\"2021-01-20\",\"13\":\"2021-01-21\",\"14\":\"2021-01-22\",\"15\":\"2021-01-25\",\"16\":\"2021-01-26\",\"17\":\"2021-01-27\",\"18\":\"2021-01-28\",\"19\":\"2021-01-29\",\"2\":\"2021-01-06\",\"20\":\"2021-02-01\",\"21\":\"2021-02-02\",\"22\":\"2021-02-03\",\"23\":\"2021-02-04\",\"24\":\"2021-02-05\",\"25\":\"2021-02-08\",\"26\":\"2021-02-09\",\"27\":\"2021-02-10\",\"28\":\"2021-02-15\",\"29\":\"\",\"3\":\"2021-01-07\",\"4\":\"2021-01-08\",\"5\":\"2021-01-11\",\"6\":\"2021-01-12\",\"7\":\"2021-01-13\",\"8\":\"2021-01-14\",\"9\":\"2021-01-15\"},\"ticker\":{\"id\":\"1729\"}},\"id\":\"1728\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"1779\"}},\"id\":\"1783\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1736\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1803\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"1750\"},\"glyph\":{\"id\":\"1751\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1752\"},\"selection_glyph\":null,\"view\":{\"id\":\"1754\"}},\"id\":\"1753\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1779\"},\"glyph\":{\"id\":\"1780\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1781\"},\"selection_glyph\":null,\"view\":{\"id\":\"1783\"}},\"id\":\"1782\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1732\"},\"dimension\":1,\"ticker\":null},\"id\":\"1735\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1804\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fw==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"1805\"},\"selection_policy\":{\"id\":\"1804\"}},\"id\":\"1784\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1733\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1805\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"bottom\":[82200,89700,88000,85000,87200,86800,86700,85600,82000,84600,82500,83000,82700,81600],\"top\":[83300,89800,89800,86600,89000,89000,88800,86600,84500,84800,83500,83800,84000,82600],\"x\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27]},\"selected\":{\"id\":\"1799\"},\"selection_policy\":{\"id\":\"1798\"}},\"id\":\"1765\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"toolbars\":[{\"id\":\"1743\"}],\"tools\":[{\"id\":\"1736\"},{\"id\":\"1737\"},{\"id\":\"1738\"},{\"id\":\"1739\"},{\"id\":\"1740\"},{\"id\":\"1741\"}]},\"id\":\"1809\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"data\":{\"x0\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"x1\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"y0\":[84500,91200,91800,87300,89000,89700,89200,87700,85000,85400,83800,84200,84800,82600],\"y1\":[82100,89100,88000,84100,86500,86800,86500,85600,82000,83400,82100,83000,82700,81600]},\"selected\":{\"id\":\"1795\"},\"selection_policy\":{\"id\":\"1794\"}},\"id\":\"1755\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1785\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1786\",\"type\":\"Line\"},{\"attributes\":{\"toolbar\":{\"id\":\"1809\"},\"toolbar_location\":\"above\"},\"id\":\"1810\",\"type\":\"ToolbarBox\"},{\"attributes\":{},\"id\":\"1739\",\"type\":\"SaveTool\"},{\"attributes\":{\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1756\",\"type\":\"Segment\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1767\",\"type\":\"VBar\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"1757\",\"type\":\"Segment\"},{\"attributes\":{\"overlay\":{\"id\":\"1742\"}},\"id\":\"1738\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"1784\"}},\"id\":\"1788\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"blue\"},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"1766\",\"type\":\"VBar\"},{\"attributes\":{\"below\":[{\"id\":\"1728\"}],\"center\":[{\"id\":\"1731\"},{\"id\":\"1735\"}],\"left\":[{\"id\":\"1732\"}],\"plot_height\":200,\"plot_width\":400,\"renderers\":[{\"id\":\"1753\"},{\"id\":\"1758\"},{\"id\":\"1763\"},{\"id\":\"1768\"},{\"id\":\"1777\"},{\"id\":\"1782\"},{\"id\":\"1787\"}],\"title\":{\"id\":\"1718\"},\"toolbar\":{\"id\":\"1743\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1720\"},\"x_scale\":{\"id\":\"1724\"},\"y_range\":{\"id\":\"1722\"},\"y_scale\":{\"id\":\"1726\"}},\"id\":\"1717\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1737\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1784\"},\"glyph\":{\"id\":\"1785\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1786\"},\"selection_glyph\":null,\"view\":{\"id\":\"1788\"}},\"id\":\"1787\",\"type\":\"GlyphRenderer\"}],\"root_ids\":[\"1811\"]},\"title\":\"Bokeh Application\",\"version\":\"2.1.1\"}};\n"," var render_items = [{\"docid\":\"5437f71f-cf10-4092-bddf-175c0c285b31\",\"root_ids\":[\"1811\"],\"roots\":{\"1811\":\"5aad7b64-c6bf-46c8-a026-b4a14a26bad2\"}}];\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":{"tags":[],"application/vnd.bokehjs_exec.v0+json":{"id":"1811"}}}]},{"cell_type":"markdown","metadata":{"id":"M_oig5KcH9SU"},"source":["다음과 같이 dict를 사용하여 다양할 설정을 한번에 지정할 수 있습니다"]},{"cell_type":"code","metadata":{"id":"fpeCo8APH9NV","executionInfo":{"status":"ok","timestamp":1613821295647,"user_tz":-540,"elapsed":6818,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}}},"source":["config = {'title':'fdr.chart.config()를 사용하여 설정을 한번에 지정할 수 있습니다', \n"," 'width': 600, \n"," 'height': 300,\n"," 'volume': True,\n","}\n","\n","fdr.chart.config(config=config)"],"execution_count":5,"outputs":[]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":348},"id":"CsHY-iqNJCli","executionInfo":{"status":"ok","timestamp":1613821295648,"user_tz":-540,"elapsed":6813,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}},"outputId":"d3d985bc-b0f6-49b7-fcf9-a6a0fc7ac92f"},"source":["fdr.chart.plot(df)"],"execution_count":6,"outputs":[{"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"," \"<div style='background-color: #fdd'>\\n\"+\n"," \"<p>\\n\"+\n"," \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n"," \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n"," \"</p>\\n\"+\n"," \"<ul>\\n\"+\n"," \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n"," \"<li>use INLINE resources instead, as so:</li>\\n\"+\n"," \"</ul>\\n\"+\n"," \"<code>\\n\"+\n"," \"from bokeh.resources import INLINE\\n\"+\n"," \"output_notebook(resources=INLINE)\\n\"+\n"," \"</code>\\n\"+\n"," \"</div>\"}};\n","\n"," function display_loaded() {\n"," var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n"," var css_urls = [];\n"," \n","\n"," var inline_js = [\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"," } 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(null)).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 \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\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 } 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(null)).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":{"tags":[]}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","\n","\n","\n"," <div class=\"bk-root\" id=\"2f9f8cee-6dd9-402a-b0d6-f5c8bbf84ae2\" data-root-id=\"2141\"></div>\n"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"application/javascript":["(function(root) {\n"," function embed_document(root) {\n"," \n"," var docs_json = {\"620401bb-2e8e-439d-a50e-fd5e04bef2ad\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"2140\"},{\"id\":\"2138\"}]},\"id\":\"2141\",\"type\":\"Column\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"red\"},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2038\",\"type\":\"VBar\"},{\"attributes\":{\"formatter\":{\"id\":\"2106\"},\"major_label_orientation\":0.6283185307179586,\"major_label_overrides\":{\"0\":\"2021-01-04\",\"1\":\"2021-01-05\",\"10\":\"2021-01-18\",\"11\":\"2021-01-19\",\"12\":\"2021-01-20\",\"13\":\"2021-01-21\",\"14\":\"2021-01-22\",\"15\":\"2021-01-25\",\"16\":\"2021-01-26\",\"17\":\"2021-01-27\",\"18\":\"2021-01-28\",\"19\":\"2021-01-29\",\"2\":\"2021-01-06\",\"20\":\"2021-02-01\",\"21\":\"2021-02-02\",\"22\":\"2021-02-03\",\"23\":\"2021-02-04\",\"24\":\"2021-02-05\",\"25\":\"2021-02-08\",\"26\":\"2021-02-09\",\"27\":\"2021-02-10\",\"28\":\"2021-02-15\",\"29\":\"\",\"3\":\"2021-01-07\",\"4\":\"2021-01-08\",\"5\":\"2021-01-11\",\"6\":\"2021-01-12\",\"7\":\"2021-01-13\",\"8\":\"2021-01-14\",\"9\":\"2021-01-15\"},\"ticker\":{\"id\":\"2073\"}},\"id\":\"2072\",\"type\":\"LinearAxis\"},{\"attributes\":{\"days\":[\"%Y-%m-%d\"],\"hours\":[\"%H:%M\"]},\"id\":\"2106\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2028\",\"type\":\"Segment\"},{\"attributes\":{\"children\":[[{\"id\":\"1994\"},0,0],[{\"id\":\"2064\"},1,0]]},\"id\":\"2138\",\"type\":\"GridBox\"},{\"attributes\":{\"data\":{\"top\":[42089013,59013307,90306177,33431809,43227951,25318011,30861661,33178936,31859808,39615978,24171688,20898332,23025766,23529706],\"x\":[2,4,5,9,10,13,14,16,18,19,23,26,27,28]},\"selected\":{\"id\":\"2133\"},\"selection_policy\":{\"id\":\"2132\"}},\"id\":\"2094\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"below\":[{\"id\":\"2005\"}],\"center\":[{\"id\":\"2008\"},{\"id\":\"2012\"}],\"left\":[{\"id\":\"2009\"}],\"plot_height\":210,\"renderers\":[{\"id\":\"2030\"},{\"id\":\"2035\"},{\"id\":\"2040\"},{\"id\":\"2045\"},{\"id\":\"2052\"},{\"id\":\"2057\"},{\"id\":\"2062\"}],\"title\":{\"id\":\"1995\"},\"toolbar\":{\"id\":\"2020\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1997\"},\"x_scale\":{\"id\":\"2001\"},\"y_range\":{\"id\":\"1999\"},\"y_scale\":{\"id\":\"2003\"}},\"id\":\"1994\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"axis\":{\"id\":\"2072\"},\"ticker\":null},\"id\":\"2075\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"2073\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2115\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"x0\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"x1\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28],\"y0\":[84400,83900,84200,90000,96800,91400,90000,88000,88600,89900,85600,83400,86400,84000,84500],\"y1\":[80200,81600,82700,83000,89500,87800,88700,83600,86500,86300,83200,81000,83700,82500,83300]},\"selected\":{\"id\":\"2113\"},\"selection_policy\":{\"id\":\"2112\"}},\"id\":\"2027\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2116\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"formatter\":{\"id\":\"2104\"},\"ticker\":{\"id\":\"2077\"}},\"id\":\"2076\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"2027\"}},\"id\":\"2031\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2117\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2077\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2118\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"axis\":{\"id\":\"2076\"},\"dimension\":1,\"ticker\":null},\"id\":\"2079\",\"type\":\"Grid\"},{\"attributes\":{\"below\":[{\"id\":\"2072\"}],\"center\":[{\"id\":\"2075\"},{\"id\":\"2079\"}],\"left\":[{\"id\":\"2076\"}],\"plot_height\":90,\"renderers\":[{\"id\":\"2097\"},{\"id\":\"2102\"}],\"title\":{\"id\":\"2129\"},\"toolbar\":{\"id\":\"2087\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1997\"},\"x_scale\":{\"id\":\"2068\"},\"y_range\":{\"id\":\"2066\"},\"y_scale\":{\"id\":\"2070\"}},\"id\":\"2064\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2029\",\"type\":\"Segment\"},{\"attributes\":{},\"id\":\"2119\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2027\"},\"glyph\":{\"id\":\"2028\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2029\"},\"selection_glyph\":null,\"view\":{\"id\":\"2031\"}},\"id\":\"2030\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2120\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2001\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2121\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2080\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"2003\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2122\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2081\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"end\":96800,\"start\":80200},\"id\":\"1999\",\"type\":\"Range1d\"},{\"attributes\":{\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2033\",\"type\":\"Segment\"},{\"attributes\":{},\"id\":\"2123\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"2086\"}},\"id\":\"2082\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"end\":29,\"start\":-1},\"id\":\"1997\",\"type\":\"Range1d\"},{\"attributes\":{\"text\":\"fdr.chart.config()\\ub97c \\uc0ac\\uc6a9\\ud558\\uc5ec \\uc124\\uc815\\uc744 \\ud55c\\ubc88\\uc5d0 \\uc9c0\\uc815\\ud560 \\uc218 \\uc788\\uc2b5\\ub2c8\\ub2e4\"},\"id\":\"1995\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"2124\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2083\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"2085\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"2125\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2084\",\"type\":\"ResetTool\"},{\"attributes\":{\"text\":\"\"},\"id\":\"2129\",\"type\":\"Title\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"2080\"},{\"id\":\"2081\"},{\"id\":\"2082\"},{\"id\":\"2083\"},{\"id\":\"2084\"},{\"id\":\"2085\"}]},\"id\":\"2087\",\"type\":\"Toolbar\"},{\"attributes\":{\"axis\":{\"id\":\"2005\"},\"ticker\":null},\"id\":\"2008\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"2032\"},\"glyph\":{\"id\":\"2033\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2034\"},\"selection_glyph\":null,\"view\":{\"id\":\"2036\"}},\"id\":\"2035\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2132\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x0\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"x1\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27],\"y0\":[84500,91200,91800,87300,89000,89700,89200,87700,85000,85400,83800,84200,84800,82600],\"y1\":[82100,89100,88000,84100,86500,86800,86500,85600,82000,83400,82100,83000,82700,81600]},\"selected\":{\"id\":\"2115\"},\"selection_policy\":{\"id\":\"2114\"}},\"id\":\"2032\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2006\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2114\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2133\",\"type\":\"Selection\"},{\"attributes\":{\"formatter\":{\"id\":\"2109\"},\"ticker\":{\"id\":\"2006\"},\"visible\":false},\"id\":\"2005\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"2134\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2034\",\"type\":\"Segment\"},{\"attributes\":{},\"id\":\"2010\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2135\",\"type\":\"Selection\"},{\"attributes\":{\"formatter\":{\"id\":\"2047\"},\"ticker\":{\"id\":\"2010\"}},\"id\":\"2009\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"2112\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"toolbars\":[{\"id\":\"2020\"},{\"id\":\"2087\"}],\"tools\":[{\"id\":\"2013\"},{\"id\":\"2014\"},{\"id\":\"2015\"},{\"id\":\"2016\"},{\"id\":\"2017\"},{\"id\":\"2018\"},{\"id\":\"2080\"},{\"id\":\"2081\"},{\"id\":\"2082\"},{\"id\":\"2083\"},{\"id\":\"2084\"},{\"id\":\"2085\"}]},\"id\":\"2139\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"overlay\":{\"id\":\"2019\"}},\"id\":\"2015\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"toolbar\":{\"id\":\"2139\"},\"toolbar_location\":\"above\"},\"id\":\"2140\",\"type\":\"ToolbarBox\"},{\"attributes\":{},\"id\":\"2014\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"2013\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"2113\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"2099\"}},\"id\":\"2103\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2109\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"axis\":{\"id\":\"2009\"},\"dimension\":1,\"ticker\":null},\"id\":\"2012\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"2086\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"2016\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"2018\",\"type\":\"HelpTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2096\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"2017\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"2094\"},\"glyph\":{\"id\":\"2095\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2096\"},\"selection_glyph\":null,\"view\":{\"id\":\"2098\"}},\"id\":\"2097\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"2013\"},{\"id\":\"2014\"},{\"id\":\"2015\"},{\"id\":\"2016\"},{\"id\":\"2017\"},{\"id\":\"2018\"}]},\"id\":\"2020\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2095\",\"type\":\"VBar\"},{\"attributes\":{\"data\":{\"bottom\":[83000,83900,82900,88800,91000,90600,89700,87000,88100,89400,83700,83000,84400,83500,84200],\"top\":[81000,81600,82800,83300,90000,90300,88700,84500,87500,87000,83200,81700,84100,83100,83800],\"x\":[0,1,3,4,5,6,8,11,13,15,18,20,21,24,28]},\"selected\":{\"id\":\"2117\"},\"selection_policy\":{\"id\":\"2116\"}},\"id\":\"2037\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"2094\"}},\"id\":\"2098\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"top\":[35335669,32644642,48682416,36068848,26393970,39895044,25211127,27258534,26423070,28046832,26302077,22112205,18036835,15338765],\"x\":[1,3,6,7,8,11,12,15,17,20,21,22,24,25]},\"selected\":{\"id\":\"2135\"},\"selection_policy\":{\"id\":\"2134\"}},\"id\":\"2099\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2101\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"2104\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"fill_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2100\",\"type\":\"VBar\"},{\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"2019\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"2099\"},\"glyph\":{\"id\":\"2100\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2101\"},\"selection_glyph\":null,\"view\":{\"id\":\"2103\"}},\"id\":\"2102\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"2032\"}},\"id\":\"2036\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"2037\"}},\"id\":\"2041\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2039\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"2037\"},\"glyph\":{\"id\":\"2038\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2039\"},\"selection_glyph\":null,\"view\":{\"id\":\"2041\"}},\"id\":\"2040\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"bottom\":[82200,89700,88000,85000,87200,86800,86700,85600,82000,84600,82500,83000,82700,81600],\"top\":[83300,89800,89800,86600,89000,89000,88800,86600,84500,84800,83500,83800,84000,82600],\"x\":[2,7,9,10,12,14,16,17,19,22,23,25,26,27]},\"selected\":{\"id\":\"2119\"},\"selection_policy\":{\"id\":\"2118\"}},\"id\":\"2042\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2047\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2044\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"2042\"},\"glyph\":{\"id\":\"2043\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2044\"},\"selection_glyph\":null,\"view\":{\"id\":\"2046\"}},\"id\":\"2045\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"blue\"},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2043\",\"type\":\"VBar\"},{\"attributes\":{\"source\":{\"id\":\"2042\"}},\"id\":\"2046\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAIz0QAAAAAAA8PRAAAAAAMBD9UAAAAAAgKH1QAAAAACA9vVAAAAAAIDs9UAAAAAAgKH1QAAAAACAdPVAAAAAAEBV9UAAAAAAQEH1QAAAAABAMvVAAAAAAEBp9UAAAAAAgGX1QAAAAACAUfVAAAAAAIAa9UAAAAAAgN70QAAAAACAjvRAAAAAAMBx9EAAAAAAQGX0QAAAAABAVvRAAAAAAABp9EAAAAAAAGn0QAAAAADAU/RAAAAAAEAu9EAAAAAAgEP0QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"2121\"},\"selection_policy\":{\"id\":\"2120\"}},\"id\":\"2049\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2050\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2051\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2049\"}},\"id\":\"2053\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"2049\"},\"glyph\":{\"id\":\"2050\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2051\"},\"selection_glyph\":null,\"view\":{\"id\":\"2053\"}},\"id\":\"2052\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAUCL1QAAAAABQIvVAAAAAAOAj9UAAAAAAYCv1QAAAAAAgKvVAAAAAAJAZ9UAAAAAAkAD1QAAAAADg5/RAAAAAAJDO9EAAAAAAYL30QA==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"2123\"},\"selection_policy\":{\"id\":\"2122\"}},\"id\":\"2054\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2055\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2056\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2054\"}},\"id\":\"2058\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"2054\"},\"glyph\":{\"id\":\"2055\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2056\"},\"selection_glyph\":null,\"view\":{\"id\":\"2058\"}},\"id\":\"2057\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fw==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[29]}},\"selected\":{\"id\":\"2125\"},\"selection_policy\":{\"id\":\"2124\"}},\"id\":\"2059\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2060\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2061\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2059\"}},\"id\":\"2063\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"2059\"},\"glyph\":{\"id\":\"2060\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2061\"},\"selection_glyph\":null,\"view\":{\"id\":\"2063\"}},\"id\":\"2062\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"range_padding\":0},\"id\":\"2066\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"2068\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2070\",\"type\":\"LinearScale\"}],\"root_ids\":[\"2141\"]},\"title\":\"Bokeh Application\",\"version\":\"2.1.1\"}};\n"," var render_items = [{\"docid\":\"620401bb-2e8e-439d-a50e-fd5e04bef2ad\",\"root_ids\":[\"2141\"],\"roots\":{\"2141\":\"2f9f8cee-6dd9-402a-b0d6-f5c8bbf84ae2\"}}];\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":{"tags":[],"application/vnd.bokehjs_exec.v0+json":{"id":"2141"}}}]},{"cell_type":"markdown","metadata":{"id":"U_vZNe3OJTfW"},"source":["모든 설정을 초기 기본 설정으로 되돌리려면 config(reset=True)를 지정합니다.\n","\n","```python\n","fdr.chart.config(reset=True)\n","```\n"]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/","height":528},"id":"pyawwjfzJSbM","executionInfo":{"status":"ok","timestamp":1613821297888,"user_tz":-540,"elapsed":9048,"user":{"displayName":"Sean-June Lee","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj6rvtcx9Gy8VOzzw2LH1hYtnxIuHBDw8qnYK9SAuY=s64","userId":"12576390002043678893"}},"outputId":"77017106-d4c8-408a-930d-08ec3a9a22ee"},"source":["fdr.chart.config(reset=True)\n","df = fdr.DataReader('000660', '2021')\n","\n","fdr.chart.plot(df)"],"execution_count":7,"outputs":[{"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"," \"<div style='background-color: #fdd'>\\n\"+\n"," \"<p>\\n\"+\n"," \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n"," \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n"," \"</p>\\n\"+\n"," \"<ul>\\n\"+\n"," \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n"," \"<li>use INLINE resources instead, as so:</li>\\n\"+\n"," \"</ul>\\n\"+\n"," \"<code>\\n\"+\n"," \"from bokeh.resources import INLINE\\n\"+\n"," \"output_notebook(resources=INLINE)\\n\"+\n"," \"</code>\\n\"+\n"," \"</div>\"}};\n","\n"," function display_loaded() {\n"," var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n"," var css_urls = [];\n"," \n","\n"," var inline_js = [\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"," } 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(null)).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 \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\n\"+\n \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(null);\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.1.1.min.js\": \"kLr4fYcqcSpbuI95brIH3vnnYCquzzSxHPU6XGQCIkQRGJwhg0StNbj1eegrHs12\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\": \"xIGPmVtaOm+z0BqfSOMn4lOR6ciex448GIKG4eE61LsAvmGj48XcMQZtKcE/UXZe\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\": \"Dc9u1wF/0zApGIWoBbH77iWEHtdmkuYWG839Uzmv8y8yBLXebjO9ZnERsde5Ln/P\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\": \"cT9JaBz7GiRXdENrJLZNSC6eMNF3nh3fa5fTF51Svp+ukxPdwcU5kGXGPBgDCa2j\"};\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.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.1.1.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.1.1.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\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 } 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(null)).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":{"tags":[]}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","\n","\n","\n"," <div class=\"bk-root\" id=\"ef854036-f143-41fe-aa44-95c8e386b385\" data-root-id=\"2559\"></div>\n"]},"metadata":{"tags":[]}},{"output_type":"display_data","data":{"application/javascript":["(function(root) {\n"," function embed_document(root) {\n"," \n"," var docs_json = {\"71356777-bf5e-4d60-a6e2-2953828cdd48\":{\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"2558\"},{\"id\":\"2556\"}]},\"id\":\"2559\",\"type\":\"Column\"},{\"attributes\":{\"source\":{\"id\":\"2517\"}},\"id\":\"2521\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"2517\"},\"glyph\":{\"id\":\"2518\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2519\"},\"selection_glyph\":null,\"view\":{\"id\":\"2521\"}},\"id\":\"2520\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2452\",\"type\":\"Segment\"},{\"attributes\":{\"below\":[{\"id\":\"2423\"}],\"center\":[{\"id\":\"2426\"},{\"id\":\"2430\"}],\"left\":[{\"id\":\"2427\"}],\"plot_height\":336,\"plot_width\":800,\"renderers\":[{\"id\":\"2448\"},{\"id\":\"2453\"},{\"id\":\"2458\"},{\"id\":\"2463\"},{\"id\":\"2470\"},{\"id\":\"2475\"},{\"id\":\"2480\"}],\"title\":{\"id\":\"2413\"},\"toolbar\":{\"id\":\"2438\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"2415\"},\"x_scale\":{\"id\":\"2419\"},\"y_range\":{\"id\":\"2417\"},\"y_scale\":{\"id\":\"2421\"}},\"id\":\"2412\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"2522\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"days\":[\"%Y-%m-%d\"],\"hours\":[\"%H:%M\"]},\"id\":\"2524\",\"type\":\"DatetimeTickFormatter\"},{\"attributes\":{\"children\":[[{\"id\":\"2412\"},0,0],[{\"id\":\"2482\"},1,0]]},\"id\":\"2556\",\"type\":\"GridBox\"},{\"attributes\":{\"data\":{\"x0\":[2,5,6,8,9,11,12,14,16,17,18,19,22,23,25,26,30,31],\"x1\":[2,5,6,8,9,11,12,14,16,17,18,19,22,23,25,26,30,31],\"y0\":[137000,140000,133500,133000,135000,132000,135000,132000,134000,132000,125500,128500,131500,128500,128000,130000,131000,130000],\"y1\":[130000,131000,125500,129000,127000,128500,130000,128500,128500,127500,121500,121500,128500,124000,125000,125000,128000,125500]},\"selected\":{\"id\":\"2533\"},\"selection_policy\":{\"id\":\"2532\"}},\"id\":\"2450\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2527\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"2530\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2531\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":{\"value\":\"blue\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2451\",\"type\":\"Segment\"},{\"attributes\":{},\"id\":\"2532\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2533\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"2450\"}},\"id\":\"2454\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2534\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"2450\"},\"glyph\":{\"id\":\"2451\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2452\"},\"selection_glyph\":null,\"view\":{\"id\":\"2454\"}},\"id\":\"2453\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2535\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2536\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2537\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"bottom\":[126000,130500,134500,138000,133000,130000,135000,125000,130000,127500,126000,132000,133000],\"top\":[124500,124500,132500,136000,129000,126000,130000,121000,128500,126500,125500,130000,129000],\"x\":[0,1,3,4,7,10,15,20,21,24,27,28,32]},\"selected\":{\"id\":\"2535\"},\"selection_policy\":{\"id\":\"2534\"}},\"id\":\"2455\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2541\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2542\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2457\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"2543\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2455\"},\"glyph\":{\"id\":\"2456\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2457\"},\"selection_glyph\":null,\"view\":{\"id\":\"2459\"}},\"id\":\"2458\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"text\":\"\"},\"id\":\"2547\",\"type\":\"Title\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"red\"},\"line_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2456\",\"type\":\"VBar\"},{\"attributes\":{},\"id\":\"2550\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2455\"}},\"id\":\"2459\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2551\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"2552\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2553\",\"type\":\"Selection\"},{\"attributes\":{\"toolbars\":[{\"id\":\"2438\"},{\"id\":\"2505\"}],\"tools\":[{\"id\":\"2431\"},{\"id\":\"2432\"},{\"id\":\"2433\"},{\"id\":\"2434\"},{\"id\":\"2435\"},{\"id\":\"2436\"},{\"id\":\"2498\"},{\"id\":\"2499\"},{\"id\":\"2500\"},{\"id\":\"2501\"},{\"id\":\"2502\"},{\"id\":\"2503\"}]},\"id\":\"2557\",\"type\":\"ProxyToolbar\"},{\"attributes\":{\"data\":{\"bottom\":[131000,133000,129000,130500,127500,130500,130500,128500,129000,128500,123000,122500,130000,125000,125000,125500,130000,126000],\"top\":[132500,138000,132000,132500,133000,131000,134000,131500,134000,129500,124000,128500,131000,127500,127500,127500,131000,128500],\"x\":[2,5,6,8,9,11,12,14,16,17,18,19,22,23,25,26,30,31]},\"selected\":{\"id\":\"2537\"},\"selection_policy\":{\"id\":\"2536\"}},\"id\":\"2460\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"toolbar\":{\"id\":\"2557\"},\"toolbar_location\":\"above\"},\"id\":\"2558\",\"type\":\"ToolbarBox\"},{\"attributes\":{},\"id\":\"2465\",\"type\":\"NumeralTickFormatter\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2462\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"2460\"},\"glyph\":{\"id\":\"2461\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2462\"},\"selection_glyph\":null,\"view\":{\"id\":\"2464\"}},\"id\":\"2463\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom\":{\"field\":\"bottom\"},\"fill_color\":{\"value\":\"blue\"},\"line_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2461\",\"type\":\"VBar\"},{\"attributes\":{\"source\":{\"id\":\"2460\"}},\"id\":\"2464\",\"type\":\"CDSView\"},{\"attributes\":{\"below\":[{\"id\":\"2490\"}],\"center\":[{\"id\":\"2493\"},{\"id\":\"2497\"}],\"left\":[{\"id\":\"2494\"}],\"plot_height\":144,\"plot_width\":800,\"renderers\":[{\"id\":\"2515\"},{\"id\":\"2520\"}],\"title\":{\"id\":\"2547\"},\"toolbar\":{\"id\":\"2505\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"2415\"},\"x_scale\":{\"id\":\"2486\"},\"y_range\":{\"id\":\"2484\"},\"y_scale\":{\"id\":\"2488\"}},\"id\":\"2482\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAB0AQQAAAADASABBAAAAAGA/AEEAAAAA4EsAQQAAAADgMgBBAAAAAIDi/0AAAAAAAL3/QAAAAADAz/9AAAAAAICw/0AAAAAAAL3/QAAAAACAyf9AAAAAAAAEAEEAAAAAQPX/QAAAAABA3P9AAAAAAABy/0AAAAAAACf/QAAAAAAAqv5AAAAAAIC2/kAAAAAAQMn+QAAAAABA4v5AAAAAAMAg/0AAAAAAwCD/QAAAAACA6P5AAAAAAIC2/kAAAAAAAA7/QAAAAACATP9AAAAAAACL/0AAAAAAQJH/QAAAAADA6P9A\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[33]}},\"selected\":{\"id\":\"2539\"},\"selection_policy\":{\"id\":\"2538\"}},\"id\":\"2467\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2468\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2469\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2467\"}},\"id\":\"2471\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"2467\"},\"glyph\":{\"id\":\"2468\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2469\"},\"selection_glyph\":null,\"view\":{\"id\":\"2471\"}},\"id\":\"2470\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAQMP/QAAAAAAgwP9AAAAAAJC+/0AAAAAAcLv/QAAAAADAnf9AAAAAAPB8/0AAAAAA8GP/QAAAAAAAWf9AAAAAACBD/0AAAAAA0Ef/QAAAAABwV/9AAAAAAHBX/0AAAAAAYEn/QAAAAAAwUf9A\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[33]}},\"selected\":{\"id\":\"2541\"},\"selection_policy\":{\"id\":\"2540\"}},\"id\":\"2472\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"overlay\":{\"id\":\"2437\"}},\"id\":\"2433\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2473\",\"type\":\"Line\"},{\"attributes\":{\"end\":33,\"start\":-1},\"id\":\"2415\",\"type\":\"Range1d\"},{\"attributes\":{\"source\":{\"id\":\"2477\"}},\"id\":\"2481\",\"type\":\"CDSView\"},{\"attributes\":{\"text\":\"\"},\"id\":\"2413\",\"type\":\"Title\"},{\"attributes\":{\"data_source\":{\"id\":\"2477\"},\"glyph\":{\"id\":\"2478\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2479\"},\"selection_glyph\":null,\"view\":{\"id\":\"2481\"}},\"id\":\"2480\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2424\",\"type\":\"BasicTicker\"},{\"attributes\":{\"end\":140000,\"start\":118000},\"id\":\"2417\",\"type\":\"Range1d\"},{\"attributes\":{\"range_padding\":0},\"id\":\"2484\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"2486\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2434\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"2488\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2474\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"2472\"},\"glyph\":{\"id\":\"2473\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2474\"},\"selection_glyph\":null,\"view\":{\"id\":\"2476\"}},\"id\":\"2475\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"2431\"},{\"id\":\"2432\"},{\"id\":\"2433\"},{\"id\":\"2434\"},{\"id\":\"2435\"},{\"id\":\"2436\"}]},\"id\":\"2438\",\"type\":\"Toolbar\"},{\"attributes\":{\"formatter\":{\"id\":\"2524\"},\"major_label_orientation\":0.6283185307179586,\"major_label_overrides\":{\"0\":\"2021-01-04\",\"1\":\"2021-01-05\",\"10\":\"2021-01-18\",\"11\":\"2021-01-19\",\"12\":\"2021-01-20\",\"13\":\"2021-01-21\",\"14\":\"2021-01-22\",\"15\":\"2021-01-25\",\"16\":\"2021-01-26\",\"17\":\"2021-01-27\",\"18\":\"2021-01-28\",\"19\":\"2021-01-29\",\"2\":\"2021-01-06\",\"20\":\"2021-02-01\",\"21\":\"2021-02-02\",\"22\":\"2021-02-03\",\"23\":\"2021-02-04\",\"24\":\"2021-02-05\",\"25\":\"2021-02-08\",\"26\":\"2021-02-09\",\"27\":\"2021-02-10\",\"28\":\"2021-02-15\",\"29\":\"2021-02-16\",\"3\":\"2021-01-07\",\"30\":\"2021-02-17\",\"31\":\"2021-02-18\",\"32\":\"2021-02-19\",\"33\":\"\",\"4\":\"2021-01-08\",\"5\":\"2021-01-11\",\"6\":\"2021-01-12\",\"7\":\"2021-01-13\",\"8\":\"2021-01-14\",\"9\":\"2021-01-15\"},\"ticker\":{\"id\":\"2491\"}},\"id\":\"2490\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"2491\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"2490\"},\"ticker\":null},\"id\":\"2493\",\"type\":\"Grid\"},{\"attributes\":{\"formatter\":{\"id\":\"2522\"},\"ticker\":{\"id\":\"2495\"}},\"id\":\"2494\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"2495\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2435\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"2494\"},\"dimension\":1,\"ticker\":null},\"id\":\"2497\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"2436\",\"type\":\"HelpTool\"},{\"attributes\":{\"data\":{\"top\":[8525749,8713010,11154671,5927419,4913282,3927767,5061864,6270106,6270829,7391307,4600618,5177095,5384526,3621178,3792425,6951498],\"x\":[2,4,5,10,12,14,15,16,18,19,23,26,28,30,31,32]},\"selected\":{\"id\":\"2551\"},\"selection_policy\":{\"id\":\"2550\"}},\"id\":\"2512\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2419\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2421\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"2498\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"2499\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"2428\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"2431\",\"type\":\"PanTool\"},{\"attributes\":{\"overlay\":{\"id\":\"2504\"}},\"id\":\"2500\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"2427\"},\"dimension\":1,\"ticker\":null},\"id\":\"2430\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"2501\",\"type\":\"SaveTool\"},{\"attributes\":{\"formatter\":{\"id\":\"2465\"},\"ticker\":{\"id\":\"2428\"}},\"id\":\"2427\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"2502\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"2503\",\"type\":\"HelpTool\"},{\"attributes\":{\"data\":{\"x0\":[0,1,3,4,7,10,15,20,21,24,27,28,32],\"x1\":[0,1,3,4,7,10,15,20,21,24,27,28,32],\"y0\":[128000,132500,137500,138000,133500,131000,135000,126000,132500,128000,127000,132500,133000],\"y1\":[120500,124000,131500,132500,128500,125000,129500,118000,127000,124500,124500,130000,128500]},\"selected\":{\"id\":\"2531\"},\"selection_policy\":{\"id\":\"2530\"}},\"id\":\"2445\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"formatter\":{\"id\":\"2527\"},\"ticker\":{\"id\":\"2424\"},\"visible\":false},\"id\":\"2423\",\"type\":\"LinearAxis\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"2498\"},{\"id\":\"2499\"},{\"id\":\"2500\"},{\"id\":\"2501\"},{\"id\":\"2502\"},{\"id\":\"2503\"}]},\"id\":\"2505\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"2539\",\"type\":\"Selection\"},{\"attributes\":{\"axis\":{\"id\":\"2423\"},\"ticker\":null},\"id\":\"2426\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"2538\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2432\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"2472\"}},\"id\":\"2476\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2540\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"2504\",\"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,\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"2437\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{\"x\":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32],\"y\":{\"__ndarray__\":\"AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/AAAAAAAA+H8AAAAAAAD4fwAAAAAAAPh/\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[33]}},\"selected\":{\"id\":\"2543\"},\"selection_policy\":{\"id\":\"2542\"}},\"id\":\"2477\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2447\",\"type\":\"Segment\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"red\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2514\",\"type\":\"VBar\"},{\"attributes\":{\"data_source\":{\"id\":\"2512\"},\"glyph\":{\"id\":\"2513\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2514\"},\"selection_glyph\":null,\"view\":{\"id\":\"2516\"}},\"id\":\"2515\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2479\",\"type\":\"Line\"},{\"attributes\":{\"fill_color\":{\"value\":\"red\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2513\",\"type\":\"VBar\"},{\"attributes\":{\"line_color\":{\"value\":\"red\"},\"x0\":{\"field\":\"x0\"},\"x1\":{\"field\":\"x1\"},\"y0\":{\"field\":\"y0\"},\"y1\":{\"field\":\"y1\"}},\"id\":\"2446\",\"type\":\"Segment\"},{\"attributes\":{\"source\":{\"id\":\"2512\"}},\"id\":\"2516\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"2445\"}},\"id\":\"2449\",\"type\":\"CDSView\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2478\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"top\":[7180224,5981299,8700877,6791044,5380278,4838114,4513315,3067677,5068456,5620305,4880067,3693688,3497303,2876471,4262526,3218689],\"x\":[1,3,6,7,8,9,11,13,17,20,21,22,24,25,27,29]},\"selected\":{\"id\":\"2553\"},\"selection_policy\":{\"id\":\"2552\"}},\"id\":\"2517\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2445\"},\"glyph\":{\"id\":\"2446\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2447\"},\"selection_glyph\":null,\"view\":{\"id\":\"2449\"}},\"id\":\"2448\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"blue\"},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2518\",\"type\":\"VBar\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"blue\"},\"line_alpha\":{\"value\":0.1},\"top\":{\"field\":\"top\"},\"width\":{\"value\":0.8},\"x\":{\"field\":\"x\"}},\"id\":\"2519\",\"type\":\"VBar\"}],\"root_ids\":[\"2559\"]},\"title\":\"Bokeh Application\",\"version\":\"2.1.1\"}};\n"," var render_items = [{\"docid\":\"71356777-bf5e-4d60-a6e2-2953828cdd48\",\"root_ids\":[\"2559\"],\"roots\":{\"2559\":\"ef854036-f143-41fe-aa44-95c8e386b385\"}}];\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":{"tags":[],"application/vnd.bokehjs_exec.v0+json":{"id":"2559"}}}]},{"cell_type":"markdown","metadata":{"id":"Niqq6NbCrk6B"},"source":["**2021 [FinanceData.KR](http://financedata.kr) | [facebook.com/financedata](http://facebook.com/financedata)**"]}]} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment