Skip to content

Instantly share code, notes, and snippets.

@bollwyvl
Forked from tonyfast/bokeh-inspector.ipynb
Last active February 8, 2016 18:50

Revisions

  1. bollwyvl revised this gist Feb 8, 2016. No changes.
  2. bollwyvl revised this gist Feb 8, 2016. No changes.
  3. bollwyvl revised this gist Feb 8, 2016. 1 changed file with 180 additions and 49 deletions.
    229 changes: 180 additions & 49 deletions bokeh-inspector.ipynb
    180 additions, 49 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
  4. @tonyfast tonyfast revised this gist Feb 8, 2016. 1 changed file with 25 additions and 44 deletions.
    69 changes: 25 additions & 44 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -253,7 +253,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 15,
    "execution_count": 22,
    "metadata": {
    "collapsed": false
    },
    @@ -266,42 +266,36 @@
    " buttons = IPython.display.HTML(jinja2.Template(\"\"\"\n",
    " <div class=\"btn-group\" role=\"group\" aria-label=\"...\">\n",
    " <h3>Click on a Button Below to Change a glyph's properties</h3><hr>\n",
    " {% for i, ref in enumerate( refs ) %}\n",
    " {% if ref.type in ['GlyphRenderer'] %}\n",
    " {% for i, ref in enumerate( refs ) %}{% if ref.type in ['GlyphRenderer'] %}\n",
    " <button data-type=\"{{ref['type']}}\" data-id=\"{{ref['id']}}\" type=\"button\" class=\"btn btn-default\">{{ref['type']}} - {{ref['id']}}</button>\n",
    " {% endif %}\n",
    " {% endfor %}\n",
    " </div>\n",
    " <div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " {% endif %}{% endfor %}\n",
    " </div><div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " \"\"\").render( refs = [r.ref for r in p.renderers], enumerate = enumerate, **locals()))\n",
    "\n",
    " edit = IPython.display.Javascript( coffee.compile(\"\"\"\n",
    " require [\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js'\n",
    " 'https://d3js.org/d3.v3.min.js'\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'\n",
    " ], (yaml, d3, CM)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CM editor.node(), {height: \"400px\", width: \"100%\", theme: 'mdn-like'}\n",
    " require [ 'https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js','https://d3js.org/d3.v3.min.js','https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'], \n",
    " (yaml, d3, CM)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CM editor.node(), {height: \"400px\", width: \"100%\", theme: 'mdn-like'}\n",
    "\n",
    " buttons = d3.selectAll(\"button[data-type=GlyphRenderer]\").datum ()-> Bokeh.Collections(@dataset.type).get @dataset.id\n",
    " buttons = d3.selectAll(\"button[data-type=GlyphRenderer]\").datum ()-> Bokeh.Collections(@dataset.type).get @dataset.id\n",
    "\n",
    " buttons.on 'click', (renderer)->\n",
    " buttons.classed 'active', false\n",
    " d3.select(@).classed 'active', true\n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    " cm.on 'change', (doc)->\n",
    " renderer = d3.select('button.active[data-type=GlyphRenderer]').datum()\n",
    " glyph = renderer.get('glyph')\n",
    " d3.entries(yaml.load(doc.getValue())).forEach (d)-> glyph.set d.key, d.value\n",
    " renderer.get('data_source').trigger 'change'\n",
    " buttons.on 'click', (renderer)->\n",
    " buttons.classed 'active', false\n",
    " d3.select(@).classed 'active', true\n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    " cm.on 'change', (doc)->\n",
    " renderer = d3.select('button.active[data-type=GlyphRenderer]').datum()\n",
    " glyph = renderer.get('glyph')\n",
    " d3.entries(yaml.load(doc.getValue())).forEach (d)-> glyph.set d.key, d.value\n",
    " renderer.get('data_source').trigger 'change'\n",
    " \"\"\"))\n",
    " return IPython.display.display( styles, IPython.display.HTML( '\\n'.join(bokeh.embed.components( p ))), buttons, edit )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 16,
    "execution_count": 23,
    "metadata": {
    "collapsed": false
    },
    @@ -326,7 +320,7 @@
    " Bokeh.$(function() {\n",
    " var all_models = [{\"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"type\": \"PreviewSaveTool\", \"attributes\": {\"doc\": null, \"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\", \"attributes\": {\"mantissas\": [2, 5, 10], \"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"doc\": null, \"tags\": [], \"num_minor_ticks\": 5}}, {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"attributes\": {\"tools\": [{\"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"type\": \"PanTool\"}, {\"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"type\": \"WheelZoomTool\"}, {\"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"type\": \"BoxZoomTool\"}, {\"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"type\": \"ResizeTool\"}, {\"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"type\": \"ResetTool\"}, {\"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"type\": \"HelpTool\"}], \"extra_x_ranges\": {}, \"doc\": null, \"tool_events\": {\"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"type\": \"ToolEvents\"}, \"right\": [], \"renderers\": [{\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\"}, {\"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"type\": \"Grid\"}, {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\"}, {\"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"type\": \"Grid\"}, {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"type\": \"GlyphRenderer\"}, {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"type\": \"GlyphRenderer\"}, {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"type\": \"GlyphRenderer\"}], \"extra_y_ranges\": {}, \"left\": [{\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\"}], \"tags\": [], \"below\": [{\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\"}], \"y_range\": {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"type\": \"DataRange1d\"}, \"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"above\": [], \"x_range\": {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"type\": \"DataRange1d\"}}, \"subtype\": \"Figure\"}, {\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\", \"attributes\": {\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\"}, \"formatter\": {\"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"type\": \"BasicTickFormatter\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"type\": \"Triangle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"type\": \"ResetTool\", \"attributes\": {\"doc\": null, \"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"type\": \"Square\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"glyph\": {\"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"type\": \"Square\"}, \"tags\": []}}, {\"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"type\": \"Square\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"type\": \"ResizeTool\", \"attributes\": {\"doc\": null, \"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"type\": \"DataRange1d\", \"attributes\": {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"callback\": null, \"doc\": null, \"names\": [], \"renderers\": [], \"tags\": []}}, {\"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"type\": \"Grid\", \"attributes\": {\"dimension\": 1, \"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"type\": \"DataRange1d\", \"attributes\": {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"callback\": null, \"doc\": null, \"names\": [], \"renderers\": [], \"tags\": []}}, {\"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"type\": \"WheelZoomTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"type\": \"BasicTickFormatter\", \"attributes\": {\"doc\": null, \"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"tags\": []}}, {\"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"]}, \"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"]}, \"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"type\": \"BoxZoomTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"glyph\": {\"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"type\": \"Triangle\"}, \"tags\": []}}, {\"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"type\": \"PanTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\", \"attributes\": {\"mantissas\": [2, 5, 10], \"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"doc\": null, \"tags\": [], \"num_minor_ticks\": 5}}, {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\", \"attributes\": {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\"}, \"formatter\": {\"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"type\": \"BasicTickFormatter\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"glyph\": {\"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"type\": \"Circle\"}, \"tags\": []}}, {\"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"type\": \"Circle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"]}, \"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"type\": \"HelpTool\", \"attributes\": {\"doc\": null, \"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"type\": \"Circle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"type\": \"Grid\", \"attributes\": {\"dimension\": 0, \"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"type\": \"BasicTickFormatter\", \"attributes\": {\"doc\": null, \"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"tags\": []}}, {\"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"type\": \"ToolEvents\", \"attributes\": {\"doc\": null, \"geometries\": [], \"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"tags\": []}}, {\"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"type\": \"Triangle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'modelid': 'c75e07c3-63be-4b61-957a-7f76270774e6', 'modeltype': 'Plot', 'elementid': '9997bd95-ad56-4905-8ec6-dee0738ac7d9'}];\n",
    " var plots = [{'modelid': 'c75e07c3-63be-4b61-957a-7f76270774e6', 'modeltype': 'Plot', 'elementid': '3bce3adf-c5e8-42ed-922c-9eb3f3be0e89'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -342,7 +336,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"9997bd95-ad56-4905-8ec6-dee0738ac7d9\"></div>"
    "<div class=\"plotdiv\" id=\"3bce3adf-c5e8-42ed-922c-9eb3f3be0e89\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -358,28 +352,13 @@
    " <div class=\"btn-group\" role=\"group\" aria-label=\"...\">\n",
    " <h3>Click on a Button Below to Change a glyph's properties</h3><hr>\n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"8aed04a8-d47a-4815-8a7d-41eacebb512f\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 8aed04a8-d47a-4815-8a7d-41eacebb512f</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"c135b37a-236a-4176-8671-3955de96b332\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - c135b37a-236a-4176-8671-3955de96b332</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"3263967a-4c01-417f-a978-dd2799424085\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 3263967a-4c01-417f-a978-dd2799424085</button>\n",
    " \n",
    " \n",
    " </div>\n",
    " <div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " </div><div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " "
    ],
    "text/plain": [
    @@ -442,7 +421,9 @@
    "collapsed": true
    },
    "outputs": [],
    "source": []
    "source": [
    "|"
    ]
    }
    ],
    "metadata": {
  5. @tonyfast tonyfast revised this gist Feb 8, 2016. 1 changed file with 16 additions and 14 deletions.
    30 changes: 16 additions & 14 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 29,
    "execution_count": 3,
    "metadata": {
    "collapsed": false
    },
    @@ -239,7 +239,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 26,
    "execution_count": 9,
    "metadata": {
    "collapsed": true
    },
    @@ -253,7 +253,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 27,
    "execution_count": 15,
    "metadata": {
    "collapsed": false
    },
    @@ -291,16 +291,17 @@
    " d3.select(@).classed 'active', true\n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    " cm.on 'change', (doc)->\n",
    " glyph = d3.select('button.active[data-type=GlyphRenderer]').datum().get('glyph')\n",
    " renderer = d3.select('button.active[data-type=GlyphRenderer]').datum()\n",
    " glyph = renderer.get('glyph')\n",
    " d3.entries(yaml.load(doc.getValue())).forEach (d)-> glyph.set d.key, d.value\n",
    " d3.select('.last-active').datum().get('data_source').trigger 'change'\n",
    " renderer.get('data_source').trigger 'change'\n",
    " \"\"\"))\n",
    " return IPython.display.display( styles, IPython.display.HTML( '\\n'.join(bokeh.embed.components( p ))), buttons, edit )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 28,
    "execution_count": 16,
    "metadata": {
    "collapsed": false
    },
    @@ -323,9 +324,9 @@
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"id\": \"5d4164d4-a663-42ab-859c-bdcff3da1681\", \"attributes\": {\"callback\": null, \"id\": \"5d4164d4-a663-42ab-859c-bdcff3da1681\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"97fcc154-5c9a-4612-ab67-80c545b01d91\", \"attributes\": {\"id\": \"97fcc154-5c9a-4612-ab67-80c545b01d91\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResizeTool\"}, {\"id\": \"b226c015-aae6-4ade-bb3c-5659c1be1999\", \"attributes\": {\"id\": \"b226c015-aae6-4ade-bb3c-5659c1be1999\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"2fe0c2a7-f4b0-433d-9991-3c98f9785ec0\", \"attributes\": {\"id\": \"2fe0c2a7-f4b0-433d-9991-3c98f9785ec0\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Square\"}, {\"id\": \"2d58696c-795e-4a3a-a642-e3cb1108471d\", \"attributes\": {\"id\": \"2d58696c-795e-4a3a-a642-e3cb1108471d\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"BoxZoomTool\"}, {\"id\": \"c0ff8dda-e4c0-4beb-959e-00c04b0757d2\", \"attributes\": {\"id\": \"c0ff8dda-e4c0-4beb-959e-00c04b0757d2\", \"formatter\": {\"id\": \"507c7b4a-779a-47ee-992a-89e32fd2be64\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"b226c015-aae6-4ade-bb3c-5659c1be1999\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"c811b046-cc44-4fa6-9e72-58a1b1308080\", \"attributes\": {\"callback\": null, \"id\": \"c811b046-cc44-4fa6-9e72-58a1b1308080\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"d20ab32b-8031-47bb-809d-369eca72e3da\", \"attributes\": {\"id\": \"d20ab32b-8031-47bb-809d-369eca72e3da\", \"formatter\": {\"id\": \"fb217223-57a2-4604-b2e1-7f559f27db2c\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"f15477c0-ef49-45eb-b2c5-0e879d8f3dc2\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"fd8513c1-3d3a-4567-929b-6fceffd12309\", \"attributes\": {\"id\": \"fd8513c1-3d3a-4567-929b-6fceffd12309\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PanTool\"}, {\"id\": \"fb217223-57a2-4604-b2e1-7f559f27db2c\", \"attributes\": {\"id\": \"fb217223-57a2-4604-b2e1-7f559f27db2c\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"f15477c0-ef49-45eb-b2c5-0e879d8f3dc2\", \"attributes\": {\"id\": \"f15477c0-ef49-45eb-b2c5-0e879d8f3dc2\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"012e59f7-e975-4e27-b96a-b01dce79f9ae\", \"attributes\": {\"callback\": null, \"id\": \"012e59f7-e975-4e27-b96a-b01dce79f9ae\", \"data\": {\"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"e23c2277-24a0-45e3-bfd7-a365bfc2f387\", \"attributes\": {\"id\": \"e23c2277-24a0-45e3-bfd7-a365bfc2f387\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"c2432080-7cef-4a7d-9fef-8d523137f0c2\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"12ed9986-5c50-4f11-be3b-b148caf4847a\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"848eff04-a202-476e-a5aa-a007d24603b6\", \"type\": \"Triangle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"e2538e00-7b27-40ca-86df-08d948a01c93\", \"attributes\": {\"id\": \"e2538e00-7b27-40ca-86df-08d948a01c93\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResetTool\"}, {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"attributes\": {\"above\": [], \"x_range\": {\"id\": \"5d4164d4-a663-42ab-859c-bdcff3da1681\", \"type\": \"DataRange1d\"}, \"y_range\": {\"id\": \"c811b046-cc44-4fa6-9e72-58a1b1308080\", \"type\": \"DataRange1d\"}, \"below\": [{\"id\": \"d20ab32b-8031-47bb-809d-369eca72e3da\", \"type\": \"LinearAxis\"}], \"right\": [], \"extra_x_ranges\": {}, \"left\": [{\"id\": \"c0ff8dda-e4c0-4beb-959e-00c04b0757d2\", \"type\": \"LinearAxis\"}], \"renderers\": [{\"id\": \"d20ab32b-8031-47bb-809d-369eca72e3da\", \"type\": \"LinearAxis\"}, {\"id\": \"085897cd-4bf8-406f-9279-87a058f0c44a\", \"type\": \"Grid\"}, {\"id\": \"c0ff8dda-e4c0-4beb-959e-00c04b0757d2\", \"type\": \"LinearAxis\"}, {\"id\": \"4bb6a8ac-fc92-49f1-9e0e-f88fc446ff45\", \"type\": \"Grid\"}, {\"id\": \"a9425577-9910-4ed6-8b20-8ddcfba9670d\", \"type\": \"GlyphRenderer\"}, {\"id\": \"97f1ae3e-d79c-468a-86be-e47eebfe0177\", \"type\": \"GlyphRenderer\"}, {\"id\": \"e23c2277-24a0-45e3-bfd7-a365bfc2f387\", \"type\": \"GlyphRenderer\"}], \"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"tool_events\": {\"id\": \"7789c222-01ea-4e48-96c6-babfcaa01241\", \"type\": \"ToolEvents\"}, \"extra_y_ranges\": {}, \"tags\": [], \"tools\": [{\"id\": \"fd8513c1-3d3a-4567-929b-6fceffd12309\", \"type\": \"PanTool\"}, {\"id\": \"396b78f4-4071-4756-a646-9511c2301bef\", \"type\": \"WheelZoomTool\"}, {\"id\": \"2d58696c-795e-4a3a-a642-e3cb1108471d\", \"type\": \"BoxZoomTool\"}, {\"id\": \"f3aa1e57-5025-4c24-b69a-fd64e94f45c3\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"97fcc154-5c9a-4612-ab67-80c545b01d91\", \"type\": \"ResizeTool\"}, {\"id\": \"e2538e00-7b27-40ca-86df-08d948a01c93\", \"type\": \"ResetTool\"}, {\"id\": \"668c0c99-cf86-4858-85c6-f156817c4343\", \"type\": \"HelpTool\"}], \"doc\": null}, \"type\": \"Plot\", \"subtype\": \"Figure\"}, {\"id\": \"ec83411d-b3a8-4a49-b4f0-b1351b9bd287\", \"attributes\": {\"id\": \"ec83411d-b3a8-4a49-b4f0-b1351b9bd287\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Circle\"}, {\"id\": \"848eff04-a202-476e-a5aa-a007d24603b6\", \"attributes\": {\"id\": \"848eff04-a202-476e-a5aa-a007d24603b6\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Triangle\"}, {\"id\": \"12ed9986-5c50-4f11-be3b-b148caf4847a\", \"attributes\": {\"callback\": null, \"id\": \"12ed9986-5c50-4f11-be3b-b148caf4847a\", \"data\": {\"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"4bb6a8ac-fc92-49f1-9e0e-f88fc446ff45\", \"attributes\": {\"id\": \"4bb6a8ac-fc92-49f1-9e0e-f88fc446ff45\", \"ticker\": {\"id\": \"b226c015-aae6-4ade-bb3c-5659c1be1999\", \"type\": \"BasicTicker\"}, \"dimension\": 1, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"0e6d0c4e-c777-4e3a-93d6-a64cf8effbdd\", \"attributes\": {\"callback\": null, \"id\": \"0e6d0c4e-c777-4e3a-93d6-a64cf8effbdd\", \"data\": {\"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"085897cd-4bf8-406f-9279-87a058f0c44a\", \"attributes\": {\"id\": \"085897cd-4bf8-406f-9279-87a058f0c44a\", \"ticker\": {\"id\": \"f15477c0-ef49-45eb-b2c5-0e879d8f3dc2\", \"type\": \"BasicTicker\"}, \"dimension\": 0, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"f3aa1e57-5025-4c24-b69a-fd64e94f45c3\", \"attributes\": {\"id\": \"f3aa1e57-5025-4c24-b69a-fd64e94f45c3\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PreviewSaveTool\"}, {\"id\": \"668c0c99-cf86-4858-85c6-f156817c4343\", \"attributes\": {\"id\": \"668c0c99-cf86-4858-85c6-f156817c4343\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"HelpTool\"}, {\"id\": \"5e7cb3dc-fe99-4351-8a64-fe0f452d417b\", \"attributes\": {\"id\": \"5e7cb3dc-fe99-4351-8a64-fe0f452d417b\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Square\"}, {\"id\": \"7789c222-01ea-4e48-96c6-babfcaa01241\", \"attributes\": {\"id\": \"7789c222-01ea-4e48-96c6-babfcaa01241\", \"geometries\": [], \"tags\": [], \"doc\": null}, \"type\": \"ToolEvents\"}, {\"id\": \"c2432080-7cef-4a7d-9fef-8d523137f0c2\", \"attributes\": {\"id\": \"c2432080-7cef-4a7d-9fef-8d523137f0c2\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Triangle\"}, {\"id\": \"396b78f4-4071-4756-a646-9511c2301bef\", \"attributes\": {\"id\": \"396b78f4-4071-4756-a646-9511c2301bef\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"67f8410d-f19e-415c-8b8d-7e3595f8b54f\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"WheelZoomTool\"}, {\"id\": \"97f1ae3e-d79c-468a-86be-e47eebfe0177\", \"attributes\": {\"id\": \"97f1ae3e-d79c-468a-86be-e47eebfe0177\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"2fe0c2a7-f4b0-433d-9991-3c98f9785ec0\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"012e59f7-e975-4e27-b96a-b01dce79f9ae\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"5e7cb3dc-fe99-4351-8a64-fe0f452d417b\", \"type\": \"Square\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"507c7b4a-779a-47ee-992a-89e32fd2be64\", \"attributes\": {\"id\": \"507c7b4a-779a-47ee-992a-89e32fd2be64\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"3cec8cb5-5549-430b-a024-e8cd7d8e4855\", \"attributes\": {\"id\": \"3cec8cb5-5549-430b-a024-e8cd7d8e4855\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Circle\"}, {\"id\": \"a9425577-9910-4ed6-8b20-8ddcfba9670d\", \"attributes\": {\"id\": \"a9425577-9910-4ed6-8b20-8ddcfba9670d\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"3cec8cb5-5549-430b-a024-e8cd7d8e4855\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"0e6d0c4e-c777-4e3a-93d6-a64cf8effbdd\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"ec83411d-b3a8-4a49-b4f0-b1351b9bd287\", \"type\": \"Circle\"}}, \"type\": \"GlyphRenderer\"}];\n",
    " var all_models = [{\"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"type\": \"PreviewSaveTool\", \"attributes\": {\"doc\": null, \"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\", \"attributes\": {\"mantissas\": [2, 5, 10], \"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"doc\": null, \"tags\": [], \"num_minor_ticks\": 5}}, {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"attributes\": {\"tools\": [{\"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"type\": \"PanTool\"}, {\"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"type\": \"WheelZoomTool\"}, {\"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"type\": \"BoxZoomTool\"}, {\"id\": \"f32ef181-0e70-4a4d-ab9e-7f98e609c21b\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"type\": \"ResizeTool\"}, {\"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"type\": \"ResetTool\"}, {\"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"type\": \"HelpTool\"}], \"extra_x_ranges\": {}, \"doc\": null, \"tool_events\": {\"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"type\": \"ToolEvents\"}, \"right\": [], \"renderers\": [{\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\"}, {\"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"type\": \"Grid\"}, {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\"}, {\"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"type\": \"Grid\"}, {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"type\": \"GlyphRenderer\"}, {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"type\": \"GlyphRenderer\"}, {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"type\": \"GlyphRenderer\"}], \"extra_y_ranges\": {}, \"left\": [{\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\"}], \"tags\": [], \"below\": [{\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\"}], \"y_range\": {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"type\": \"DataRange1d\"}, \"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"above\": [], \"x_range\": {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"type\": \"DataRange1d\"}}, \"subtype\": \"Figure\"}, {\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"type\": \"LinearAxis\", \"attributes\": {\"id\": \"d305de84-6627-4033-95fa-101661dfb722\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\"}, \"formatter\": {\"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"type\": \"BasicTickFormatter\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"type\": \"Triangle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"type\": \"ResetTool\", \"attributes\": {\"doc\": null, \"id\": \"6883467f-1e98-4562-b68a-0e22a7b006cb\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"type\": \"Square\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"c135b37a-236a-4176-8671-3955de96b332\", \"glyph\": {\"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"532b731c-4cb9-4e7b-859d-9d38ca2b5838\", \"type\": \"Square\"}, \"tags\": []}}, {\"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"type\": \"Square\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"9be2f0ca-ffb3-47e4-be52-701ba94af0ae\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"type\": \"ResizeTool\", \"attributes\": {\"doc\": null, \"id\": \"28b80cc1-123a-4431-bcf4-b38b417c0cbc\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"type\": \"DataRange1d\", \"attributes\": {\"id\": \"0edf6199-e591-48af-8bf9-498c62fa213a\", \"callback\": null, \"doc\": null, \"names\": [], \"renderers\": [], \"tags\": []}}, {\"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"type\": \"Grid\", \"attributes\": {\"dimension\": 1, \"id\": \"d67a0b02-90ab-4dfc-97b6-d608b8c63afe\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"type\": \"DataRange1d\", \"attributes\": {\"id\": \"76a8a621-3877-4ee3-bb43-9c5d225fe5ba\", \"callback\": null, \"doc\": null, \"names\": [], \"renderers\": [], \"tags\": []}}, {\"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"type\": \"WheelZoomTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"eec9acff-cc17-4178-9ffd-b898c24dfe9d\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"type\": \"BasicTickFormatter\", \"attributes\": {\"doc\": null, \"id\": \"04ff2eec-b311-4ced-8ea1-13dba8f13b84\", \"tags\": []}}, {\"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"]}, \"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"]}, \"id\": \"71cd8258-0134-4601-89c7-1b741b79bebf\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"type\": \"BoxZoomTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"d96328c3-7c48-425b-abc3-854d811bf3ce\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"3263967a-4c01-417f-a978-dd2799424085\", \"glyph\": {\"id\": \"5fcf8b04-297a-4e27-9f61-520ec6595651\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"2dc20f1a-e1ce-42f9-9747-1f9af7185a3c\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"type\": \"Triangle\"}, \"tags\": []}}, {\"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"type\": \"PanTool\", \"attributes\": {\"dimensions\": [\"width\", \"height\"], \"id\": \"20ac32c0-aa66-4fa4-b5bf-21473822fc5d\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\", \"attributes\": {\"mantissas\": [2, 5, 10], \"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"doc\": null, \"tags\": [], \"num_minor_ticks\": 5}}, {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"type\": \"LinearAxis\", \"attributes\": {\"id\": \"9741a0c4-6e5e-41af-826b-7a96def74335\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"4a0a4ad3-efce-42a7-ba89-9e80a142baf3\", \"type\": \"BasicTicker\"}, \"formatter\": {\"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"type\": \"BasicTickFormatter\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"type\": \"GlyphRenderer\", \"attributes\": {\"id\": \"8aed04a8-d47a-4815-8a7d-41eacebb512f\", \"glyph\": {\"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"type\": \"ColumnDataSource\"}, \"doc\": null, \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"type\": \"Circle\"}, \"tags\": []}}, {\"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"type\": \"Circle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"1c6a06ef-3313-4793-b64e-291b336dc36d\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"type\": \"ColumnDataSource\", \"attributes\": {\"data\": {\"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"]}, \"id\": \"71654fe7-2c81-427d-8277-8a69de687393\", \"callback\": null, \"doc\": null, \"selected\": {\"1d\": {\"indices\": []}, \"0d\": {\"indices\": [], \"flag\": false}, \"2d\": {\"indices\": []}}, \"column_names\": [\"sepal_length\", \"sepal_width\", \"index\", \"petal_width\", \"petal_length\", \"species\"], \"tags\": []}}, {\"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"type\": \"HelpTool\", \"attributes\": {\"doc\": null, \"id\": \"5e80c40c-28d5-4358-a86f-90689df6e63b\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"tags\": []}}, {\"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"type\": \"Circle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 1.0}, \"id\": \"28602187-f712-4290-bee0-a9a0f79c2f97\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 1.0}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}, {\"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"type\": \"Grid\", \"attributes\": {\"dimension\": 0, \"id\": \"f204e66d-d28b-49cb-be29-022765860e77\", \"plot\": {\"id\": \"c75e07c3-63be-4b61-957a-7f76270774e6\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"ticker\": {\"id\": \"352091ec-b7fd-4c10-a1cc-748880044fee\", \"type\": \"BasicTicker\"}, \"doc\": null, \"tags\": []}}, {\"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"type\": \"BasicTickFormatter\", \"attributes\": {\"doc\": null, \"id\": \"5c1e059f-08c8-41a3-9cad-3e9b3b62a3b3\", \"tags\": []}}, {\"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"type\": \"ToolEvents\", \"attributes\": {\"doc\": null, \"geometries\": [], \"id\": \"cc70f0f4-a3c4-45da-924f-ed3d244e0878\", \"tags\": []}}, {\"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"type\": \"Triangle\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"line_alpha\": {\"value\": 0.1}, \"id\": \"9c7b6806-168d-4049-81c5-f718dd27db3f\", \"size\": {\"units\": \"screen\", \"value\": 20}, \"fill_alpha\": {\"value\": 0.1}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"doc\": null, \"x\": {\"field\": \"sepal_length\"}, \"y\": {\"field\": \"petal_width\"}, \"tags\": []}}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'elementid': '9cc0a473-7aae-4ea0-bfd3-c4edc60f51d1', 'modeltype': 'Plot', 'modelid': '67f8410d-f19e-415c-8b8d-7e3595f8b54f'}];\n",
    " var plots = [{'modelid': 'c75e07c3-63be-4b61-957a-7f76270774e6', 'modeltype': 'Plot', 'elementid': '9997bd95-ad56-4905-8ec6-dee0738ac7d9'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -341,7 +342,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"9cc0a473-7aae-4ea0-bfd3-c4edc60f51d1\"></div>"
    "<div class=\"plotdiv\" id=\"9997bd95-ad56-4905-8ec6-dee0738ac7d9\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -366,15 +367,15 @@
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"a9425577-9910-4ed6-8b20-8ddcfba9670d\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - a9425577-9910-4ed6-8b20-8ddcfba9670d</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"8aed04a8-d47a-4815-8a7d-41eacebb512f\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 8aed04a8-d47a-4815-8a7d-41eacebb512f</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"97f1ae3e-d79c-468a-86be-e47eebfe0177\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 97f1ae3e-d79c-468a-86be-e47eebfe0177</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"c135b37a-236a-4176-8671-3955de96b332\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - c135b37a-236a-4176-8671-3955de96b332</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"e23c2277-24a0-45e3-bfd7-a365bfc2f387\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - e23c2277-24a0-45e3-bfd7-a365bfc2f387</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"3263967a-4c01-417f-a978-dd2799424085\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 3263967a-4c01-417f-a978-dd2799424085</button>\n",
    " \n",
    " \n",
    " </div>\n",
    @@ -410,11 +411,12 @@
    " cm.setValue(yaml.dump(renderer.get('glyph').attributes));\n",
    " return cm.on('change', function(doc) {\n",
    " var glyph;\n",
    " glyph = d3.select('button.active[data-type=GlyphRenderer]').datum().get('glyph');\n",
    " renderer = d3.select('button.active[data-type=GlyphRenderer]').datum();\n",
    " glyph = renderer.get('glyph');\n",
    " d3.entries(yaml.load(doc.getValue())).forEach(function(d) {\n",
    " return glyph.set(d.key, d.value);\n",
    " });\n",
    " return d3.select('.last-active').datum().get('data_source').trigger('change');\n",
    " return renderer.get('data_source').trigger('change');\n",
    " });\n",
    " });\n",
    " });\n",
  6. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 235 additions and 12 deletions.
    247 changes: 235 additions & 12 deletions bokeh-inspector.ipynb
    235 additions, 12 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
  7. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 26 additions and 248 deletions.
    274 changes: 26 additions & 248 deletions bokeh-inspector.ipynb
    26 additions, 248 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
  8. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 25 additions and 18 deletions.
    43 changes: 25 additions & 18 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -239,7 +239,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 6,
    "execution_count": 15,
    "metadata": {
    "collapsed": false
    },
    @@ -251,9 +251,8 @@
    " getattr( p, ['circle','square','triangle'][i] )( source = source, size=20,x='sepal_length',y='petal_width');\n",
    "\n",
    "def inspect( p ):\n",
    " styles = IPython.display.HTML(\"\"\"\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/blackboard.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />\"\"\")\n",
    " styles = IPython.display.HTML(\"\"\"<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/mdn-like.min.css\" />\"\"\")\n",
    " \n",
    " t = bokeh.models.TapTool( renderers = [renderer for renderer in p.renderers if renderer.ref['type'] in ['GlyphRenderer']] )\n",
    " t.callback = bokeh.models.CustomJS( code=coffee.compile(\"\"\"# Click a button \"\"\", bare = True))\n",
    @@ -267,7 +266,7 @@
    " {% endif %}\n",
    " {% endfor %}\n",
    " </div>\n",
    " <div class=\"row\" id=\"editor\"></div>\n",
    " <div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " \"\"\").render( refs = [r.ref for r in p.renderers], enumerate = enumerate, **locals()))\n",
    "\n",
    " edit = IPython.display.Javascript( coffee.compile(\"\"\"\n",
    @@ -277,7 +276,7 @@
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'\n",
    " ], (yaml, d3, CM)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CM editor.node(), {height: \"400px\", width: \"100%\", theme: 'blackboard'}\n",
    " cm = new CM editor.node(), {height: \"400px\", width: \"100%\", theme: 'mdn-like'}\n",
    "\n",
    " buttons = d3.selectAll \"button[data-type=GlyphRenderer]\"\n",
    " .datum ()-> \n",
    @@ -300,17 +299,16 @@
    },
    {
    "cell_type": "code",
    "execution_count": 7,
    "execution_count": 16,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "data": {
    "text/html": [
    "\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/blackboard.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />"
    "<link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/mdn-like.min.css\" />"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -324,9 +322,9 @@
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"attributes\": {\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"WheelZoomTool\"}, {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"attributes\": {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"BoxZoomTool\"}, {\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"attributes\": {\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"formatter\": {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"attributes\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"attributes\": {\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PanTool\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"attributes\": {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"type\": \"Triangle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"attributes\": {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Triangle\"}, {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"attributes\": {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"attributes\": {\"callback\": null, \"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"data\": {\"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"attributes\": {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"ticker\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"type\": \"BasicTicker\"}, \"dimension\": 0, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"attributes\": {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"formatter\": {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"attributes\": {\"callback\": {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"type\": \"CustomJS\"}, \"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"names\": [], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"renderers\": [{\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"type\": \"GlyphRenderer\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"type\": \"GlyphRenderer\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"type\": \"GlyphRenderer\"}]}, \"type\": \"TapTool\"}, {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"attributes\": {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"ticker\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"type\": \"BasicTicker\"}, \"dimension\": 1, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"attributes\": {\"callback\": null, \"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"attributes\": {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PreviewSaveTool\"}, {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"attributes\": {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResetTool\"}, {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"attributes\": {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Square\"}, {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"attributes\": {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"type\": \"Circle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"attributes\": {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"HelpTool\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"attributes\": {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"type\": \"Square\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"attributes\": {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Square\"}, {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"attributes\": {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"tags\": [], \"args\": {}, \"doc\": null, \"code\": \"// Generated by CoffeeScript 1.10.0\\n\"}, \"type\": \"CustomJS\"}, {\"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"attributes\": {\"callback\": null, \"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"data\": {\"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"attributes\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"attributes\": {\"callback\": null, \"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"attributes\": {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Circle\"}, {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"attributes\": {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Triangle\"}, {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"attributes\": {\"above\": [], \"x_range\": {\"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"type\": \"DataRange1d\"}, \"y_range\": {\"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"type\": \"DataRange1d\"}, \"below\": [{\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"type\": \"LinearAxis\"}], \"right\": [], \"extra_x_ranges\": {}, \"left\": [{\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"type\": \"LinearAxis\"}], \"renderers\": [{\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"type\": \"LinearAxis\"}, {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"type\": \"Grid\"}, {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"type\": \"LinearAxis\"}, {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"type\": \"Grid\"}, {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"type\": \"GlyphRenderer\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"type\": \"GlyphRenderer\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"type\": \"GlyphRenderer\"}], \"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"tool_events\": {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"type\": \"ToolEvents\"}, \"extra_y_ranges\": {}, \"tags\": [], \"tools\": [{\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"type\": \"PanTool\"}, {\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"type\": \"WheelZoomTool\"}, {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"type\": \"BoxZoomTool\"}, {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"type\": \"ResizeTool\"}, {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"type\": \"ResetTool\"}, {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"type\": \"HelpTool\"}, {\"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"type\": \"TapTool\"}], \"doc\": null}, \"type\": \"Plot\", \"subtype\": \"Figure\"}, {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"attributes\": {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Circle\"}, {\"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"attributes\": {\"callback\": null, \"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"data\": {\"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"attributes\": {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"attributes\": {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResizeTool\"}, {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"attributes\": {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"geometries\": [], \"tags\": [], \"doc\": null}, \"type\": \"ToolEvents\"}];\n",
    " var all_models = [{\"id\": \"d2222275-c2e6-4e34-b643-79dc9fc87c64\", \"attributes\": {\"callback\": null, \"id\": \"d2222275-c2e6-4e34-b643-79dc9fc87c64\", \"data\": {\"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"fa7d177f-c588-44a4-bee7-1c3f555563eb\", \"attributes\": {\"id\": \"fa7d177f-c588-44a4-bee7-1c3f555563eb\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"HelpTool\"}, {\"id\": \"7af0428f-d94b-42f3-81b9-6895d05b96f8\", \"attributes\": {\"id\": \"7af0428f-d94b-42f3-81b9-6895d05b96f8\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PanTool\"}, {\"id\": \"f3b38080-297a-4cf4-814a-54672b8381ac\", \"attributes\": {\"id\": \"f3b38080-297a-4cf4-814a-54672b8381ac\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"2528d15a-376a-48a3-b314-aaf51a36d85b\", \"attributes\": {\"callback\": null, \"id\": \"2528d15a-376a-48a3-b314-aaf51a36d85b\", \"data\": {\"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"attributes\": {\"above\": [], \"x_range\": {\"id\": \"e33ad181-91e2-41f8-9b2f-7d3cd6f75a4b\", \"type\": \"DataRange1d\"}, \"y_range\": {\"id\": \"ac2151d2-b649-4370-828d-9534ec9333e3\", \"type\": \"DataRange1d\"}, \"below\": [{\"id\": \"d60cf05f-acc4-4621-a94f-fcfc7fd98f9b\", \"type\": \"LinearAxis\"}], \"right\": [], \"extra_x_ranges\": {}, \"left\": [{\"id\": \"61f87d1a-8da2-424e-9cec-87bfe209af3e\", \"type\": \"LinearAxis\"}], \"renderers\": [{\"id\": \"d60cf05f-acc4-4621-a94f-fcfc7fd98f9b\", \"type\": \"LinearAxis\"}, {\"id\": \"762a1be0-88d0-4ddb-a31f-4be825fe9e76\", \"type\": \"Grid\"}, {\"id\": \"61f87d1a-8da2-424e-9cec-87bfe209af3e\", \"type\": \"LinearAxis\"}, {\"id\": \"f2605c6b-dac1-401c-967f-a4fe53be175c\", \"type\": \"Grid\"}, {\"id\": \"97d6b61c-b7f0-4e02-b49f-0a505c59e6ad\", \"type\": \"GlyphRenderer\"}, {\"id\": \"c4b1c949-d33a-4de7-b56f-947fd2462734\", \"type\": \"GlyphRenderer\"}, {\"id\": \"be4a66e2-c4b0-4264-a876-047b15a9a694\", \"type\": \"GlyphRenderer\"}], \"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"tool_events\": {\"id\": \"6730c714-7c6f-46b7-b601-3c3e9b2c0192\", \"type\": \"ToolEvents\"}, \"extra_y_ranges\": {}, \"tags\": [], \"tools\": [{\"id\": \"7af0428f-d94b-42f3-81b9-6895d05b96f8\", \"type\": \"PanTool\"}, {\"id\": \"fa57fb20-47cd-4a41-8a76-0d1eb44dc09d\", \"type\": \"WheelZoomTool\"}, {\"id\": \"989e5e15-e092-471d-ab11-f9693df649fa\", \"type\": \"BoxZoomTool\"}, {\"id\": \"41ae9eb5-cdd5-4ca8-8cc5-7f9f6a93650e\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"12c87996-f052-4457-b5e2-923537b6dad2\", \"type\": \"ResizeTool\"}, {\"id\": \"ccf7c822-9629-4094-ac7a-46cbf5f17426\", \"type\": \"ResetTool\"}, {\"id\": \"fa7d177f-c588-44a4-bee7-1c3f555563eb\", \"type\": \"HelpTool\"}, {\"id\": \"ffa419d5-111d-42ab-a79a-ee18f446b852\", \"type\": \"TapTool\"}], \"doc\": null}, \"type\": \"Plot\", \"subtype\": \"Figure\"}, {\"id\": \"6730c714-7c6f-46b7-b601-3c3e9b2c0192\", \"attributes\": {\"id\": \"6730c714-7c6f-46b7-b601-3c3e9b2c0192\", \"geometries\": [], \"tags\": [], \"doc\": null}, \"type\": \"ToolEvents\"}, {\"id\": \"77bec9e4-1a8c-4797-ad4b-4baa04c334ec\", \"attributes\": {\"id\": \"77bec9e4-1a8c-4797-ad4b-4baa04c334ec\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Triangle\"}, {\"id\": \"35e67f1d-8023-4164-a2c9-08ad44c54342\", \"attributes\": {\"id\": \"35e67f1d-8023-4164-a2c9-08ad44c54342\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"1abc8399-75d0-46e8-84ff-30b564200beb\", \"attributes\": {\"id\": \"1abc8399-75d0-46e8-84ff-30b564200beb\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Circle\"}, {\"id\": \"762a1be0-88d0-4ddb-a31f-4be825fe9e76\", \"attributes\": {\"id\": \"762a1be0-88d0-4ddb-a31f-4be825fe9e76\", \"ticker\": {\"id\": \"f3b38080-297a-4cf4-814a-54672b8381ac\", \"type\": \"BasicTicker\"}, \"dimension\": 0, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"989e5e15-e092-471d-ab11-f9693df649fa\", \"attributes\": {\"id\": \"989e5e15-e092-471d-ab11-f9693df649fa\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"BoxZoomTool\"}, {\"id\": \"c4b1c949-d33a-4de7-b56f-947fd2462734\", \"attributes\": {\"id\": \"c4b1c949-d33a-4de7-b56f-947fd2462734\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"dfcc4824-54fe-4000-9a1b-c4099e6e34e0\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"2528d15a-376a-48a3-b314-aaf51a36d85b\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"e5d8432c-18c0-44fc-9111-67e94be70931\", \"type\": \"Square\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"e869bcae-bfa4-4855-abc3-7798f682e76c\", \"attributes\": {\"id\": \"e869bcae-bfa4-4855-abc3-7798f682e76c\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Circle\"}, {\"id\": \"e0f60a42-9c51-4737-bd55-d2760656d98e\", \"attributes\": {\"id\": \"e0f60a42-9c51-4737-bd55-d2760656d98e\", \"tags\": [], \"args\": {}, \"doc\": null, \"code\": \"// Generated by CoffeeScript 1.10.0\\n\"}, \"type\": \"CustomJS\"}, {\"id\": \"e33ad181-91e2-41f8-9b2f-7d3cd6f75a4b\", \"attributes\": {\"callback\": null, \"id\": \"e33ad181-91e2-41f8-9b2f-7d3cd6f75a4b\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"be4a66e2-c4b0-4264-a876-047b15a9a694\", \"attributes\": {\"id\": \"be4a66e2-c4b0-4264-a876-047b15a9a694\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"77bec9e4-1a8c-4797-ad4b-4baa04c334ec\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"d2222275-c2e6-4e34-b643-79dc9fc87c64\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"d3f43ff0-98d9-45fa-bc42-38e9ebe04a60\", \"type\": \"Triangle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"d60cf05f-acc4-4621-a94f-fcfc7fd98f9b\", \"attributes\": {\"id\": \"d60cf05f-acc4-4621-a94f-fcfc7fd98f9b\", \"formatter\": {\"id\": \"35e67f1d-8023-4164-a2c9-08ad44c54342\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"f3b38080-297a-4cf4-814a-54672b8381ac\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"7cb6bd57-e2b1-48c5-8fbd-9c17d7f27b13\", \"attributes\": {\"id\": \"7cb6bd57-e2b1-48c5-8fbd-9c17d7f27b13\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"dfcc4824-54fe-4000-9a1b-c4099e6e34e0\", \"attributes\": {\"id\": \"dfcc4824-54fe-4000-9a1b-c4099e6e34e0\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Square\"}, {\"id\": \"251a51d6-3d45-41e0-a75f-275869b89534\", \"attributes\": {\"id\": \"251a51d6-3d45-41e0-a75f-275869b89534\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"61f87d1a-8da2-424e-9cec-87bfe209af3e\", \"attributes\": {\"id\": \"61f87d1a-8da2-424e-9cec-87bfe209af3e\", \"formatter\": {\"id\": \"7cb6bd57-e2b1-48c5-8fbd-9c17d7f27b13\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"251a51d6-3d45-41e0-a75f-275869b89534\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"12c87996-f052-4457-b5e2-923537b6dad2\", \"attributes\": {\"id\": \"12c87996-f052-4457-b5e2-923537b6dad2\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResizeTool\"}, {\"id\": \"44de79c0-1564-49e4-87b3-4681ece0d517\", \"attributes\": {\"callback\": null, \"id\": \"44de79c0-1564-49e4-87b3-4681ece0d517\", \"data\": {\"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"ffa419d5-111d-42ab-a79a-ee18f446b852\", \"attributes\": {\"callback\": {\"id\": \"e0f60a42-9c51-4737-bd55-d2760656d98e\", \"type\": \"CustomJS\"}, \"id\": \"ffa419d5-111d-42ab-a79a-ee18f446b852\", \"names\": [], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"renderers\": [{\"id\": \"97d6b61c-b7f0-4e02-b49f-0a505c59e6ad\", \"type\": \"GlyphRenderer\"}, {\"id\": \"c4b1c949-d33a-4de7-b56f-947fd2462734\", \"type\": \"GlyphRenderer\"}, {\"id\": \"be4a66e2-c4b0-4264-a876-047b15a9a694\", \"type\": \"GlyphRenderer\"}]}, \"type\": \"TapTool\"}, {\"id\": \"ac2151d2-b649-4370-828d-9534ec9333e3\", \"attributes\": {\"callback\": null, \"id\": \"ac2151d2-b649-4370-828d-9534ec9333e3\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"41ae9eb5-cdd5-4ca8-8cc5-7f9f6a93650e\", \"attributes\": {\"id\": \"41ae9eb5-cdd5-4ca8-8cc5-7f9f6a93650e\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PreviewSaveTool\"}, {\"id\": \"97d6b61c-b7f0-4e02-b49f-0a505c59e6ad\", \"attributes\": {\"id\": \"97d6b61c-b7f0-4e02-b49f-0a505c59e6ad\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"e869bcae-bfa4-4855-abc3-7798f682e76c\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"44de79c0-1564-49e4-87b3-4681ece0d517\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"1abc8399-75d0-46e8-84ff-30b564200beb\", \"type\": \"Circle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"f2605c6b-dac1-401c-967f-a4fe53be175c\", \"attributes\": {\"id\": \"f2605c6b-dac1-401c-967f-a4fe53be175c\", \"ticker\": {\"id\": \"251a51d6-3d45-41e0-a75f-275869b89534\", \"type\": \"BasicTicker\"}, \"dimension\": 1, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"ccf7c822-9629-4094-ac7a-46cbf5f17426\", \"attributes\": {\"id\": \"ccf7c822-9629-4094-ac7a-46cbf5f17426\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResetTool\"}, {\"id\": \"e5d8432c-18c0-44fc-9111-67e94be70931\", \"attributes\": {\"id\": \"e5d8432c-18c0-44fc-9111-67e94be70931\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Square\"}, {\"id\": \"d3f43ff0-98d9-45fa-bc42-38e9ebe04a60\", \"attributes\": {\"id\": \"d3f43ff0-98d9-45fa-bc42-38e9ebe04a60\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Triangle\"}, {\"id\": \"fa57fb20-47cd-4a41-8a76-0d1eb44dc09d\", \"attributes\": {\"id\": \"fa57fb20-47cd-4a41-8a76-0d1eb44dc09d\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"f0e3d66e-59d8-42e6-a927-73ca85c50f0c\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"WheelZoomTool\"}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'elementid': '88cb7fa2-4927-4624-a052-6483eedcad55', 'modeltype': 'Plot', 'modelid': '32604c0a-b253-4d25-8e1c-ec47d660cdaf'}];\n",
    " var plots = [{'elementid': '45e00bf4-23c9-4ed4-8cad-4add48970843', 'modeltype': 'Plot', 'modelid': 'f0e3d66e-59d8-42e6-a927-73ca85c50f0c'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -342,7 +340,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"88cb7fa2-4927-4624-a052-6483eedcad55\"></div>"
    "<div class=\"plotdiv\" id=\"45e00bf4-23c9-4ed4-8cad-4add48970843\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -366,19 +364,19 @@
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"97d6b61c-b7f0-4e02-b49f-0a505c59e6ad\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 97d6b61c-b7f0-4e02-b49f-0a505c59e6ad</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"303f7544-15d4-42f0-89c4-f01d93102dc1\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 303f7544-15d4-42f0-89c4-f01d93102dc1</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"c4b1c949-d33a-4de7-b56f-947fd2462734\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - c4b1c949-d33a-4de7-b56f-947fd2462734</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"b526ca82-7abf-4215-a666-5a4650e1c29c\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - b526ca82-7abf-4215-a666-5a4650e1c29c</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"be4a66e2-c4b0-4264-a876-047b15a9a694\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - be4a66e2-c4b0-4264-a876-047b15a9a694</button>\n",
    " \n",
    " \n",
    " </div>\n",
    " <div class=\"row\" id=\"editor\"></div>\n",
    " <div id=\"editor\" style=\"margin:20px;display:block;\"></div>\n",
    " "
    ],
    "text/plain": [
    @@ -399,7 +397,7 @@
    " cm = new CM(editor.node(), {\n",
    " height: \"400px\",\n",
    " width: \"100%\",\n",
    " theme: 'blackboard'\n",
    " theme: 'mdn-like'\n",
    " });\n",
    " buttons = d3.selectAll(\"button[data-type=GlyphRenderer]\").datum(function() {\n",
    " return Bokeh.Collections(this.dataset.type).get(this.dataset.id);\n",
    @@ -433,6 +431,15 @@
    "source": [
    "inspect(p)"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {
    "collapsed": true
    },
    "outputs": [],
    "source": []
    }
    ],
    "metadata": {
  9. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 39 additions and 97 deletions.
    136 changes: 39 additions & 97 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -2,68 +2,7 @@
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 413,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "name": "stdout",
    "output_type": "stream",
    "text": [
    "Fetching package metadata: ....\n",
    "Solving package specifications: ................................\n",
    "Package plan for installation in environment /Users/tfast/anaconda:\n",
    "\n",
    "The following packages will be downloaded:\n",
    "\n",
    " package | build\n",
    " ---------------------------|-----------------\n",
    " mkl-11.3.1 | 0 99.1 MB\n",
    " numpy-1.10.4 | py34_0 2.6 MB\n",
    " setuptools-19.6.2 | py34_0 370 KB\n",
    " conda-3.19.1 | py34_0 181 KB\n",
    " pip-8.0.2 | py34_0 1.6 MB\n",
    " bokeh-0.11.1 | py34_0 3.2 MB\n",
    " ------------------------------------------------------------\n",
    " Total: 107.0 MB\n",
    "\n",
    "The following NEW packages will be INSTALLED:\n",
    "\n",
    " mkl: 11.3.1-0 \n",
    "\n",
    "The following packages will be UPDATED:\n",
    "\n",
    " bokeh: 0.10.0-py34_0 --> 0.11.1-py34_0\n",
    " conda: 3.19.0-py34_0 --> 3.19.1-py34_0\n",
    " numpy: 1.10.1-py34_0 --> 1.10.4-py34_0\n",
    " openssl: 1.0.2e-0 --> 1.0.2f-0 \n",
    " pip: 8.0.1-py34_0 --> 8.0.2-py34_0 \n",
    " setuptools: 19.4-py34_0 --> 19.6.2-py34_0\n",
    "\n",
    "Fetching packages ...\n",
    "mkl-11.3.1-0.t 100% |################################| Time: 0:00:38 2.69 MB/s\n",
    "numpy-1.10.4-p 100% |################################| Time: 0:00:04 595.08 kB/s\n",
    "setuptools-19. 100% |################################| Time: 0:00:01 285.16 kB/s\n",
    "conda-3.19.1-p 100% |################################| Time: 0:00:01 176.66 kB/s\n",
    "pip-8.0.2-py34 100% |################################| Time: 0:00:01 1.48 MB/s\n",
    "bokeh-0.11.1-p 100% |################################| Time: 0:00:03 1.10 MB/s\n",
    "Extracting packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n",
    "Unlinking packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n",
    "Linking packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n"
    ]
    }
    ],
    "source": [
    "!conda install bokeh=0.11 -y"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 414,
    "execution_count": 2,
    "metadata": {
    "collapsed": false
    },
    @@ -300,9 +239,9 @@
    },
    {
    "cell_type": "code",
    "execution_count": 415,
    "execution_count": 6,
    "metadata": {
    "collapsed": true
    "collapsed": false
    },
    "outputs": [],
    "source": [
    @@ -312,13 +251,10 @@
    " getattr( p, ['circle','square','triangle'][i] )( source = source, size=20,x='sepal_length',y='petal_width');\n",
    "\n",
    "def inspect( p ):\n",
    " about = IPython.display.Markdown(\"\"\"\n",
    " ## Select a Glyph ID below\n",
    "\n",
    " A CodeMirror edit will open that provides YAML-ified syntax of the chosen glyph. Only valid changes to the\n",
    " glyph with be accepted bcause Bokeh has awesome type checking.\n",
    "\n",
    " \"\"\")\n",
    " styles = IPython.display.HTML(\"\"\"\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/blackboard.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />\"\"\")\n",
    " \n",
    " t = bokeh.models.TapTool( renderers = [renderer for renderer in p.renderers if renderer.ref['type'] in ['GlyphRenderer']] )\n",
    " t.callback = bokeh.models.CustomJS( code=coffee.compile(\"\"\"# Click a button \"\"\", bare = True))\n",
    " p.add_tools( t )\n",
    @@ -341,43 +277,56 @@
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'\n",
    " ], (yaml, d3, CM)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CM editor.node(),\n",
    " height: \"400px\"\n",
    " width: \"100%\"\n",
    " cm = new CM editor.node(), {height: \"400px\", width: \"100%\", theme: 'blackboard'}\n",
    "\n",
    " buttons = d3.selectAll \"button[data-type=GlyphRenderer]\"\n",
    " .datum ()-> Bokeh.Collections(@dataset.type).get @dataset.id\n",
    " .datum ()-> \n",
    " Bokeh.Collections(@dataset.type).get @dataset.id\n",
    "\n",
    " buttons.on 'click', (renderer)->\n",
    " buttons.classed 'active', false\n",
    " debugger\n",
    " d3.select(@).classed 'active', true\n",
    "\n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    " cm.on 'change', (doc)->\n",
    " glyph = d3.select('button.active[data-type=\"GlyphRenderer\"]').datum().get('glyph')\n",
    " glyph = d3.select('button.active[data-type=GlyphRenderer]').datum().get('glyph')\n",
    " d3.entries yaml.load doc.getValue()\n",
    " .forEach (d)->\n",
    " glyph.set d.key, d.value\n",
    " .forEach (d)-> glyph.set d.key, d.value\n",
    " d3.select('.last-active').datum().get('data_source').trigger 'change'\n",
    " \"\"\"))\n",
    " return IPython.display.display( IPython.display.HTML( '\\n'.join(bokeh.embed.components( p ))), buttons, edit )"
    " return IPython.display.display( styles, IPython.display.HTML( '\\n'.join(bokeh.embed.components( p ))), buttons, edit )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 416,
    "execution_count": 7,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "data": {
    "text/html": [
    "\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/theme/blackboard.min.css\" />\n",
    " <link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\" />"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    },
    {
    "data": {
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\", \"attributes\": {\"id\": \"da92371f-69b1-4401-b619-df05623fe95e\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\"}}}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\", \"attributes\": {\"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\", \"nonselection_glyph\": {\"type\": \"Square\", \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\"}, \"glyph\": {\"type\": \"Square\", \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\"}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\", \"attributes\": {\"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\"}}}, {\"type\": \"BasicTickFormatter\", \"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\", \"attributes\": {\"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\", \"tags\": [], \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\", \"attributes\": {\"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\"}, {\"type\": \"WheelZoomTool\", \"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\"}, {\"type\": \"BoxZoomTool\", \"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\"}, {\"type\": \"ResizeTool\", \"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\"}, {\"type\": \"ResetTool\", \"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\"}, {\"type\": \"HelpTool\", \"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\"}, {\"type\": \"TapTool\", \"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\"}], \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\"}, {\"type\": \"Grid\", \"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\"}, {\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\"}, {\"type\": \"Grid\", \"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\"}, {\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\"}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\"}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\"}]}}, {\"type\": \"Triangle\", \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"WheelZoomTool\", \"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\", \"attributes\": {\"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ResizeTool\", \"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\", \"attributes\": {\"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"ResetTool\", \"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\", \"attributes\": {\"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\", \"attributes\": {\"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\"}}}, {\"type\": \"Square\", \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"PreviewSaveTool\", \"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\", \"attributes\": {\"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\", \"attributes\": {\"callback\": null, \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"TapTool\", \"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\", \"attributes\": {\"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\", \"callback\": {\"type\": \"CustomJS\", \"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\"}, \"names\": [], \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"renderers\": [{\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\"}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\"}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\"}]}}, {\"type\": \"BasicTickFormatter\", \"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\", \"attributes\": {\"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\", \"tags\": [], \"doc\": null}}, {\"type\": \"CustomJS\", \"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\", \"attributes\": {\"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\", \"code\": \"// Generated by CoffeeScript 1.10.0\\n\", \"args\": {}, \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\", \"attributes\": {\"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\", \"attributes\": {\"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\", \"attributes\": {\"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"HelpTool\", \"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\", \"attributes\": {\"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\", \"attributes\": {\"callback\": null, \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\", \"data\": {\"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\", \"attributes\": {\"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\", \"attributes\": {\"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\", \"nonselection_glyph\": {\"type\": \"Triangle\", \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\"}, \"glyph\": {\"type\": \"Triangle\", \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\"}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\", \"attributes\": {\"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\"}}}, {\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\", \"attributes\": {\"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\"}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\", \"attributes\": {\"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\", \"attributes\": {\"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\", \"attributes\": {\"callback\": null, \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\", \"data\": {\"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}];\n",
    " var all_models = [{\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"attributes\": {\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"WheelZoomTool\"}, {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"attributes\": {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"BoxZoomTool\"}, {\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"attributes\": {\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"formatter\": {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"attributes\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"attributes\": {\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PanTool\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"attributes\": {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"type\": \"Triangle\"}, \"data_source\": {\"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"type\": \"Triangle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"attributes\": {\"id\": \"2db627cb-7ffb-402f-961c-0e110dc4e732\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Triangle\"}, {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"attributes\": {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"attributes\": {\"callback\": null, \"id\": \"63a0cf30-d768-4542-990a-a73ad9856c7c\", \"data\": {\"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"attributes\": {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"ticker\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"type\": \"BasicTicker\"}, \"dimension\": 0, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"attributes\": {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"formatter\": {\"id\": \"77a93bfe-f306-445b-b3d6-3daaecffec0c\", \"type\": \"BasicTickFormatter\"}, \"ticker\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"type\": \"BasicTicker\"}, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"LinearAxis\"}, {\"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"attributes\": {\"callback\": {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"type\": \"CustomJS\"}, \"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"names\": [], \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}, \"renderers\": [{\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"type\": \"GlyphRenderer\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"type\": \"GlyphRenderer\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"type\": \"GlyphRenderer\"}]}, \"type\": \"TapTool\"}, {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"attributes\": {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"ticker\": {\"id\": \"1dc3dc24-f9ed-4e27-be2d-48f00c15e28c\", \"type\": \"BasicTicker\"}, \"dimension\": 1, \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"Grid\"}, {\"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"attributes\": {\"callback\": null, \"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"attributes\": {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"PreviewSaveTool\"}, {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"attributes\": {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResetTool\"}, {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"attributes\": {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Square\"}, {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"attributes\": {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"type\": \"Circle\"}, \"data_source\": {\"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"type\": \"Circle\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"attributes\": {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"HelpTool\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"attributes\": {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"selection_glyph\": null, \"nonselection_glyph\": {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"type\": \"Square\"}, \"data_source\": {\"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"type\": \"ColumnDataSource\"}, \"tags\": [], \"doc\": null, \"glyph\": {\"id\": \"24d1f65c-0d38-455c-9474-82289f0b042c\", \"type\": \"Square\"}}, \"type\": \"GlyphRenderer\"}, {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"attributes\": {\"id\": \"eaa85dab-0538-4d4d-b265-716d3148febd\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Square\"}, {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"attributes\": {\"id\": \"c3680e77-0bc6-40bd-a41b-d886a70143f1\", \"tags\": [], \"args\": {}, \"doc\": null, \"code\": \"// Generated by CoffeeScript 1.10.0\\n\"}, \"type\": \"CustomJS\"}, {\"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"attributes\": {\"callback\": null, \"id\": \"8a10940d-7134-4ea2-b541-71b4de402d13\", \"data\": {\"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"attributes\": {\"id\": \"396da9b9-71df-4cd6-9617-75c366d87bb4\", \"doc\": null, \"num_minor_ticks\": 5, \"tags\": [], \"mantissas\": [2, 5, 10]}, \"type\": \"BasicTicker\"}, {\"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"attributes\": {\"callback\": null, \"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"names\": [], \"tags\": [], \"doc\": null, \"renderers\": []}, \"type\": \"DataRange1d\"}, {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"attributes\": {\"id\": \"b91b1c32-f1fb-4abb-9b07-a1619067949b\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 1.0}}, \"type\": \"Circle\"}, {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"attributes\": {\"id\": \"1b99c7de-6869-4311-85f7-52ad996d0728\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Triangle\"}, {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"attributes\": {\"above\": [], \"x_range\": {\"id\": \"d0c018d7-f621-428b-803b-880b58b0ee64\", \"type\": \"DataRange1d\"}, \"y_range\": {\"id\": \"2c5994df-5542-47ec-8991-f916c38c5f43\", \"type\": \"DataRange1d\"}, \"below\": [{\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"type\": \"LinearAxis\"}], \"right\": [], \"extra_x_ranges\": {}, \"left\": [{\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"type\": \"LinearAxis\"}], \"renderers\": [{\"id\": \"25714260-f644-41a2-9434-4b6c226c0d22\", \"type\": \"LinearAxis\"}, {\"id\": \"ca4a7fed-ae58-4c64-a1e8-432d3c72b92a\", \"type\": \"Grid\"}, {\"id\": \"ff2dc329-d8d9-472b-a588-06f644799f91\", \"type\": \"LinearAxis\"}, {\"id\": \"5ec41672-054c-4e68-856e-921b218db71d\", \"type\": \"Grid\"}, {\"id\": \"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\", \"type\": \"GlyphRenderer\"}, {\"id\": \"303f7544-15d4-42f0-89c4-f01d93102dc1\", \"type\": \"GlyphRenderer\"}, {\"id\": \"b526ca82-7abf-4215-a666-5a4650e1c29c\", \"type\": \"GlyphRenderer\"}], \"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"tool_events\": {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"type\": \"ToolEvents\"}, \"extra_y_ranges\": {}, \"tags\": [], \"tools\": [{\"id\": \"5f8aacdf-445e-4767-b8d9-3ec0e404d5d5\", \"type\": \"PanTool\"}, {\"id\": \"6089b593-bd48-4cc5-bdd2-7f352f7e0e08\", \"type\": \"WheelZoomTool\"}, {\"id\": \"2f90a5a5-c22d-4523-9835-c14018df3472\", \"type\": \"BoxZoomTool\"}, {\"id\": \"fd7335f5-c2e2-406e-993d-d286672a60d1\", \"type\": \"PreviewSaveTool\"}, {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"type\": \"ResizeTool\"}, {\"id\": \"e018f5ea-73be-49dc-a955-33b10de89987\", \"type\": \"ResetTool\"}, {\"id\": \"1eae6e5e-865d-4a45-8857-29f0f922c3ee\", \"type\": \"HelpTool\"}, {\"id\": \"882be10a-9730-4e10-af81-a03fc48aa710\", \"type\": \"TapTool\"}], \"doc\": null}, \"type\": \"Plot\", \"subtype\": \"Figure\"}, {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"attributes\": {\"id\": \"d54b8330-ec57-424a-8355-f9b473a54855\", \"x\": {\"field\": \"sepal_length\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null, \"y\": {\"field\": \"petal_width\"}, \"tags\": [], \"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"line_alpha\": {\"value\": 0.1}}, \"type\": \"Circle\"}, {\"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"attributes\": {\"callback\": null, \"id\": \"2054457c-822a-4b9d-82ad-73f0fc5f0a85\", \"data\": {\"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8]}, \"selected\": {\"0d\": {\"indices\": [], \"flag\": false}, \"1d\": {\"indices\": []}, \"2d\": {\"indices\": []}}, \"tags\": [], \"doc\": null, \"column_names\": [\"petal_length\", \"index\", \"species\", \"petal_width\", \"sepal_length\", \"sepal_width\"]}, \"type\": \"ColumnDataSource\"}, {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"attributes\": {\"id\": \"30c8d597-ae8d-4449-a877-d747764da5d1\", \"tags\": [], \"doc\": null}, \"type\": \"BasicTickFormatter\"}, {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"attributes\": {\"id\": \"743a0edb-1995-4e67-8e04-231af8c6de53\", \"tags\": [], \"doc\": null, \"plot\": {\"id\": \"32604c0a-b253-4d25-8e1c-ec47d660cdaf\", \"type\": \"Plot\", \"subtype\": \"Figure\"}}, \"type\": \"ResizeTool\"}, {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"attributes\": {\"id\": \"48c01c21-344c-4db7-acb5-d1f4bbcf2849\", \"geometries\": [], \"tags\": [], \"doc\": null}, \"type\": \"ToolEvents\"}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'modelid': 'b37e7427-0b7b-40cd-b40d-d771d948bb1d', 'elementid': 'e3ff8a16-4f03-4903-895f-c1f867b188b9', 'modeltype': 'Plot'}];\n",
    " var plots = [{'elementid': '88cb7fa2-4927-4624-a052-6483eedcad55', 'modeltype': 'Plot', 'modelid': '32604c0a-b253-4d25-8e1c-ec47d660cdaf'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -393,7 +342,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"e3ff8a16-4f03-4903-895f-c1f867b188b9\"></div>"
    "<div class=\"plotdiv\" id=\"88cb7fa2-4927-4624-a052-6483eedcad55\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -417,15 +366,15 @@
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"ebbf9110-c1ce-420e-874a-04b0bb4399d6\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - ebbf9110-c1ce-420e-874a-04b0bb4399d6</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - f2ba83f5-8a32-4cc6-a7ca-78aa3a2b8c40</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"c02be3f7-a39b-4857-85f5-7ee5247e838c\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - c02be3f7-a39b-4857-85f5-7ee5247e838c</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"303f7544-15d4-42f0-89c4-f01d93102dc1\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 303f7544-15d4-42f0-89c4-f01d93102dc1</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"b85e1c00-7f18-4d60-990d-0e330babb0a0\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - b85e1c00-7f18-4d60-990d-0e330babb0a0</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"b526ca82-7abf-4215-a666-5a4650e1c29c\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - b526ca82-7abf-4215-a666-5a4650e1c29c</button>\n",
    " \n",
    " \n",
    " </div>\n",
    @@ -449,18 +398,20 @@
    " editor = d3.select(\"#editor\");\n",
    " cm = new CM(editor.node(), {\n",
    " height: \"400px\",\n",
    " width: \"100%\"\n",
    " width: \"100%\",\n",
    " theme: 'blackboard'\n",
    " });\n",
    " buttons = d3.selectAll(\"button[data-type=GlyphRenderer]\").datum(function() {\n",
    " return Bokeh.Collections(this.dataset.type).get(this.dataset.id);\n",
    " });\n",
    " return buttons.on('click', function(renderer) {\n",
    " buttons.classed('active', false);\n",
    " debugger;\n",
    " d3.select(this).classed('active', true);\n",
    " cm.setValue(yaml.dump(renderer.get('glyph').attributes));\n",
    " return cm.on('change', function(doc) {\n",
    " var glyph;\n",
    " glyph = d3.select('button.active[data-type=\"GlyphRenderer\"]').datum().get('glyph');\n",
    " glyph = d3.select('button.active[data-type=GlyphRenderer]').datum().get('glyph');\n",
    " d3.entries(yaml.load(doc.getValue())).forEach(function(d) {\n",
    " return glyph.set(d.key, d.value);\n",
    " });\n",
    @@ -482,15 +433,6 @@
    "source": [
    "inspect(p)"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {
    "collapsed": true
    },
    "outputs": [],
    "source": []
    }
    ],
    "metadata": {
  10. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 72 additions and 11 deletions.
    83 changes: 72 additions & 11 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,68 @@
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 403,
    "execution_count": 413,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "name": "stdout",
    "output_type": "stream",
    "text": [
    "Fetching package metadata: ....\n",
    "Solving package specifications: ................................\n",
    "Package plan for installation in environment /Users/tfast/anaconda:\n",
    "\n",
    "The following packages will be downloaded:\n",
    "\n",
    " package | build\n",
    " ---------------------------|-----------------\n",
    " mkl-11.3.1 | 0 99.1 MB\n",
    " numpy-1.10.4 | py34_0 2.6 MB\n",
    " setuptools-19.6.2 | py34_0 370 KB\n",
    " conda-3.19.1 | py34_0 181 KB\n",
    " pip-8.0.2 | py34_0 1.6 MB\n",
    " bokeh-0.11.1 | py34_0 3.2 MB\n",
    " ------------------------------------------------------------\n",
    " Total: 107.0 MB\n",
    "\n",
    "The following NEW packages will be INSTALLED:\n",
    "\n",
    " mkl: 11.3.1-0 \n",
    "\n",
    "The following packages will be UPDATED:\n",
    "\n",
    " bokeh: 0.10.0-py34_0 --> 0.11.1-py34_0\n",
    " conda: 3.19.0-py34_0 --> 3.19.1-py34_0\n",
    " numpy: 1.10.1-py34_0 --> 1.10.4-py34_0\n",
    " openssl: 1.0.2e-0 --> 1.0.2f-0 \n",
    " pip: 8.0.1-py34_0 --> 8.0.2-py34_0 \n",
    " setuptools: 19.4-py34_0 --> 19.6.2-py34_0\n",
    "\n",
    "Fetching packages ...\n",
    "mkl-11.3.1-0.t 100% |################################| Time: 0:00:38 2.69 MB/s\n",
    "numpy-1.10.4-p 100% |################################| Time: 0:00:04 595.08 kB/s\n",
    "setuptools-19. 100% |################################| Time: 0:00:01 285.16 kB/s\n",
    "conda-3.19.1-p 100% |################################| Time: 0:00:01 176.66 kB/s\n",
    "pip-8.0.2-py34 100% |################################| Time: 0:00:01 1.48 MB/s\n",
    "bokeh-0.11.1-p 100% |################################| Time: 0:00:03 1.10 MB/s\n",
    "Extracting packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n",
    "Unlinking packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n",
    "Linking packages ...\n",
    "[ COMPLETE ]|###################################################| 100%\n"
    ]
    }
    ],
    "source": [
    "!conda install bokeh=0.11 -y"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 414,
    "metadata": {
    "collapsed": false
    },
    @@ -233,21 +294,21 @@
    "source": [
    "import bokeh, bokeh.plotting, jinja2, pandas, ipywidgets, IPython\n",
    "from coffeetools import coffee\n",
    "bokeh.plotting.output_notebook(resources=bokeh.resources.INLINE)\n",
    "bokeh.plotting.output_notebook()\n",
    "df = pandas.read_csv('iris.csv')"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 411,
    "execution_count": 415,
    "metadata": {
    "collapsed": true
    },
    "outputs": [],
    "source": [
    "p = bokeh.plotting.figure(); \n",
    "for i, species in enumerate(df.species.unique()):\n",
    " source = bokeh.models.ColumnDataSource( df[df.species == species] );\n",
    " source = bokeh.plotting.ColumnDataSource( df[df.species == species] );\n",
    " getattr( p, ['circle','square','triangle'][i] )( source = source, size=20,x='sepal_length',y='petal_width');\n",
    "\n",
    "def inspect( p ):\n",
    @@ -304,7 +365,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 412,
    "execution_count": 416,
    "metadata": {
    "collapsed": false
    },
    @@ -314,9 +375,9 @@
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"type\": \"ResizeTool\", \"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\", \"attributes\": {\"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\", \"attributes\": {\"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\"}}}, {\"type\": \"Circle\", \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\", \"attributes\": {\"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\", \"attributes\": {\"callback\": null, \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\", \"data\": {\"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\", \"attributes\": {\"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\"}}}, {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\", \"attributes\": {\"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"CustomJS\", \"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\", \"attributes\": {\"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\", \"code\": \"// Generated by CoffeeScript 1.10.0\\n\", \"args\": {}, \"tags\": [], \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\", \"attributes\": {\"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\", \"attributes\": {\"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\", \"attributes\": {\"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\", \"nonselection_glyph\": {\"type\": \"Square\", \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\"}, \"glyph\": {\"type\": \"Square\", \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\"}, \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"c873176e-2b01-489e-8739-819745242c12\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"c873176e-2b01-489e-8739-819745242c12\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\", \"attributes\": {\"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\", \"nonselection_glyph\": {\"type\": \"Triangle\", \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\"}, \"glyph\": {\"type\": \"Triangle\", \"id\": \"c873176e-2b01-489e-8739-819745242c12\"}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\", \"attributes\": {\"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\"}}}, {\"type\": \"ColumnDataSource\", \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\", \"attributes\": {\"callback\": null, \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\", \"attributes\": {\"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\", \"tags\": [], \"doc\": null}}, {\"type\": \"HelpTool\", \"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\", \"attributes\": {\"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\", \"attributes\": {\"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\", \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\", \"attributes\": {\"callback\": null, \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\", \"data\": {\"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"WheelZoomTool\", \"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\", \"attributes\": {\"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\", \"attributes\": {\"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\", \"attributes\": {\"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\", \"attributes\": {\"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"Grid\", \"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\", \"attributes\": {\"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\"}}}, {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\"}, {\"type\": \"WheelZoomTool\", \"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\"}, {\"type\": \"BoxZoomTool\", \"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\"}, {\"type\": \"ResizeTool\", \"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\"}, {\"type\": \"ResetTool\", \"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\"}, {\"type\": \"HelpTool\", \"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\"}, {\"type\": \"TapTool\", \"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\"}], \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\"}, {\"type\": \"Grid\", \"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\"}, {\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\"}, {\"type\": \"Grid\", \"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\"}, {\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\"}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\"}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\"}]}}, {\"type\": \"ResetTool\", \"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\", \"attributes\": {\"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"TapTool\", \"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\", \"attributes\": {\"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\", \"callback\": {\"type\": \"CustomJS\", \"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\"}, \"names\": [], \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"renderers\": [{\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\"}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\"}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\"}]}}, {\"type\": \"PreviewSaveTool\", \"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\", \"attributes\": {\"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\", \"attributes\": {\"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}];\n",
    " var all_models = [{\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\", \"attributes\": {\"id\": \"da92371f-69b1-4401-b619-df05623fe95e\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\"}}}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\", \"attributes\": {\"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\", \"nonselection_glyph\": {\"type\": \"Square\", \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\"}, \"glyph\": {\"type\": \"Square\", \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\"}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"7d6716f0-7ddb-456b-b1d0-855f9d6cbcdb\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\", \"attributes\": {\"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\"}}}, {\"type\": \"BasicTickFormatter\", \"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\", \"attributes\": {\"id\": \"07949473-4769-4051-aea1-9aeb1f60dd15\", \"tags\": [], \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\", \"attributes\": {\"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\"}, {\"type\": \"WheelZoomTool\", \"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\"}, {\"type\": \"BoxZoomTool\", \"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\"}, {\"type\": \"ResizeTool\", \"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\"}, {\"type\": \"ResetTool\", \"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\"}, {\"type\": \"HelpTool\", \"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\"}, {\"type\": \"TapTool\", \"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\"}], \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"2c1cbd12-d530-41ba-a563-94e95236d4bd\"}, {\"type\": \"Grid\", \"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\"}, {\"type\": \"LinearAxis\", \"id\": \"da92371f-69b1-4401-b619-df05623fe95e\"}, {\"type\": \"Grid\", \"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\"}, {\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\"}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\"}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\"}]}}, {\"type\": \"Triangle\", \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"WheelZoomTool\", \"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\", \"attributes\": {\"id\": \"38026977-9a27-451b-9c0d-2262b7776e76\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ResizeTool\", \"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\", \"attributes\": {\"id\": \"4ba56dc1-f5c9-4d58-8807-fab0b3962a03\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"ResetTool\", \"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\", \"attributes\": {\"id\": \"0009c302-541b-4d39-bb2b-cc05ebe6f1e1\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\", \"attributes\": {\"id\": \"bb817c91-5927-4920-acff-feafb5b145b4\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"ec4927d1-dff1-4ee4-ba0c-b2de52eba0b9\"}}}, {\"type\": \"Square\", \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"17a85db6-483f-4008-8659-4dd5dfe8b7f1\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"PreviewSaveTool\", \"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\", \"attributes\": {\"id\": \"0d715c90-2502-48ec-a38d-d31a7f4c4e2b\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\", \"attributes\": {\"callback\": null, \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"TapTool\", \"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\", \"attributes\": {\"id\": \"90fbcaba-aca9-4203-8ef4-474e14fcd768\", \"callback\": {\"type\": \"CustomJS\", \"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\"}, \"names\": [], \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"renderers\": [{\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\"}, {\"type\": \"GlyphRenderer\", \"id\": \"c02be3f7-a39b-4857-85f5-7ee5247e838c\"}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\"}]}}, {\"type\": \"BasicTickFormatter\", \"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\", \"attributes\": {\"id\": \"90f68122-f503-4add-8ed1-7d29980a03a6\", \"tags\": [], \"doc\": null}}, {\"type\": \"CustomJS\", \"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\", \"attributes\": {\"id\": \"730569a0-b3d0-4d88-b86e-a9f96db14e79\", \"code\": \"// Generated by CoffeeScript 1.10.0\\n\", \"args\": {}, \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\", \"attributes\": {\"id\": \"41282bf9-4b28-4a88-804a-bd5f2e3ca7dd\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\", \"attributes\": {\"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\", \"attributes\": {\"id\": \"c3d1ecf5-ee78-4019-b64f-0d547d29fde7\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"HelpTool\", \"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\", \"attributes\": {\"id\": \"619f9824-b7e8-4be7-9d97-50a01a1d6b6a\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\", \"attributes\": {\"callback\": null, \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\", \"data\": {\"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\", \"attributes\": {\"id\": \"85ce101f-5f1a-4104-a3d2-eb564ed9f517\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\", \"attributes\": {\"id\": \"b85e1c00-7f18-4d60-990d-0e330babb0a0\", \"nonselection_glyph\": {\"type\": \"Triangle\", \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"f54d2a3e-dd3a-4f7b-a092-3f00d7f17911\"}, \"glyph\": {\"type\": \"Triangle\", \"id\": \"2da50f99-e006-4fdd-9bdf-c8cf01ef471c\"}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\", \"attributes\": {\"id\": \"d845ba2b-9a6f-4f9d-b8cd-d35cb69c0a72\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"6dfcbfd0-772c-40e9-857d-96bde2e96aed\"}}}, {\"type\": \"GlyphRenderer\", \"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\", \"attributes\": {\"id\": \"ebbf9110-c1ce-420e-874a-04b0bb4399d6\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"9646a6b3-bcb7-4eb5-9c57-799c4d15b1a3\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"76204ab3-cc1e-447d-8a91-f6f825b84981\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"1a48b893-6f4d-47c2-95ce-9a7c29ac22ae\"}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\", \"attributes\": {\"id\": \"dfe20cdb-ab68-49be-966b-8ff02622fe47\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"b37e7427-0b7b-40cd-b40d-d771d948bb1d\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\", \"attributes\": {\"id\": \"e9ed5918-7c1b-45e0-a10b-fd80bfaac5c0\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\", \"attributes\": {\"callback\": null, \"id\": \"d7d92ab7-e33a-4aa4-ba1b-e409a7c0bcc1\", \"data\": {\"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"fb49754f-3413-4b9c-a650-7f5a2f79895c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'modelid': '7ecf4423-a27b-4de3-b289-a4e7ae379a8e', 'elementid': '4a3b6315-c479-4da2-88a7-783ceb4a8619', 'modeltype': 'Plot'}];\n",
    " var plots = [{'modelid': 'b37e7427-0b7b-40cd-b40d-d771d948bb1d', 'elementid': 'e3ff8a16-4f03-4903-895f-c1f867b188b9', 'modeltype': 'Plot'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -332,7 +393,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"4a3b6315-c479-4da2-88a7-783ceb4a8619\"></div>"
    "<div class=\"plotdiv\" id=\"e3ff8a16-4f03-4903-895f-c1f867b188b9\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -356,15 +417,15 @@
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"596ea485-281b-43ba-9725-531ca69c28e2\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 596ea485-281b-43ba-9725-531ca69c28e2</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"ebbf9110-c1ce-420e-874a-04b0bb4399d6\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - ebbf9110-c1ce-420e-874a-04b0bb4399d6</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"34b48a6a-f9c4-4fad-9750-a59fbb42b834\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 34b48a6a-f9c4-4fad-9750-a59fbb42b834</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"c02be3f7-a39b-4857-85f5-7ee5247e838c\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - c02be3f7-a39b-4857-85f5-7ee5247e838c</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"66aa7bda-aedd-4758-901e-009fdc5eb0fc\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 66aa7bda-aedd-4758-901e-009fdc5eb0fc</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"b85e1c00-7f18-4d60-990d-0e330babb0a0\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - b85e1c00-7f18-4d60-990d-0e330babb0a0</button>\n",
    " \n",
    " \n",
    " </div>\n",
  11. @tonyfast tonyfast revised this gist Feb 7, 2016. 1 changed file with 11 additions and 17 deletions.
    28 changes: 11 additions & 17 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 303,
    "execution_count": 403,
    "metadata": {
    "collapsed": false
    },
    @@ -239,7 +239,7 @@
    },
    {
    "cell_type": "code",
    "execution_count": 398,
    "execution_count": 411,
    "metadata": {
    "collapsed": true
    },
    @@ -271,7 +271,6 @@
    " {% endfor %}\n",
    " </div>\n",
    " <div class=\"row\" id=\"editor\"></div>\n",
    " <!---div class=\"row\" id=\"table\"></div--->\n",
    " \"\"\").render( refs = [r.ref for r in p.renderers], enumerate = enumerate, **locals()))\n",
    "\n",
    " edit = IPython.display.Javascript( coffee.compile(\"\"\"\n",
    @@ -280,7 +279,6 @@
    " 'https://d3js.org/d3.v3.min.js'\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'\n",
    " ], (yaml, d3, CM)->\n",
    " console.log CM\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CM editor.node(),\n",
    " height: \"400px\"\n",
    @@ -294,21 +292,19 @@
    " d3.select(@).classed 'active', true\n",
    "\n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    "\n",
    " cm.on 'change', (doc)->\n",
    " glyph = d3.select('.last-active').datum().get('glyph')\n",
    " glyph = d3.select('button.active[data-type=\"GlyphRenderer\"]').datum().get('glyph')\n",
    " d3.entries yaml.load doc.getValue()\n",
    " .forEach (d)->\n",
    " glyph.set d.key, d.value\n",
    "\n",
    " d3.select('.last-active').datum().get('data_source').trigger 'change'\n",
    " \"\"\"))\n",
    " return IPython.display.display( IPython.display.HTML( '\\n'.join(bokeh.embed.components( p ))), buttons, edit )"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 399,
    "execution_count": 412,
    "metadata": {
    "collapsed": false
    },
    @@ -318,9 +314,9 @@
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"type\": \"Square\", \"id\": \"720a1982-9f19-452e-8faf-31c0d8e992a2\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"720a1982-9f19-452e-8faf-31c0d8e992a2\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"bdc6ae42-adc0-4f13-85c7-7dc6e3e26ea6\", \"attributes\": {\"id\": \"bdc6ae42-adc0-4f13-85c7-7dc6e3e26ea6\", \"tags\": [], \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"da9df977-deab-43a3-890a-50a40ea7d146\", \"attributes\": {\"id\": \"da9df977-deab-43a3-890a-50a40ea7d146\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"0c32e26a-e208-4898-9db5-6c412dea72ab\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"d5101a0c-8dcf-4454-ac01-58041c3218f6\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"6d7572a3-fc62-4574-9cbb-4471586c88ab\"}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"e5c33124-56ee-4a24-ba60-30edf043ac4a\", \"attributes\": {\"id\": \"e5c33124-56ee-4a24-ba60-30edf043ac4a\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"bdc6ae42-adc0-4f13-85c7-7dc6e3e26ea6\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"5a3025f8-96f3-46d8-b75a-663da9b22a4c\"}}}, {\"type\": \"TapTool\", \"id\": \"2457413d-f939-4f55-bd6f-cda0831a2054\", \"attributes\": {\"id\": \"2457413d-f939-4f55-bd6f-cda0831a2054\", \"callback\": {\"type\": \"CustomJS\", \"id\": \"244dc006-2586-4ebf-aff5-0f8d4bdebc0d\"}, \"names\": [], \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"renderers\": [{\"type\": \"GlyphRenderer\", \"id\": \"da9df977-deab-43a3-890a-50a40ea7d146\"}, {\"type\": \"GlyphRenderer\", \"id\": \"4b616746-7c80-4781-907c-69196c02ac82\"}, {\"type\": \"GlyphRenderer\", \"id\": \"3580b37f-d138-45ca-87f4-b503f40d2710\"}]}}, {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"78a09a6a-1059-4607-aa79-089daa95ef42\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"221d4e6b-3c21-411d-9358-3ad2448f7edd\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"68bcbfaf-a96a-48e1-ae52-3c3082cc3176\"}, {\"type\": \"WheelZoomTool\", \"id\": \"4d41b73b-83bc-428c-9f14-e12b94055f21\"}, {\"type\": \"BoxZoomTool\", \"id\": \"6fde9840-d3da-43cc-b327-9f7f0ef917a0\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"b23e5671-28eb-4554-a6c3-76bedd05c5fc\"}, {\"type\": \"ResizeTool\", \"id\": \"6b51235d-7b81-4cb6-a555-9d68aba69bd7\"}, {\"type\": \"ResetTool\", \"id\": \"ae4e2fea-6802-4f56-bf00-c1ca8e959f15\"}, {\"type\": \"HelpTool\", \"id\": \"8974797b-fa13-45c3-bf45-b835f80fdd7e\"}, {\"type\": \"TapTool\", \"id\": \"2457413d-f939-4f55-bd6f-cda0831a2054\"}], \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"132aa6b2-855e-48c4-a614-8e91c0f7dc84\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"8a6eb55e-c8ef-42f8-b103-d63b5659d9b8\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"e5c33124-56ee-4a24-ba60-30edf043ac4a\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"8a6eb55e-c8ef-42f8-b103-d63b5659d9b8\"}, {\"type\": \"Grid\", \"id\": \"c3945bd5-7de1-40e7-9ab6-16e283210b0d\"}, {\"type\": \"LinearAxis\", \"id\": \"e5c33124-56ee-4a24-ba60-30edf043ac4a\"}, {\"type\": \"Grid\", \"id\": \"392fed38-571b-45c8-9b91-447f2bb5a375\"}, {\"type\": \"GlyphRenderer\", \"id\": \"da9df977-deab-43a3-890a-50a40ea7d146\"}, {\"type\": \"GlyphRenderer\", \"id\": \"4b616746-7c80-4781-907c-69196c02ac82\"}, {\"type\": \"GlyphRenderer\", \"id\": \"3580b37f-d138-45ca-87f4-b503f40d2710\"}]}}, {\"type\": \"ColumnDataSource\", \"id\": \"d5101a0c-8dcf-4454-ac01-58041c3218f6\", \"attributes\": {\"callback\": null, \"id\": \"d5101a0c-8dcf-4454-ac01-58041c3218f6\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Square\", \"id\": \"34f7882a-d407-41dc-90f6-b90274d8153a\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"34f7882a-d407-41dc-90f6-b90274d8153a\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"ResizeTool\", \"id\": \"6b51235d-7b81-4cb6-a555-9d68aba69bd7\", \"attributes\": {\"id\": \"6b51235d-7b81-4cb6-a555-9d68aba69bd7\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"15d8e960-58b4-4efe-8859-e8849273c4d1\", \"attributes\": {\"id\": \"15d8e960-58b4-4efe-8859-e8849273c4d1\", \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"132aa6b2-855e-48c4-a614-8e91c0f7dc84\", \"attributes\": {\"id\": \"132aa6b2-855e-48c4-a614-8e91c0f7dc84\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"CustomJS\", \"id\": \"244dc006-2586-4ebf-aff5-0f8d4bdebc0d\", \"attributes\": {\"id\": \"244dc006-2586-4ebf-aff5-0f8d4bdebc0d\", \"code\": \"// Generated by CoffeeScript 1.10.0\\n\", \"args\": {}, \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"221d4e6b-3c21-411d-9358-3ad2448f7edd\", \"attributes\": {\"id\": \"221d4e6b-3c21-411d-9358-3ad2448f7edd\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"ColumnDataSource\", \"id\": \"90300148-7e1a-40e9-8d15-dae6ea84ccde\", \"attributes\": {\"callback\": null, \"id\": \"90300148-7e1a-40e9-8d15-dae6ea84ccde\", \"data\": {\"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"19cb31b6-3f95-4b40-90ce-aa2c6f703afb\", \"attributes\": {\"callback\": null, \"id\": \"19cb31b6-3f95-4b40-90ce-aa2c6f703afb\", \"data\": {\"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"392fed38-571b-45c8-9b91-447f2bb5a375\", \"attributes\": {\"id\": \"392fed38-571b-45c8-9b91-447f2bb5a375\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"5a3025f8-96f3-46d8-b75a-663da9b22a4c\"}}}, {\"type\": \"BasicTicker\", \"id\": \"5a3025f8-96f3-46d8-b75a-663da9b22a4c\", \"attributes\": {\"id\": \"5a3025f8-96f3-46d8-b75a-663da9b22a4c\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"68bcbfaf-a96a-48e1-ae52-3c3082cc3176\", \"attributes\": {\"id\": \"68bcbfaf-a96a-48e1-ae52-3c3082cc3176\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"c3945bd5-7de1-40e7-9ab6-16e283210b0d\", \"attributes\": {\"id\": \"c3945bd5-7de1-40e7-9ab6-16e283210b0d\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"1ed5cd75-c4e1-4c0f-8903-ba21b4719031\"}}}, {\"type\": \"WheelZoomTool\", \"id\": \"4d41b73b-83bc-428c-9f14-e12b94055f21\", \"attributes\": {\"id\": \"4d41b73b-83bc-428c-9f14-e12b94055f21\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"8a6eb55e-c8ef-42f8-b103-d63b5659d9b8\", \"attributes\": {\"id\": \"8a6eb55e-c8ef-42f8-b103-d63b5659d9b8\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"15d8e960-58b4-4efe-8859-e8849273c4d1\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"1ed5cd75-c4e1-4c0f-8903-ba21b4719031\"}}}, {\"type\": \"Triangle\", \"id\": \"a40c8014-d58c-4288-9cd3-7abbd408b722\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"a40c8014-d58c-4288-9cd3-7abbd408b722\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"f4f9ef2f-6625-4530-98e6-384b15061176\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"f4f9ef2f-6625-4530-98e6-384b15061176\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"6d7572a3-fc62-4574-9cbb-4471586c88ab\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"6d7572a3-fc62-4574-9cbb-4471586c88ab\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"0c32e26a-e208-4898-9db5-6c412dea72ab\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"0c32e26a-e208-4898-9db5-6c412dea72ab\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"6fde9840-d3da-43cc-b327-9f7f0ef917a0\", \"attributes\": {\"id\": \"6fde9840-d3da-43cc-b327-9f7f0ef917a0\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"1ed5cd75-c4e1-4c0f-8903-ba21b4719031\", \"attributes\": {\"id\": \"1ed5cd75-c4e1-4c0f-8903-ba21b4719031\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"PreviewSaveTool\", \"id\": \"b23e5671-28eb-4554-a6c3-76bedd05c5fc\", \"attributes\": {\"id\": \"b23e5671-28eb-4554-a6c3-76bedd05c5fc\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"HelpTool\", \"id\": \"8974797b-fa13-45c3-bf45-b835f80fdd7e\", \"attributes\": {\"id\": \"8974797b-fa13-45c3-bf45-b835f80fdd7e\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"4b616746-7c80-4781-907c-69196c02ac82\", \"attributes\": {\"id\": \"4b616746-7c80-4781-907c-69196c02ac82\", \"nonselection_glyph\": {\"type\": \"Square\", \"id\": \"720a1982-9f19-452e-8faf-31c0d8e992a2\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"19cb31b6-3f95-4b40-90ce-aa2c6f703afb\"}, \"glyph\": {\"type\": \"Square\", \"id\": \"34f7882a-d407-41dc-90f6-b90274d8153a\"}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"78a09a6a-1059-4607-aa79-089daa95ef42\", \"attributes\": {\"id\": \"78a09a6a-1059-4607-aa79-089daa95ef42\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"3580b37f-d138-45ca-87f4-b503f40d2710\", \"attributes\": {\"id\": \"3580b37f-d138-45ca-87f4-b503f40d2710\", \"nonselection_glyph\": {\"type\": \"Triangle\", \"id\": \"f4f9ef2f-6625-4530-98e6-384b15061176\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"90300148-7e1a-40e9-8d15-dae6ea84ccde\"}, \"glyph\": {\"type\": \"Triangle\", \"id\": \"a40c8014-d58c-4288-9cd3-7abbd408b722\"}, \"doc\": null}}, {\"type\": \"ResetTool\", \"id\": \"ae4e2fea-6802-4f56-bf00-c1ca8e959f15\", \"attributes\": {\"id\": \"ae4e2fea-6802-4f56-bf00-c1ca8e959f15\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"6b409174-7ab4-43cf-a738-ac8e1e3e652c\", \"subtype\": \"Figure\"}, \"doc\": null}}];\n",
    " var all_models = [{\"type\": \"ResizeTool\", \"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\", \"attributes\": {\"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\", \"attributes\": {\"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\"}}}, {\"type\": \"Circle\", \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\", \"attributes\": {\"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\", \"attributes\": {\"callback\": null, \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\", \"data\": {\"sepal_width\": [3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\", \"attributes\": {\"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\"}}}, {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\", \"attributes\": {\"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"CustomJS\", \"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\", \"attributes\": {\"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\", \"code\": \"// Generated by CoffeeScript 1.10.0\\n\", \"args\": {}, \"tags\": [], \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\", \"attributes\": {\"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\", \"attributes\": {\"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\", \"attributes\": {\"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\", \"nonselection_glyph\": {\"type\": \"Square\", \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\"}, \"glyph\": {\"type\": \"Square\", \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\"}, \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"c873176e-2b01-489e-8739-819745242c12\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"c873176e-2b01-489e-8739-819745242c12\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"ca42a31b-c6f5-4828-b42f-9c60f600e32c\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\", \"attributes\": {\"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\", \"nonselection_glyph\": {\"type\": \"Triangle\", \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"91281ef2-099a-4490-b6cd-699bbf4ea8f8\"}, \"glyph\": {\"type\": \"Triangle\", \"id\": \"c873176e-2b01-489e-8739-819745242c12\"}, \"doc\": null}}, {\"type\": \"Square\", \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"fed07d59-83c2-49af-8084-bdc627c70d30\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"Grid\", \"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\", \"attributes\": {\"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"e5b0017c-a174-4cf9-b53c-04859476a7f6\"}}}, {\"type\": \"ColumnDataSource\", \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\", \"attributes\": {\"callback\": null, \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\", \"attributes\": {\"id\": \"7ca16185-4bc3-4ac1-82d7-0446f1dcdf02\", \"tags\": [], \"doc\": null}}, {\"type\": \"HelpTool\", \"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\", \"attributes\": {\"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Triangle\", \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"84869beb-cf21-46f9-bf8b-05800943bb5b\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\", \"attributes\": {\"id\": \"5eb9272a-5e49-48d2-994d-271eae16f8e6\", \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\", \"attributes\": {\"callback\": null, \"id\": \"4ee4a79e-a637-4fbb-b722-af0cb7f8e8db\", \"data\": {\"sepal_width\": [3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8], \"petal_length\": [4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1], \"sepal_length\": [7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7], \"species\": [\"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\"], \"index\": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99], \"petal_width\": [1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"WheelZoomTool\", \"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\", \"attributes\": {\"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\", \"attributes\": {\"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\", \"attributes\": {\"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"3624a7cc-e9e1-4367-b6fc-ea93f392c358\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"98de999c-01ba-48b3-93af-feada90d2c10\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"1f7c75e9-c6a8-4273-a4cd-7b4ef7496b32\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\", \"attributes\": {\"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"Grid\", \"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\", \"attributes\": {\"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"b5cc95d9-abda-4bdd-9b61-b47d86f71c13\"}}}, {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"04bfb905-84eb-4ea9-aace-b3c839f1afbb\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"b249972c-0c80-4c27-8242-bf5410578b6b\"}, {\"type\": \"WheelZoomTool\", \"id\": \"8f3c432f-d21f-4c4f-a858-41acc9d5ed10\"}, {\"type\": \"BoxZoomTool\", \"id\": \"99ebc6b1-efe4-475f-b8c1-02af9f5fcfa9\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\"}, {\"type\": \"ResizeTool\", \"id\": \"bc7292b3-467c-4e20-8c72-95eba152225c\"}, {\"type\": \"ResetTool\", \"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\"}, {\"type\": \"HelpTool\", \"id\": \"c7a22f71-8125-4538-b6b5-379b5ef2e645\"}, {\"type\": \"TapTool\", \"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\"}], \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"57c59394-f651-4e81-9d7f-ecd88ec7924f\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"b7e36c49-f746-41cc-9d1a-83683a3f9a18\"}, {\"type\": \"Grid\", \"id\": \"709b078a-404d-4ca4-ae9f-33a042dcdaf4\"}, {\"type\": \"LinearAxis\", \"id\": \"418bbf40-d703-4fc2-a711-d55c27da1c3f\"}, {\"type\": \"Grid\", \"id\": \"33d31d6e-68c6-4d6e-b023-c516c6d4c27e\"}, {\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\"}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\"}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\"}]}}, {\"type\": \"ResetTool\", \"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\", \"attributes\": {\"id\": \"8a1ce5fa-001e-4238-8007-af4112edc6ea\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"TapTool\", \"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\", \"attributes\": {\"id\": \"f9dcc1bc-feec-4eb5-b3ee-8d4967118357\", \"callback\": {\"type\": \"CustomJS\", \"id\": \"5759eaa9-fd2f-40f3-9c16-f964f9c7dff8\"}, \"names\": [], \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"renderers\": [{\"type\": \"GlyphRenderer\", \"id\": \"596ea485-281b-43ba-9725-531ca69c28e2\"}, {\"type\": \"GlyphRenderer\", \"id\": \"34b48a6a-f9c4-4fad-9750-a59fbb42b834\"}, {\"type\": \"GlyphRenderer\", \"id\": \"66aa7bda-aedd-4758-901e-009fdc5eb0fc\"}]}}, {\"type\": \"PreviewSaveTool\", \"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\", \"attributes\": {\"id\": \"bb84c713-7c0f-42d2-a5aa-3cdd5f84c94f\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"7ecf4423-a27b-4de3-b289-a4e7ae379a8e\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\", \"attributes\": {\"id\": \"fe790bd4-764a-4f73-93db-fbe1a8373ea7\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'modelid': '6b409174-7ab4-43cf-a738-ac8e1e3e652c', 'elementid': '5a373629-feb3-4723-943a-2f505472655b', 'modeltype': 'Plot'}];\n",
    " var plots = [{'modelid': '7ecf4423-a27b-4de3-b289-a4e7ae379a8e', 'elementid': '4a3b6315-c479-4da2-88a7-783ceb4a8619', 'modeltype': 'Plot'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    @@ -336,7 +332,7 @@
    " }\n",
    "});\n",
    "</script>\n",
    "<div class=\"plotdiv\" id=\"5a373629-feb3-4723-943a-2f505472655b\"></div>"
    "<div class=\"plotdiv\" id=\"4a3b6315-c479-4da2-88a7-783ceb4a8619\"></div>"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    @@ -360,20 +356,19 @@
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"da9df977-deab-43a3-890a-50a40ea7d146\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - da9df977-deab-43a3-890a-50a40ea7d146</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"596ea485-281b-43ba-9725-531ca69c28e2\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 596ea485-281b-43ba-9725-531ca69c28e2</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"4b616746-7c80-4781-907c-69196c02ac82\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 4b616746-7c80-4781-907c-69196c02ac82</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"34b48a6a-f9c4-4fad-9750-a59fbb42b834\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 34b48a6a-f9c4-4fad-9750-a59fbb42b834</button>\n",
    " \n",
    " \n",
    " \n",
    " <button data-type=\"GlyphRenderer\" data-id=\"3580b37f-d138-45ca-87f4-b503f40d2710\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 3580b37f-d138-45ca-87f4-b503f40d2710</button>\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"66aa7bda-aedd-4758-901e-009fdc5eb0fc\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 66aa7bda-aedd-4758-901e-009fdc5eb0fc</button>\n",
    " \n",
    " \n",
    " </div>\n",
    " <div class=\"row\" id=\"editor\"></div>\n",
    " <!---div class=\"row\" id=\"table\"></div--->\n",
    " "
    ],
    "text/plain": [
    @@ -390,7 +385,6 @@
    "(function() {\n",
    " require(['https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js', 'https://d3js.org/d3.v3.min.js', 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'], function(yaml, d3, CM) {\n",
    " var buttons, cm, editor;\n",
    " console.log(CM);\n",
    " editor = d3.select(\"#editor\");\n",
    " cm = new CM(editor.node(), {\n",
    " height: \"400px\",\n",
    @@ -405,7 +399,7 @@
    " cm.setValue(yaml.dump(renderer.get('glyph').attributes));\n",
    " return cm.on('change', function(doc) {\n",
    " var glyph;\n",
    " glyph = d3.select('.last-active').datum().get('glyph');\n",
    " glyph = d3.select('button.active[data-type=\"GlyphRenderer\"]').datum().get('glyph');\n",
    " d3.entries(yaml.load(doc.getValue())).forEach(function(d) {\n",
    " return glyph.set(d.key, d.value);\n",
    " });\n",
  12. @tonyfast tonyfast revised this gist Feb 6, 2016. 1 changed file with 332 additions and 145 deletions.
    477 changes: 332 additions & 145 deletions bokeh-inspector.ipynb
    332 additions, 145 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
  13. @tonyfast tonyfast revised this gist Feb 5, 2016. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -216,7 +216,7 @@
    " 'https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js',\n",
    " 'https://d3js.org/d3.v3.min.js',\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js',\n",
    "], (yaml, d3)->\n",
    "], (yaml, d3, CodeMirror)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CodeMirror editor.node(),\n",
    " height: \"400px\"\n",
  14. @tonyfast tonyfast created this gist Feb 5, 2016.
    275 changes: 275 additions & 0 deletions bokeh-inspector.ipynb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,275 @@
    {
    "cells": [
    {
    "cell_type": "code",
    "execution_count": 297,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "data": {
    "text/html": [
    " \n",
    "<script type=\"text/javascript\" src=\"http://cdn.pydata.org/bokeh/release/bokeh-0.10.0.min.js\"></script>\n",
    "<script type=\"text/javascript\">\n",
    " Bokeh.set_log_level(\"info\");\n",
    "</script>\n",
    " \n",
    "<link rel=\"stylesheet\" href=\"http://cdn.pydata.org/bokeh/release/bokeh-0.10.0.min.css\" type=\"text/css\" />\n",
    " <div>\n",
    " <a href=\"http://bokeh.pydata.org\" target=\"_blank\" class=\"bk-logo bk-logo-small bk-logo-notebook\"></a>\n",
    " <span>BokehJS successfully loaded.</span>\n",
    " </div>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "import bokeh, bokeh.plotting, jinja2, pandas, ipywidgets, IPython\n",
    "from coffeetools import coffee\n",
    "bokeh.plotting.output_notebook(resources=bokeh.resources.CDN)\n",
    "df = pandas.read_csv('iris.csv')"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 302,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "data": {
    "text/markdown": [
    "\n",
    "<!---link rel=\"stylesheet\" type=\"text/css\" href=\"https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.css\"/--->\n",
    "## Select a Glyph ID below\n",
    "\n",
    "A CodeMirror edit will open that provides YAML-ified syntax of the chosen glyph. Only valid changes to the\n",
    "glyph with be accepted bcause Bokeh has awesome type checking.\n",
    "\n"
    ],
    "text/plain": [
    "<IPython.core.display.Markdown object>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    },
    {
    "data": {
    "text/html": [
    "\n",
    "<div class=\"btn-group\" role=\"group\" aria-label=\"...\">\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"6b13ace7-056a-443c-bbeb-6e6913d5fd0f\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 6b13ace7-056a-443c-bbeb-6e6913d5fd0f</button>\n",
    "\n",
    "\n",
    "\n",
    " <button data-type=\"GlyphRenderer\" data-id=\"47b8807a-709f-457e-b239-b0152c401d94\" type=\"button\" class=\"btn btn-default\">GlyphRenderer - 47b8807a-709f-457e-b239-b0152c401d94</button>\n",
    "\n",
    "\n",
    "</div>\n",
    "<div class=\"row\" id=\"editor\"></div>\n",
    "<!---div class=\"row\" id=\"table\"></div--->"
    ],
    "text/plain": [
    "<IPython.core.display.HTML object>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    },
    {
    "data": {
    "application/javascript": [
    "// Generated by CoffeeScript 1.10.0\n",
    "(function() {\n",
    " require(['https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js', 'https://d3js.org/d3.v3.min.js', 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js'], function(yaml, d3) {\n",
    " var buttons, cm, editor;\n",
    " editor = d3.select(\"#editor\");\n",
    " cm = new CodeMirror(editor.node(), {\n",
    " height: \"400px\",\n",
    " width: \"100%\"\n",
    " });\n",
    " buttons = d3.selectAll(\"button[data-type=GlyphRenderer]\").datum(function() {\n",
    " return Bokeh.Collections(this.dataset.type).get(this.dataset.id);\n",
    " });\n",
    " return buttons.on('click', function(renderer) {\n",
    " buttons.classed('last-active', false);\n",
    " d3.select(this).classed('last-active', true);\n",
    " cm.setValue(yaml.dump(renderer.get('glyph').attributes));\n",
    " return cm.on('change', function(doc) {\n",
    " var glyph;\n",
    " glyph = d3.select('.last-active').datum().get('glyph');\n",
    " d3.entries(yaml.load(doc.getValue())).forEach(function(d) {\n",
    " return glyph.set(d.key, d.value);\n",
    " });\n",
    " return d3.select('.last-active').datum().get('data_source').trigger('change');\n",
    " });\n",
    " });\n",
    " });\n",
    "\n",
    "}).call(this);\n"
    ],
    "text/plain": [
    "<IPython.core.display.Javascript object>"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "IPython.display.display(about, buttons,edit)"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 301,
    "metadata": {
    "collapsed": false
    },
    "outputs": [
    {
    "data": {
    "text/html": [
    "<script type=\"text/javascript\">\n",
    " Bokeh.$(function() {\n",
    " var all_models = [{\"type\": \"BasicTicker\", \"id\": \"c45d9621-25d9-4f29-9c70-92540cada665\", \"attributes\": {\"id\": \"c45d9621-25d9-4f29-9c70-92540cada665\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"ced8f179-2127-4a15-bcc2-71fe440c1c36\", \"attributes\": {\"id\": \"ced8f179-2127-4a15-bcc2-71fe440c1c36\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"5ac3926d-5469-4559-98ab-e692d7a97294\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"c45d9621-25d9-4f29-9c70-92540cada665\"}}}, {\"type\": \"Grid\", \"id\": \"3b8b8955-0f1b-4cd8-8279-0fd9ed32ade1\", \"attributes\": {\"id\": \"3b8b8955-0f1b-4cd8-8279-0fd9ed32ade1\", \"dimension\": 1, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"c45d9621-25d9-4f29-9c70-92540cada665\"}}}, {\"type\": \"ResizeTool\", \"id\": \"7479cf01-3ecc-471e-b9ee-e9b3d9f3b982\", \"attributes\": {\"id\": \"7479cf01-3ecc-471e-b9ee-e9b3d9f3b982\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"1c2a914a-fdaa-43e0-8e0d-5367ef8d3b7c\", \"attributes\": {\"id\": \"1c2a914a-fdaa-43e0-8e0d-5367ef8d3b7c\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"Grid\", \"id\": \"578612a8-cd53-4f20-851b-3188876df57e\", \"attributes\": {\"id\": \"578612a8-cd53-4f20-851b-3188876df57e\", \"dimension\": 0, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"31d18dfa-9a57-476d-a4bf-f6cc456566a3\"}}}, {\"type\": \"PreviewSaveTool\", \"id\": \"0cc19b01-1182-4f97-a2a5-4c9bf0d82280\", \"attributes\": {\"id\": \"0cc19b01-1182-4f97-a2a5-4c9bf0d82280\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"HelpTool\", \"id\": \"6b80c65a-33bb-4612-91dd-6d36c157159c\", \"attributes\": {\"id\": \"6b80c65a-33bb-4612-91dd-6d36c157159c\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"WheelZoomTool\", \"id\": \"209a0604-6e45-45ab-b74c-cdcdce0f1a29\", \"attributes\": {\"id\": \"209a0604-6e45-45ab-b74c-cdcdce0f1a29\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"BasicTickFormatter\", \"id\": \"5ac3926d-5469-4559-98ab-e692d7a97294\", \"attributes\": {\"id\": \"5ac3926d-5469-4559-98ab-e692d7a97294\", \"tags\": [], \"doc\": null}}, {\"type\": \"ColumnDataSource\", \"id\": \"d2d32277-f047-4b34-84fc-25074cea1627\", \"attributes\": {\"callback\": null, \"id\": \"d2d32277-f047-4b34-84fc-25074cea1627\", \"data\": {\"sepal_width\": [3.5, 3.0, 3.2, 3.1, 3.6, 3.9, 3.4, 3.4, 2.9, 3.1, 3.7, 3.4, 3.0, 3.0, 4.0, 4.4, 3.9, 3.5, 3.8, 3.8, 3.4, 3.7, 3.6, 3.3, 3.4, 3.0, 3.4, 3.5, 3.4, 3.2, 3.1, 3.4, 4.1, 4.2, 3.1, 3.2, 3.5, 3.6, 3.0, 3.4, 3.5, 2.3, 3.2, 3.5, 3.8, 3.0, 3.8, 3.2, 3.7, 3.3, 3.2, 3.2, 3.1, 2.3, 2.8, 2.8, 3.3, 2.4, 2.9, 2.7, 2.0, 3.0, 2.2, 2.9, 2.9, 3.1, 3.0, 2.7, 2.2, 2.5, 3.2, 2.8, 2.5, 2.8, 2.9, 3.0, 2.8, 3.0, 2.9, 2.6, 2.4, 2.4, 2.7, 2.7, 3.0, 3.4, 3.1, 2.3, 3.0, 2.5, 2.6, 3.0, 2.6, 2.3, 2.7, 3.0, 2.9, 2.9, 2.5, 2.8, 3.3, 2.7, 3.0, 2.9, 3.0, 3.0, 2.5, 2.9, 2.5, 3.6, 3.2, 2.7, 3.0, 2.5, 2.8, 3.2, 3.0, 3.8, 2.6, 2.2, 3.2, 2.8, 2.8, 2.7, 3.3, 3.2, 2.8, 3.0, 2.8, 3.0, 2.8, 3.8, 2.8, 2.8, 2.6, 3.0, 3.4, 3.1, 3.0, 3.1, 3.1, 3.1, 2.7, 3.2, 3.3, 3.0, 2.5, 3.0, 3.4, 3.0], \"petal_length\": [1.4, 1.4, 1.3, 1.5, 1.4, 1.7, 1.4, 1.5, 1.4, 1.5, 1.5, 1.6, 1.4, 1.1, 1.2, 1.5, 1.3, 1.4, 1.7, 1.5, 1.7, 1.5, 1.0, 1.7, 1.9, 1.6, 1.6, 1.5, 1.4, 1.6, 1.6, 1.5, 1.5, 1.4, 1.5, 1.2, 1.3, 1.4, 1.3, 1.5, 1.3, 1.3, 1.3, 1.6, 1.9, 1.4, 1.6, 1.4, 1.5, 1.4, 4.7, 4.5, 4.9, 4.0, 4.6, 4.5, 4.7, 3.3, 4.6, 3.9, 3.5, 4.2, 4.0, 4.7, 3.6, 4.4, 4.5, 4.1, 4.5, 3.9, 4.8, 4.0, 4.9, 4.7, 4.3, 4.4, 4.8, 5.0, 4.5, 3.5, 3.8, 3.7, 3.9, 5.1, 4.5, 4.5, 4.7, 4.4, 4.1, 4.0, 4.4, 4.6, 4.0, 3.3, 4.2, 4.2, 4.2, 4.3, 3.0, 4.1, 6.0, 5.1, 5.9, 5.6, 5.8, 6.6, 4.5, 6.3, 5.8, 6.1, 5.1, 5.3, 5.5, 5.0, 5.1, 5.3, 5.5, 6.7, 6.9, 5.0, 5.7, 4.9, 6.7, 4.9, 5.7, 6.0, 4.8, 4.9, 5.6, 5.8, 6.1, 6.4, 5.6, 5.1, 5.6, 6.1, 5.6, 5.5, 4.8, 5.4, 5.6, 5.1, 5.1, 5.9, 5.7, 5.2, 5.0, 5.2, 5.4, 5.1], \"sepal_length\": [5.1, 4.9, 4.7, 4.6, 5.0, 5.4, 4.6, 5.0, 4.4, 4.9, 5.4, 4.8, 4.8, 4.3, 5.8, 5.7, 5.4, 5.1, 5.7, 5.1, 5.4, 5.1, 4.6, 5.1, 4.8, 5.0, 5.0, 5.2, 5.2, 4.7, 4.8, 5.4, 5.2, 5.5, 4.9, 5.0, 5.5, 4.9, 4.4, 5.1, 5.0, 4.5, 4.4, 5.0, 5.1, 4.8, 5.1, 4.6, 5.3, 5.0, 7.0, 6.4, 6.9, 5.5, 6.5, 5.7, 6.3, 4.9, 6.6, 5.2, 5.0, 5.9, 6.0, 6.1, 5.6, 6.7, 5.6, 5.8, 6.2, 5.6, 5.9, 6.1, 6.3, 6.1, 6.4, 6.6, 6.8, 6.7, 6.0, 5.7, 5.5, 5.5, 5.8, 6.0, 5.4, 6.0, 6.7, 6.3, 5.6, 5.5, 5.5, 6.1, 5.8, 5.0, 5.6, 5.7, 5.7, 6.2, 5.1, 5.7, 6.3, 5.8, 7.1, 6.3, 6.5, 7.6, 4.9, 7.3, 6.7, 7.2, 6.5, 6.4, 6.8, 5.7, 5.8, 6.4, 6.5, 7.7, 7.7, 6.0, 6.9, 5.6, 7.7, 6.3, 6.7, 7.2, 6.2, 6.1, 6.4, 7.2, 7.4, 7.9, 6.4, 6.3, 6.1, 7.7, 6.3, 6.4, 6.0, 6.9, 6.7, 6.9, 5.8, 6.8, 6.7, 6.7, 6.3, 6.5, 6.2, 5.9], \"species\": [\"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"setosa\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"versicolor\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\", \"virginica\"], \"index\": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149], \"petal_width\": [0.2, 0.2, 0.2, 0.2, 0.2, 0.4, 0.3, 0.2, 0.2, 0.1, 0.2, 0.2, 0.1, 0.1, 0.2, 0.4, 0.4, 0.3, 0.3, 0.3, 0.2, 0.4, 0.2, 0.5, 0.2, 0.2, 0.4, 0.2, 0.2, 0.2, 0.2, 0.4, 0.1, 0.2, 0.2, 0.2, 0.2, 0.1, 0.2, 0.2, 0.3, 0.3, 0.2, 0.6, 0.4, 0.3, 0.2, 0.2, 0.2, 0.2, 1.4, 1.5, 1.5, 1.3, 1.5, 1.3, 1.6, 1.0, 1.3, 1.4, 1.0, 1.5, 1.0, 1.4, 1.3, 1.4, 1.5, 1.0, 1.5, 1.1, 1.8, 1.3, 1.5, 1.2, 1.3, 1.4, 1.4, 1.7, 1.5, 1.0, 1.1, 1.0, 1.2, 1.6, 1.5, 1.6, 1.5, 1.3, 1.3, 1.3, 1.2, 1.4, 1.2, 1.0, 1.3, 1.2, 1.3, 1.3, 1.1, 1.3, 2.5, 1.9, 2.1, 1.8, 2.2, 2.1, 1.7, 1.8, 1.8, 2.5, 2.0, 1.9, 2.1, 2.0, 2.4, 2.3, 1.8, 2.2, 2.3, 1.5, 2.3, 2.0, 2.0, 1.8, 2.1, 1.8, 1.8, 1.8, 2.1, 1.6, 1.9, 2.0, 2.2, 1.5, 1.4, 2.3, 2.4, 1.8, 1.8, 2.1, 2.4, 2.3, 1.9, 2.3, 2.5, 2.3, 1.9, 2.0, 2.3, 1.8]}, \"column_names\": [\"sepal_width\", \"petal_length\", \"sepal_length\", \"species\", \"index\", \"petal_width\"], \"selected\": {\"2d\": {\"indices\": []}, \"0d\": {\"flag\": false, \"indices\": []}, \"1d\": {\"indices\": []}}, \"tags\": [], \"doc\": null}}, {\"type\": \"Line\", \"id\": \"43d955b1-5107-4e5b-9e39-95c43ac716fc\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"x\": {\"field\": \"sepal_length\"}, \"id\": \"43d955b1-5107-4e5b-9e39-95c43ac716fc\", \"line_alpha\": {\"value\": 0.1}, \"tags\": [], \"y\": {\"field\": \"petal_width\"}, \"doc\": null}}, {\"type\": \"BoxZoomTool\", \"id\": \"d3918cc5-01bb-4a37-a826-1174b28a17bb\", \"attributes\": {\"id\": \"d3918cc5-01bb-4a37-a826-1174b28a17bb\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"GlyphRenderer\", \"id\": \"47b8807a-709f-457e-b239-b0152c401d94\", \"attributes\": {\"id\": \"47b8807a-709f-457e-b239-b0152c401d94\", \"nonselection_glyph\": {\"type\": \"Line\", \"id\": \"43d955b1-5107-4e5b-9e39-95c43ac716fc\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"d2d32277-f047-4b34-84fc-25074cea1627\"}, \"glyph\": {\"type\": \"Line\", \"id\": \"5d535f47-30b2-4dfe-b98b-e0e3be3ba08a\"}, \"doc\": null}}, {\"type\": \"BasicTicker\", \"id\": \"31d18dfa-9a57-476d-a4bf-f6cc456566a3\", \"attributes\": {\"id\": \"31d18dfa-9a57-476d-a4bf-f6cc456566a3\", \"mantissas\": [2, 5, 10], \"num_minor_ticks\": 5, \"tags\": [], \"doc\": null}}, {\"type\": \"Line\", \"id\": \"5d535f47-30b2-4dfe-b98b-e0e3be3ba08a\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"x\": {\"field\": \"sepal_length\"}, \"id\": \"5d535f47-30b2-4dfe-b98b-e0e3be3ba08a\", \"line_alpha\": {\"value\": 1.0}, \"tags\": [], \"y\": {\"field\": \"petal_width\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"b16b2090-81eb-4b80-aa98-d2ee47d0bfca\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"b16b2090-81eb-4b80-aa98-d2ee47d0bfca\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 1.0}, \"fill_alpha\": {\"value\": 1.0}, \"doc\": null}}, {\"type\": \"PanTool\", \"id\": \"eabb700e-96ea-43f9-95bf-f8ed536f57fb\", \"attributes\": {\"id\": \"eabb700e-96ea-43f9-95bf-f8ed536f57fb\", \"dimensions\": [\"width\", \"height\"], \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"Circle\", \"id\": \"248afc1e-7403-4cd1-8de5-c1c292fba907\", \"attributes\": {\"line_color\": {\"value\": \"#1f77b4\"}, \"size\": {\"value\": 20, \"units\": \"screen\"}, \"y\": {\"field\": \"petal_width\"}, \"fill_color\": {\"value\": \"#1f77b4\"}, \"id\": \"248afc1e-7403-4cd1-8de5-c1c292fba907\", \"tags\": [], \"x\": {\"field\": \"sepal_length\"}, \"line_alpha\": {\"value\": 0.1}, \"fill_alpha\": {\"value\": 0.1}, \"doc\": null}}, {\"type\": \"LinearAxis\", \"id\": \"d794791a-be30-4137-a65e-92ec7d2b20ea\", \"attributes\": {\"id\": \"d794791a-be30-4137-a65e-92ec7d2b20ea\", \"formatter\": {\"type\": \"BasicTickFormatter\", \"id\": \"2c7698c3-0746-4aee-9108-a1909e8e4b22\"}, \"doc\": null, \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"ticker\": {\"type\": \"BasicTicker\", \"id\": \"31d18dfa-9a57-476d-a4bf-f6cc456566a3\"}}}, {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\", \"attributes\": {\"tool_events\": {\"type\": \"ToolEvents\", \"id\": \"0ec56b45-f0b9-4dd2-ba3c-c742d3c856b9\"}, \"x_range\": {\"type\": \"DataRange1d\", \"id\": \"2fd4495a-7899-4c7b-8e80-43ded110eb69\"}, \"tools\": [{\"type\": \"PanTool\", \"id\": \"eabb700e-96ea-43f9-95bf-f8ed536f57fb\"}, {\"type\": \"WheelZoomTool\", \"id\": \"209a0604-6e45-45ab-b74c-cdcdce0f1a29\"}, {\"type\": \"BoxZoomTool\", \"id\": \"d3918cc5-01bb-4a37-a826-1174b28a17bb\"}, {\"type\": \"PreviewSaveTool\", \"id\": \"0cc19b01-1182-4f97-a2a5-4c9bf0d82280\"}, {\"type\": \"ResizeTool\", \"id\": \"7479cf01-3ecc-471e-b9ee-e9b3d9f3b982\"}, {\"type\": \"ResetTool\", \"id\": \"e54e7fbf-6744-4d52-87a2-be8c53f24587\"}, {\"type\": \"HelpTool\", \"id\": \"6b80c65a-33bb-4612-91dd-6d36c157159c\"}], \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"extra_x_ranges\": {}, \"tags\": [], \"doc\": null, \"y_range\": {\"type\": \"DataRange1d\", \"id\": \"1c2a914a-fdaa-43e0-8e0d-5367ef8d3b7c\"}, \"below\": [{\"type\": \"LinearAxis\", \"id\": \"d794791a-be30-4137-a65e-92ec7d2b20ea\"}], \"left\": [{\"type\": \"LinearAxis\", \"id\": \"ced8f179-2127-4a15-bcc2-71fe440c1c36\"}], \"right\": [], \"extra_y_ranges\": {}, \"above\": [], \"renderers\": [{\"type\": \"LinearAxis\", \"id\": \"d794791a-be30-4137-a65e-92ec7d2b20ea\"}, {\"type\": \"Grid\", \"id\": \"578612a8-cd53-4f20-851b-3188876df57e\"}, {\"type\": \"LinearAxis\", \"id\": \"ced8f179-2127-4a15-bcc2-71fe440c1c36\"}, {\"type\": \"Grid\", \"id\": \"3b8b8955-0f1b-4cd8-8279-0fd9ed32ade1\"}, {\"type\": \"GlyphRenderer\", \"id\": \"6b13ace7-056a-443c-bbeb-6e6913d5fd0f\"}, {\"type\": \"GlyphRenderer\", \"id\": \"47b8807a-709f-457e-b239-b0152c401d94\"}]}}, {\"type\": \"GlyphRenderer\", \"id\": \"6b13ace7-056a-443c-bbeb-6e6913d5fd0f\", \"attributes\": {\"id\": \"6b13ace7-056a-443c-bbeb-6e6913d5fd0f\", \"nonselection_glyph\": {\"type\": \"Circle\", \"id\": \"248afc1e-7403-4cd1-8de5-c1c292fba907\"}, \"selection_glyph\": null, \"tags\": [], \"data_source\": {\"type\": \"ColumnDataSource\", \"id\": \"d2d32277-f047-4b34-84fc-25074cea1627\"}, \"glyph\": {\"type\": \"Circle\", \"id\": \"b16b2090-81eb-4b80-aa98-d2ee47d0bfca\"}, \"doc\": null}}, {\"type\": \"ResetTool\", \"id\": \"e54e7fbf-6744-4d52-87a2-be8c53f24587\", \"attributes\": {\"id\": \"e54e7fbf-6744-4d52-87a2-be8c53f24587\", \"tags\": [], \"plot\": {\"type\": \"Plot\", \"id\": \"87519edb-e31f-4614-8896-b4c702f464e0\", \"subtype\": \"Figure\"}, \"doc\": null}}, {\"type\": \"ToolEvents\", \"id\": \"0ec56b45-f0b9-4dd2-ba3c-c742d3c856b9\", \"attributes\": {\"id\": \"0ec56b45-f0b9-4dd2-ba3c-c742d3c856b9\", \"geometries\": [], \"tags\": [], \"doc\": null}}, {\"type\": \"DataRange1d\", \"id\": \"2fd4495a-7899-4c7b-8e80-43ded110eb69\", \"attributes\": {\"id\": \"2fd4495a-7899-4c7b-8e80-43ded110eb69\", \"callback\": null, \"names\": [], \"doc\": null, \"tags\": [], \"renderers\": []}}, {\"type\": \"BasicTickFormatter\", \"id\": \"2c7698c3-0746-4aee-9108-a1909e8e4b22\", \"attributes\": {\"id\": \"2c7698c3-0746-4aee-9108-a1909e8e4b22\", \"tags\": [], \"doc\": null}}];\n",
    " Bokeh.load_models(all_models);\n",
    " var plots = [{'modelid': '87519edb-e31f-4614-8896-b4c702f464e0', 'elementid': 'c8ff3f13-f7ed-4182-8237-58cb5c2c8c19', 'modeltype': 'Plot'}];\n",
    " for (idx in plots) {\n",
    " \tvar plot = plots[idx];\n",
    " \tvar model = Bokeh.Collections(plot.modeltype).get(plot.modelid);\n",
    " \tBokeh.logger.info('Realizing plot:')\n",
    " \tBokeh.logger.info(' - modeltype: ' + plot.modeltype);\n",
    " \tBokeh.logger.info(' - modelid: ' + plot.modelid);\n",
    " \tBokeh.logger.info(' - elementid: ' + plot.elementid);\n",
    " \tvar view = new model.default_view({\n",
    " \t\tmodel: model,\n",
    " \t\tel: '#' + plot.elementid\n",
    " \t});\n",
    " \tBokeh.index[plot.modelid] = view;\n",
    " }\n",
    " });\n",
    " </script>\n",
    "<div class=\"plotdiv\" id=\"c8ff3f13-f7ed-4182-8237-58cb5c2c8c19\"></div>\n",
    "\n"
    ]
    },
    "metadata": {},
    "output_type": "display_data"
    }
    ],
    "source": [
    "bokeh.plotting.show(p)"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": 300,
    "metadata": {
    "collapsed": false
    },
    "outputs": [],
    "source": [
    "p = bokeh.plotting.figure(); \n",
    "source = bokeh.models.ColumnDataSource( df );\n",
    "p.circle( source = source, size=20,x='sepal_length',y='petal_width');\n",
    "p.line( source = source, x='sepal_length',y='petal_width')\n",
    "\n",
    "about = IPython.display.Markdown(\"\"\"\n",
    "## Select a Glyph ID below\n",
    "\n",
    "A CodeMirror edit will open that provides YAML-ified syntax of the chosen glyph. Only valid changes to the\n",
    "glyph with be accepted bcause Bokeh has awesome type checking.\n",
    "\n",
    "\"\"\")\n",
    "\n",
    "buttons = IPython.display.HTML(jinja2.Template(\"\"\"\n",
    "<div class=\"btn-group\" role=\"group\" aria-label=\"...\">\n",
    "{% for i, ref in __builtin__.enumerate( refs ) %}\n",
    "{% if ref.type in ['GlyphRenderer'] %}\n",
    " <button data-type=\"{{ref['type']}}\" data-id=\"{{ref['id']}}\" type=\"button\" class=\"btn btn-default\">{{ref['type']}} - {{ref['id']}}</button>\n",
    "{% endif %}\n",
    "{% endfor %}\n",
    "</div>\n",
    "<div class=\"row\" id=\"editor\"></div>\n",
    "<!---div class=\"row\" id=\"table\"></div--->\n",
    "\"\"\").render( refs = [r.ref for r in p.renderers], **globals()))\n",
    "\n",
    "edit = IPython.display.Javascript( coffee.compile(\"\"\"\n",
    "require [\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/js-yaml/3.5.2/js-yaml.min.js',\n",
    " 'https://d3js.org/d3.v3.min.js',\n",
    " 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.11.0/codemirror.min.js',\n",
    "], (yaml, d3)->\n",
    " editor = d3.select(\"#editor\")\n",
    " cm = new CodeMirror editor.node(),\n",
    " height: \"400px\"\n",
    " width: \"100%\"\n",
    " \n",
    " buttons = d3.selectAll \"button[data-type=GlyphRenderer]\"\n",
    " .datum ()-> Bokeh.Collections(@dataset.type).get @dataset.id\n",
    " \n",
    " buttons.on 'click', (renderer)->\n",
    " buttons.classed 'last-active', false\n",
    " d3.select(@).classed 'last-active', true\n",
    " \n",
    " cm.setValue yaml.dump renderer.get('glyph').attributes\n",
    " \n",
    " cm.on 'change', (doc)->\n",
    " glyph = d3.select('.last-active').datum().get('glyph')\n",
    " d3.entries yaml.load doc.getValue()\n",
    " .forEach (d)->\n",
    " glyph.set d.key, d.value\n",
    " \n",
    " d3.select('.last-active').datum().get('data_source').trigger 'change'\n",
    "\"\"\"))"
    ]
    },
    {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {
    "collapsed": true
    },
    "outputs": [],
    "source": []
    }
    ],
    "metadata": {
    "kernelspec": {
    "display_name": "Python 3",
    "language": "python",
    "name": "python3"
    },
    "language_info": {
    "codemirror_mode": {
    "name": "ipython",
    "version": 3
    },
    "file_extension": ".py",
    "mimetype": "text/x-python",
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
    "version": "3.4.4"
    }
    },
    "nbformat": 4,
    "nbformat_minor": 0
    }