j1-template 2022.5.0.rc3 → 2022.5.1.rc0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (401) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/modules/attics/generator.html +5 -13
  3. data/assets/data/banner.html +2 -2
  4. data/assets/themes/j1/adapter/js/attic.js +106 -62
  5. data/assets/themes/j1/adapter/js/masterslider.js +22 -5
  6. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +26 -1
  7. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
  8. data/assets/themes/j1/modules/backstretch/js/backstretch.js +1 -1
  9. data/assets/themes/j1/modules/backstretch/js/v2.1.16/backstretch.js +1696 -0
  10. data/assets/themes/j1/modules/backstretch/js/v2.1.16/backstretch.min.js +20 -0
  11. data/assets/themes/j1/modules/backstretch/js/v2.1.18/backstretch.js +1627 -0
  12. data/assets/themes/j1/modules/backstretch/js/v2.1.18/backstretch.min.js +20 -0
  13. data/assets/themes/j1/modules/cryptoJS/js/rc4.js +2 -2
  14. data/lib/j1/version.rb +1 -1
  15. data/lib/starter_web/Gemfile +1 -1
  16. data/lib/starter_web/README.md +440 -175
  17. data/lib/starter_web/_config.yml +3 -3
  18. data/lib/starter_web/_data/blocks/banner.yml +1 -1
  19. data/lib/starter_web/_data/modules/attics.yml +12 -0
  20. data/lib/starter_web/_data/modules/defaults/attics.yml +16 -1
  21. data/lib/starter_web/_data/modules/defaults/masterslider.yml +1 -1
  22. data/lib/starter_web/_data/modules/masterslider.yml +0 -4
  23. data/lib/starter_web/_data/modules/navigator_menu.yml +31 -25
  24. data/lib/starter_web/_includes/attributes.asciidoc +2 -0
  25. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  26. data/lib/starter_web/assets/images/modules/attics/1920x1280/ben-kolde.jpg +0 -0
  27. data/lib/starter_web/assets/images/modules/attics/1920x1280/braden-collum.jpg +0 -0
  28. data/lib/starter_web/assets/images/modules/attics/1920x1280/ev.jpg +0 -0
  29. data/lib/starter_web/assets/images/modules/attics/1920x1280/firmbee-com.jpg +0 -0
  30. data/lib/starter_web/assets/images/modules/attics/1920x1280/max-harlynking.jpg +0 -0
  31. data/lib/starter_web/assets/images/modules/attics/guillaume-bolduc-1920x1280.jpg +0 -0
  32. data/lib/starter_web/assets/images/modules/attics/spacex-1920x1280.jpg +0 -0
  33. data/lib/starter_web/assets/videos/headers/{still → present_videos/still}/underground-broadway.jpg +0 -0
  34. data/lib/starter_web/assets/videos/headers/present_videos/underground-broadway.mp4 +0 -0
  35. data/lib/starter_web/collections/asciidoc_skeletons/simple-post/_posts/yyyy-mm-dd-your-post-name.asciidoc +3 -1
  36. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +3 -0
  37. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +2 -3
  38. data/lib/starter_web/collections/posts/public/featured/_posts/2022-02-01-about-j1.adoc +3 -0
  39. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +3 -0
  40. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +3 -0
  41. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +3 -0
  42. data/lib/starter_web/index.html +41 -7
  43. data/lib/starter_web/package.json +2 -2
  44. data/lib/starter_web/pages/public/about/features.adoc +119 -0
  45. data/lib/starter_web/pages/public/about/reporting_issues.adoc +78 -0
  46. data/lib/starter_web/pages/public/about/{about_site.adoc → site.adoc} +20 -15
  47. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +3 -0
  48. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +3 -0
  49. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +3 -0
  50. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +3 -0
  51. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +4 -1
  52. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +4 -1
  53. data/lib/starter_web/pages/public/blog/navigator/archive.html +4 -1
  54. data/lib/starter_web/pages/public/blog/navigator/index.html +4 -1
  55. data/lib/starter_web/pages/public/features/general.adoc +5 -1
  56. data/lib/starter_web/pages/public/features/template.adoc +4 -0
  57. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-circular-times-table.adoc +3 -0
  58. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-common-used-widgets.adoc +3 -0
  59. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-odes-in-python.adoc +3 -0
  60. data/lib/starter_web/pages/public/jupyter/examples/localized/j1_climate-change-forecast.adoc +3 -0
  61. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_interactive_widgets.html +512 -512
  62. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets.html +629 -629
  63. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +95 -95
  64. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +93 -93
  65. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +96 -96
  66. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +70 -70
  67. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +156 -156
  68. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +95 -95
  69. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +93 -93
  70. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_odes_in_python.html +955 -955
  71. data/lib/starter_web/pages/public/learn/quickstart.adoc +4 -1
  72. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +4 -1
  73. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +16 -5
  74. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +3 -0
  75. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +3 -0
  76. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +3 -0
  77. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +3 -0
  78. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +3 -0
  79. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +3 -0
  80. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +6 -2
  81. data/lib/starter_web/pages/public/learn/where_to_go.adoc +3 -0
  82. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +3 -0
  83. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +3 -0
  84. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +3 -0
  85. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +3 -0
  86. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +9 -1
  87. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +10 -2
  88. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +3 -0
  89. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +3 -0
  90. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +3 -0
  91. data/lib/starter_web/pages/public/plans/plans.adoc +3 -0
  92. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +4 -0
  93. data/lib/starter_web/pages/public/se/se-fake.adoc +4 -0
  94. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  95. data/lib/starter_web/utilsrv/package.json +1 -1
  96. metadata +18 -365
  97. data/lib/starter_web/assets/videos/headers/still/victoria-oskolovich-on-vimeo.jpg +0 -0
  98. data/lib/starter_web/pages/public/_jupyter/docs/_includes/attributes.asciidoc +0 -67
  99. data/lib/starter_web/pages/public/_jupyter/docs/_includes/documents/j1_docs_example_static.asciidoc +0 -232
  100. data/lib/starter_web/pages/public/_jupyter/docs/binderhub.adoc +0 -631
  101. data/lib/starter_web/pages/public/_jupyter/docs/j1-nbinteract.adoc +0 -638
  102. data/lib/starter_web/pages/public/_jupyter/docs/jupyterhub.adoc +0 -248
  103. data/lib/starter_web/pages/public/_jupyter/docs/nbinteract-widget-manual.adoc +0 -928
  104. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-circular-times-table.adoc +0 -139
  105. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-common-used-widgets.adoc +0 -229
  106. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-odes-in-python.adoc +0 -112
  107. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-altair/j1-altair-visualisations.adoc +0 -142
  108. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bokeh-visualisations.adoc +0 -171
  109. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bqplot-eamples.adoc +0 -111
  110. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-plotly/j1-plotly-visualisations.adoc +0 -94
  111. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1_climate-change-forecast.adoc +0 -106
  112. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +0 -16260
  113. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_bgplot_line_plot-checkpoint.ipynb +0 -247
  114. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-Copy1-checkpoint.ipynb +0 -12382
  115. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-checkpoint.ipynb +0 -12387
  116. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-short-checkpoint.ipynb +0 -12170
  117. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_climate_change_forecast-checkpoint.ipynb +0 -1058
  118. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_docs_example_dynamic-checkpoint.ipynb +0 -14478
  119. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-Copy1-checkpoint.ipynb +0 -379
  120. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +0 -442
  121. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets-checkpoint.ipynb +0 -523
  122. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.line_charts-checkpoint.ipynb +0 -84
  123. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.questions-checkpoint.ipynb +0 -194
  124. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_chart-checkpoint.ipynb +0 -89
  125. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-Copy1-checkpoint.ipynb +0 -164
  126. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-checkpoint.ipynb +0 -173
  127. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts.1-checkpoint.ipynb +0 -256
  128. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_barcharts-checkpoint.ipynb +0 -126
  129. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_hist_chart-checkpoint.ipynb +0 -87
  130. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_chart-checkpoint.ipynb +0 -90
  131. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_charts-checkpoint.ipynb +0 -87
  132. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_multiple_choice-checkpoint.ipynb +0 -64
  133. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_short_answer-checkpoint.ipynb +0 -122
  134. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_questions-checkpoint.ipynb +0 -181
  135. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_chart-checkpoint.ipynb +0 -89
  136. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_charts-checkpoint.ipynb +0 -175
  137. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_drag_chart-checkpoint.ipynb +0 -87
  138. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_ode_selected-checkpoint.ipynb +0 -14478
  139. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_odes_in_python-checkpoint.ipynb +0 -15227
  140. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/factor_by_factor.mp4 +0 -0
  141. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_circular_times_table.ipynb +0 -12382
  142. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_climate_change_forecast.ipynb +0 -1058
  143. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_docs_example_dynamic.ipynb +0 -14478
  144. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_interactive_widgets.ipynb +0 -442
  145. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets.ipynb +0 -523
  146. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_bar_chart.ipynb +0 -89
  147. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_hist_chart.ipynb +0 -87
  148. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_line_chart.ipynb +0 -90
  149. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_multiple_choice.ipynb +0 -64
  150. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_short_answer.ipynb +0 -122
  151. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_chart.ipynb +0 -89
  152. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_drag_chart.ipynb +0 -87
  153. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_odes_in_python.ipynb +0 -15227
  154. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/line_by_line.mp4 +0 -0
  155. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/point_by_point.mp4 +0 -0
  156. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +0 -16296
  157. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_non_interactive-checkpoint.ipynb +0 -15385
  158. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_interactive.ipynb +0 -16296
  159. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_non_interactive.ipynb +0 -15385
  160. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/00 - Introduction and Setup-checkpoint.ipynb +0 -717
  161. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/01 - Basic Plotting-checkpoint.ipynb +0 -1381
  162. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/02 - Styling and Theming-checkpoint.ipynb +0 -1440
  163. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/03 - Data Sources and Transformations-checkpoint.ipynb +0 -927
  164. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/04 - Adding Annotations-checkpoint.ipynb +0 -1105
  165. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/05 - Presentation Layouts-checkpoint.ipynb +0 -578
  166. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/06 - Linking and Interactions-checkpoint.ipynb +0 -1196
  167. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/07 - Bar and Categorical Data Plots-checkpoint.ipynb +0 -1681
  168. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/08 - Graph and Network Plots-checkpoint.ipynb +0 -680
  169. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/09 - Geographic Plots-checkpoint.ipynb +0 -693
  170. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/10 - Exporting and Embedding-checkpoint.ipynb +0 -751
  171. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/11 - Running Bokeh Applications-checkpoint.ipynb +0 -770
  172. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/bokeh_tut_00_introduction_and_setup-checkpoint.ipynb +0 -666
  173. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_01_basic_plotting-checkpoint.ipynb +0 -1365
  174. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_02_styling_and_theming-checkpoint.ipynb +0 -1405
  175. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_03_data_sources_and_transformations-checkpoint.ipynb +0 -856
  176. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_04_adding_annotations-checkpoint.ipynb +0 -1167
  177. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_05_presentation_layouts-checkpoint.ipynb +0 -601
  178. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_06_linking_and_interactions-checkpoint.ipynb +0 -1356
  179. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_07_bar_and_categorical_data_plots-checkpoint.ipynb +0 -1742
  180. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_08_graph_and_network_plots-checkpoint.ipynb +0 -625
  181. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_09_geographic_plots-checkpoint.ipynb +0 -685
  182. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.ipynb +0 -726
  183. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.org +0 -726
  184. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding.new-checkpoint.ipynb +0 -560
  185. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_11_running_bokeh_applications-checkpoint.ipynb +0 -716
  186. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_01_basic_plotting.ipynb +0 -1365
  187. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_02_styling_and_theming.ipynb +0 -1405
  188. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_03_data_sources_and_transformations.ipynb +0 -856
  189. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_04_adding_annotations.ipynb +0 -1167
  190. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_05_presentation_layouts.ipynb +0 -601
  191. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_06_linking_and_interactions.ipynb +0 -1356
  192. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_07_bar_and_categorical_data_plots.ipynb +0 -1742
  193. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_08_graph_and_network_plots.ipynb +0 -625
  194. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_09_geographic_plots.ipynb +0 -685
  195. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/.ipynb_checkpoints/j1_mathplot_vs_bqplot-checkpoint.ipynb +0 -336
  196. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/advanced/Feature_Vector_Distribution-Iris-Digits.ipynb +0 -433
  197. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_bgplot_line_plot.ipynb +0 -244
  198. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_circular_times_table-short.ipynb +0 -12170
  199. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_mathplot_vs_bqplot.ipynb +0 -336
  200. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Index-checkpoint.ipynb +0 -163
  201. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Tutorials-checkpoint.ipynb +0 -51
  202. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Advanced Plotting.ipynb +0 -289
  203. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Animations.ipynb +0 -266
  204. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Axis Properties.ipynb +0 -396
  205. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Plotting Dates.ipynb +0 -318
  206. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/Time Series.ipynb +0 -158
  207. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/spx_prices.csv +0 -6799
  208. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Feature_Vector_Distribution-Iris-Digits.ipynb +0 -470
  209. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Index.ipynb +0 -49
  210. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Logs Analytics/Logs Dashboard.ipynb +0 -378
  211. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Mobile Patent Suits.ipynb +0 -123
  212. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Neural Network.ipynb +0 -177
  213. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Outlier Detection.ipynb +0 -311
  214. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Bubble Chart.ipynb +0 -255
  215. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Choropleth.ipynb +0 -275
  216. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/nations.json +0 -1
  217. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/world_map_codes.csv +0 -234
  218. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Basic Plotting-checkpoint.ipynb +0 -186
  219. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Pyplot-checkpoint.ipynb +0 -794
  220. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Untitled-checkpoint.ipynb +0 -323
  221. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Basic Plotting.ipynb +0 -261
  222. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Pyplot.ipynb +0 -1489
  223. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Index.ipynb +0 -163
  224. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Interaction Layer.ipynb +0 -966
  225. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Mark Interactions.ipynb +0 -476
  226. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Selectors.ipynb +0 -427
  227. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Introduction.ipynb +0 -528
  228. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bars.ipynb +0 -480
  229. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bins.ipynb +0 -217
  230. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Boxplot.ipynb +0 -253
  231. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Candles.ipynb +0 -225
  232. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/FlexLine.ipynb +0 -123
  233. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Graph.ipynb +0 -357
  234. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/GridHeatMap.ipynb +0 -422
  235. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/HeatMap.ipynb +0 -157
  236. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Hist.ipynb +0 -176
  237. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Image.ipynb +0 -195
  238. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Label.ipynb +0 -189
  239. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Lines.ipynb +0 -565
  240. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Map.ipynb +0 -182
  241. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Market Map.ipynb +0 -315
  242. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Pie.ipynb +0 -465
  243. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Scatter.ipynb +0 -835
  244. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bars.ipynb +0 -362
  245. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bins.ipynb +0 -252
  246. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Boxplot.ipynb +0 -273
  247. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Candles.ipynb +0 -242
  248. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/GridHeatMap.ipynb +0 -417
  249. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/HeatMap.ipynb +0 -155
  250. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Hist.ipynb +0 -238
  251. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Image.ipynb +0 -152
  252. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Label.ipynb +0 -206
  253. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Lines.ipynb +0 -474
  254. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Map.ipynb +0 -181
  255. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Pie.ipynb +0 -310
  256. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Scatter.ipynb +0 -702
  257. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Scales/Color Scales.ipynb +0 -495
  258. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Feature_Vector_Distribution-Iris-Digits-checkpoint.ipynb +0 -433
  259. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Linking Plots With Widgets-checkpoint.ipynb +0 -326
  260. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-Copy1-checkpoint.ipynb +0 -177
  261. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-checkpoint.ipynb +0 -177
  262. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Brush Interval Selector.ipynb +0 -154
  263. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Fast Interval Selector.ipynb +0 -152
  264. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density Widget.ipynb +0 -128
  265. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density.ipynb +0 -113
  266. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Linking Plots With Widgets.ipynb +0 -326
  267. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Object Model.ipynb +0 -179
  268. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Pyplot.ipynb +0 -174
  269. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Updating Plots.ipynb +0 -177
  270. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials.ipynb +0 -51
  271. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/country_codes.csv +0 -213
  272. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/gdp_per_capita.csv +0 -56
  273. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/state_codes.csv +0 -52
  274. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/trees.jpg +0 -0
  275. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +0 -247
  276. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_variability_of_the_sample_mean-checkpoint.ipynb +0 -323
  277. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +0 -387
  278. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_interactive_questions-checkpoint.ipynb +0 -185
  279. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_layout-checkpoint.ipynb +0 -384
  280. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_interact-checkpoint.ipynb +0 -254
  281. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_monty_hall-checkpoint.ipynb +0 -732
  282. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_central_limit_theorem.ipynb +0 -247
  283. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_correlation.ipynb +0 -651
  284. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_empirical_distributions.ipynb +0 -773
  285. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_linear_regression.ipynb +0 -111
  286. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_probability_distribution_plots.ipynb +0 -199
  287. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_sampling_from_a_population.ipynb +0 -421
  288. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_variability_of_the_sample_mean.ipynb +0 -323
  289. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_graphing.ipynb +0 -387
  290. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_interactive_questions.ipynb +0 -185
  291. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_layout.ipynb +0 -384
  292. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_interact.ipynb +0 -254
  293. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_monty_hall.ipynb +0 -732
  294. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Advanced Plotting.html +0 -373
  295. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Animations.html +0 -361
  296. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Axis Properties.html +0 -569
  297. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bars.html +0 -487
  298. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Basic Plotting.html +0 -341
  299. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bins.html +0 -259
  300. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Boxplot.html +0 -277
  301. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Brush Interval Selector.html +0 -182
  302. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bubble Chart.html +0 -299
  303. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Candles.html +0 -252
  304. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Choropleth.html +0 -318
  305. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Color Scales.html +0 -514
  306. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Fast Interval Selector.html +0 -182
  307. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Feature_Vector_Distribution-Iris-Digits.html +0 -479
  308. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/FlexLine.html +0 -128
  309. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density Widget.html +0 -152
  310. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density.html +0 -137
  311. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Graph.html +0 -484
  312. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/GridHeatMap.html +0 -483
  313. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/HeatMap.html +0 -170
  314. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Hist.html +0 -349
  315. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Image.html +0 -177
  316. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Index.html +0 -29
  317. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Interaction Layer.html +0 -1372
  318. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Introduction.html +0 -749
  319. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Label.html +0 -268
  320. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Lines.html +0 -704
  321. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Linking Plots With Widgets.html +0 -389
  322. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Logs Dashboard.html +0 -455
  323. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Map.html +0 -229
  324. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mark Interactions.html +0 -613
  325. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Market Map.html +0 -413
  326. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mobile Patent Suits.html +0 -131
  327. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Neural Network.html +0 -190
  328. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Object Model.html +0 -193
  329. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Outlier Detection.html +0 -363
  330. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pie.html +0 -367
  331. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Plotting Dates.html +0 -337
  332. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pyplot.html +0 -196
  333. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Scatter.html +0 -948
  334. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Selectors.html +0 -489
  335. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Time Series.html +0 -173
  336. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Tutorials.html +0 -40
  337. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Updating Plots.html +0 -228
  338. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_interactive.html +0 -2216
  339. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_non_interactive.html +0 -1170
  340. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bgplot_line_plot.html +0 -318
  341. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_01_basic_plotting.html +0 -1479
  342. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_02_styling_and_theming.html +0 -1524
  343. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_03_data_sources_and_transformations.html +0 -983
  344. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_04_adding_annotations.html +0 -1280
  345. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_05_presentation_layouts.html +0 -660
  346. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_06_linking_and_interactions.html +0 -1563
  347. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_07_bar_and_categorical_data_plots.html +0 -1888
  348. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_08_graph_and_network_plots.html +0 -689
  349. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_09_geographic_plots.html +0 -767
  350. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table-short.html +0 -475
  351. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table.html +0 -747
  352. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_climate_change_forecast.html +0 -1250
  353. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_docs_example_dynamic.html +0 -186
  354. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_interactive_widgets.html +0 -512
  355. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_mathplot_vs_bqplot.html +0 -407
  356. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets.html +0 -629
  357. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +0 -95
  358. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +0 -93
  359. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +0 -96
  360. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +0 -70
  361. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +0 -156
  362. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +0 -95
  363. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +0 -93
  364. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_odes_in_python.html +0 -955
  365. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_central_limit_theorem.html +0 -290
  366. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_correlation.html +0 -818
  367. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_empirical_distributions.html +0 -351
  368. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_linear_regression.html +0 -106
  369. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_probability_distribution_plots.html +0 -228
  370. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_sampling_from_a_population.html +0 -518
  371. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_variability_of_the_sample_mean.html +0 -372
  372. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +0 -473
  373. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_interactive_questions.html +0 -242
  374. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_layout.html +0 -496
  375. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_interact.html +0 -329
  376. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_monty_hall.html +0 -866
  377. data/lib/starter_web/pages/public/_jupyter/where_to_go.adoc +0 -270
  378. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_images.adoc +0 -313
  379. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_videos.adoc +0 -281
  380. data/lib/starter_web/pages/public/learn/_roundtrip/200_typography.adoc +0 -253
  381. data/lib/starter_web/pages/public/learn/_roundtrip/300_icon_fonts.adoc +0 -579
  382. data/lib/starter_web/pages/public/learn/_roundtrip/400_asciidoc_extensions.adoc +0 -718
  383. data/lib/starter_web/pages/public/learn/_roundtrip/410_bs_modals_extentions.adoc +0 -91
  384. data/lib/starter_web/pages/public/learn/_roundtrip/420_responsive_tables_extensions.adoc +0 -420
  385. data/lib/starter_web/pages/public/learn/_roundtrip/500_themes.adoc +0 -250
  386. data/lib/starter_web/pages/public/learn/_roundtrip/600_quicksearch.adoc +0 -425
  387. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/attributes.asciidoc +0 -118
  388. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/100_gistblock.asciidoc +0 -28
  389. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_info.asciidoc +0 -14
  390. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_left_warning.asciidoc +0 -11
  391. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_right_danger.asciidoc +0 -11
  392. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_central_success.asciidoc +0 -11
  393. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_left_info.asciidoc +0 -11
  394. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_right_success.asciidoc +0 -11
  395. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_table_bs_modal_examples.asciidoc +0 -47
  396. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_info.asciidoc +0 -11
  397. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_left_info.asciidoc +0 -11
  398. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_right_success.asciidoc +0 -11
  399. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/419_advanced_modals_demo.asciidoc +0 -337
  400. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/tables/bs_modal_examples.asciidoc +0 -47
  401. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/google-ad.js +0 -130
@@ -1,1372 +0,0 @@
1
- <div class="cell text_cell">
2
- <button class="js-nbinteract-widget">
3
- Loading widgets...
4
- </button>
5
- </div>
6
-
7
-
8
-
9
-
10
-
11
-
12
- <div class="
13
- cell border-box-sizing code_cell rendered">
14
- <div class="input">
15
-
16
- <div class="inner_cell">
17
- <div class="input_area">
18
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="k">as</span> <span class="nn">pd</span>
19
- <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
20
-
21
- <span class="n">symbol</span> <span class="o">=</span> <span class="s2">&quot;Security 1&quot;</span>
22
- <span class="n">symbol2</span> <span class="o">=</span> <span class="s2">&quot;Security 2&quot;</span>
23
- </pre></div>
24
-
25
- </div>
26
- </div>
27
- </div>
28
-
29
- </div>
30
-
31
-
32
-
33
- <div class="
34
- cell border-box-sizing code_cell rendered">
35
- <div class="input">
36
-
37
- <div class="inner_cell">
38
- <div class="input_area">
39
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">price_data</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">DataFrame</span><span class="p">(</span>
40
- <span class="n">np</span><span class="o">.</span><span class="n">cumsum</span><span class="p">(</span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">150</span><span class="p">,</span> <span class="mi">2</span><span class="p">)</span><span class="o">.</span><span class="n">dot</span><span class="p">([[</span><span class="mf">0.5</span><span class="p">,</span> <span class="mf">0.4</span><span class="p">],</span> <span class="p">[</span><span class="mf">0.4</span><span class="p">,</span> <span class="mf">1.0</span><span class="p">]]),</span> <span class="n">axis</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span> <span class="o">+</span> <span class="mi">100</span><span class="p">,</span>
41
- <span class="n">columns</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;Security 1&quot;</span><span class="p">,</span> <span class="s2">&quot;Security 2&quot;</span><span class="p">],</span>
42
- <span class="n">index</span><span class="o">=</span><span class="n">pd</span><span class="o">.</span><span class="n">date_range</span><span class="p">(</span><span class="n">start</span><span class="o">=</span><span class="s2">&quot;01-01-2007&quot;</span><span class="p">,</span> <span class="n">periods</span><span class="o">=</span><span class="mi">150</span><span class="p">),</span>
43
- <span class="p">)</span>
44
-
45
- <span class="n">dates_actual</span> <span class="o">=</span> <span class="n">price_data</span><span class="o">.</span><span class="n">index</span><span class="o">.</span><span class="n">values</span>
46
- <span class="n">prices</span> <span class="o">=</span> <span class="n">price_data</span><span class="p">[</span><span class="n">symbol</span><span class="p">]</span><span class="o">.</span><span class="n">values</span>
47
- </pre></div>
48
-
49
- </div>
50
- </div>
51
- </div>
52
-
53
- </div>
54
-
55
-
56
-
57
- <div class="
58
- cell border-box-sizing code_cell rendered">
59
- <div class="input">
60
-
61
- <div class="inner_cell">
62
- <div class="input_area">
63
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">bqplot</span> <span class="kn">import</span> <span class="n">DateScale</span><span class="p">,</span> <span class="n">LinearScale</span><span class="p">,</span> <span class="n">Axis</span><span class="p">,</span> <span class="n">Lines</span><span class="p">,</span> <span class="n">Scatter</span><span class="p">,</span> <span class="n">Bars</span><span class="p">,</span> <span class="n">Hist</span><span class="p">,</span> <span class="n">Figure</span>
64
- <span class="kn">from</span> <span class="nn">bqplot.interacts</span> <span class="kn">import</span> <span class="p">(</span>
65
- <span class="n">FastIntervalSelector</span><span class="p">,</span>
66
- <span class="n">IndexSelector</span><span class="p">,</span>
67
- <span class="n">BrushIntervalSelector</span><span class="p">,</span>
68
- <span class="n">BrushSelector</span><span class="p">,</span>
69
- <span class="n">MultiSelector</span><span class="p">,</span>
70
- <span class="n">LassoSelector</span><span class="p">,</span>
71
- <span class="n">PanZoom</span><span class="p">,</span>
72
- <span class="n">HandDraw</span><span class="p">,</span>
73
- <span class="p">)</span>
74
- <span class="kn">from</span> <span class="nn">traitlets</span> <span class="kn">import</span> <span class="n">link</span>
75
-
76
- <span class="kn">from</span> <span class="nn">ipywidgets</span> <span class="kn">import</span> <span class="n">ToggleButtons</span><span class="p">,</span> <span class="n">VBox</span><span class="p">,</span> <span class="n">HTML</span>
77
- </pre></div>
78
-
79
- </div>
80
- </div>
81
- </div>
82
-
83
- </div>
84
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
85
- <div class="text_cell_render border-box-sizing rendered_html">
86
- <h1 id="Line-Chart-Selectors">Line Chart Selectors<a class="anchor-link" href="#Line-Chart-Selectors">&#182;</a></h1>
87
- </div>
88
- </div>
89
- </div>
90
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
91
- <div class="text_cell_render border-box-sizing rendered_html">
92
- <h2 id="Fast-Interval-Selector">Fast Interval Selector<a class="anchor-link" href="#Fast-Interval-Selector">&#182;</a></h2>
93
- </div>
94
- </div>
95
- </div>
96
-
97
-
98
-
99
- <div class="
100
- cell border-box-sizing code_cell rendered">
101
- <div class="input">
102
-
103
- <div class="inner_cell">
104
- <div class="input_area">
105
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## First we define a Figure</span>
106
- <span class="n">dt_x_fast</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">()</span>
107
- <span class="n">lin_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
108
-
109
- <span class="n">x_ax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s2">&quot;Index&quot;</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="n">dt_x_fast</span><span class="p">)</span>
110
- <span class="n">x_ay</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span> <span class="o">+</span> <span class="s2">&quot; Price&quot;</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">lin_y</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
111
- <span class="n">lc</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
112
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">prices</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">dt_x_fast</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lin_y</span><span class="p">},</span> <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;orange&quot;</span><span class="p">]</span>
113
- <span class="p">)</span>
114
- <span class="n">lc_2</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
115
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">[</span><span class="mi">50</span><span class="p">:],</span>
116
- <span class="n">y</span><span class="o">=</span><span class="n">prices</span><span class="p">[</span><span class="mi">50</span><span class="p">:]</span> <span class="o">+</span> <span class="mi">2</span><span class="p">,</span>
117
- <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">dt_x_fast</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lin_y</span><span class="p">},</span>
118
- <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;blue&quot;</span><span class="p">],</span>
119
- <span class="p">)</span>
120
- </pre></div>
121
-
122
- </div>
123
- </div>
124
- </div>
125
-
126
- </div>
127
-
128
-
129
-
130
- <div class="
131
- cell border-box-sizing code_cell rendered">
132
- <div class="input">
133
-
134
- <div class="inner_cell">
135
- <div class="input_area">
136
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Next we define the type of selector we would like</span>
137
- <span class="n">intsel_fast</span> <span class="o">=</span> <span class="n">FastIntervalSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x_fast</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc</span><span class="p">,</span> <span class="n">lc_2</span><span class="p">])</span>
138
- </pre></div>
139
-
140
- </div>
141
- </div>
142
- </div>
143
-
144
- </div>
145
-
146
-
147
-
148
- <div class="
149
- cell border-box-sizing code_cell rendered">
150
- <div class="input">
151
-
152
- <div class="inner_cell">
153
- <div class="input_area">
154
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now, we define a function that will be called when the FastIntervalSelector is interacted with</span>
155
- <span class="k">def</span> <span class="nf">fast_interval_change_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
156
- <span class="n">db_fast</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="s2">&quot;The selected period is &quot;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">change</span><span class="o">.</span><span class="n">new</span><span class="p">)</span>
157
- </pre></div>
158
-
159
- </div>
160
- </div>
161
- </div>
162
-
163
- </div>
164
-
165
-
166
-
167
- <div class="
168
- cell border-box-sizing code_cell rendered">
169
- <div class="input">
170
-
171
- <div class="inner_cell">
172
- <div class="input_area">
173
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now we connect the selectors to that function</span>
174
- <span class="n">intsel_fast</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">fast_interval_change_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
175
- </pre></div>
176
-
177
- </div>
178
- </div>
179
- </div>
180
-
181
- </div>
182
-
183
-
184
-
185
- <div class="
186
- cell border-box-sizing code_cell rendered">
187
- <div class="input">
188
-
189
- <div class="inner_cell">
190
- <div class="input_area">
191
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## We use the HTML widget to see the value of what we are selecting and modify it when an interaction is performed</span>
192
- <span class="c1">## on the selector</span>
193
- <span class="n">db_fast</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
194
- <span class="n">db_fast</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="s2">&quot;The selected period is &quot;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">intsel_fast</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
195
-
196
- <span class="n">fig_fast_intsel</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
197
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc</span><span class="p">,</span> <span class="n">lc_2</span><span class="p">],</span>
198
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">x_ax</span><span class="p">,</span> <span class="n">x_ay</span><span class="p">],</span>
199
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Fast Interval Selector Example&quot;</span><span class="p">,</span>
200
- <span class="n">interaction</span><span class="o">=</span><span class="n">intsel_fast</span><span class="p">,</span>
201
- <span class="p">)</span> <span class="c1"># This is where we assign the interaction to this particular Figure</span>
202
-
203
- <span class="n">VBox</span><span class="p">([</span><span class="n">db_fast</span><span class="p">,</span> <span class="n">fig_fast_intsel</span><span class="p">])</span>
204
- </pre></div>
205
-
206
- </div>
207
- </div>
208
- </div>
209
-
210
- </div>
211
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
212
- <div class="text_cell_render border-box-sizing rendered_html">
213
- <h2 id="Index-Selector">Index Selector<a class="anchor-link" href="#Index-Selector">&#182;</a></h2>
214
- </div>
215
- </div>
216
- </div>
217
-
218
-
219
-
220
- <div class="
221
- cell border-box-sizing code_cell rendered">
222
- <div class="input">
223
-
224
- <div class="inner_cell">
225
- <div class="input_area">
226
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">db_index</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">(</span><span class="n">value</span><span class="o">=</span><span class="s2">&quot;[]&quot;</span><span class="p">)</span>
227
- </pre></div>
228
-
229
- </div>
230
- </div>
231
- </div>
232
-
233
- </div>
234
-
235
-
236
-
237
- <div class="
238
- cell border-box-sizing code_cell rendered">
239
- <div class="input">
240
-
241
- <div class="inner_cell">
242
- <div class="input_area">
243
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now we try a selector made to select all the y-values associated with a single x-value</span>
244
- <span class="n">index_sel</span> <span class="o">=</span> <span class="n">IndexSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x_fast</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc</span><span class="p">,</span> <span class="n">lc_2</span><span class="p">])</span>
245
- </pre></div>
246
-
247
- </div>
248
- </div>
249
- </div>
250
-
251
- </div>
252
-
253
-
254
-
255
- <div class="
256
- cell border-box-sizing code_cell rendered">
257
- <div class="input">
258
-
259
- <div class="inner_cell">
260
- <div class="input_area">
261
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now, we define a function that will be called when the selectors are interacted with</span>
262
- <span class="k">def</span> <span class="nf">index_change_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
263
- <span class="n">db_index</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="s2">&quot;The selected date is &quot;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">change</span><span class="o">.</span><span class="n">new</span><span class="p">)</span>
264
- </pre></div>
265
-
266
- </div>
267
- </div>
268
- </div>
269
-
270
- </div>
271
-
272
-
273
-
274
- <div class="
275
- cell border-box-sizing code_cell rendered">
276
- <div class="input">
277
-
278
- <div class="inner_cell">
279
- <div class="input_area">
280
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">index_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">index_change_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
281
- </pre></div>
282
-
283
- </div>
284
- </div>
285
- </div>
286
-
287
- </div>
288
-
289
-
290
-
291
- <div class="
292
- cell border-box-sizing code_cell rendered">
293
- <div class="input">
294
-
295
- <div class="inner_cell">
296
- <div class="input_area">
297
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">fig_index_sel</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
298
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc</span><span class="p">,</span> <span class="n">lc_2</span><span class="p">],</span>
299
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">x_ax</span><span class="p">,</span> <span class="n">x_ay</span><span class="p">],</span>
300
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Index Selector Example&quot;</span><span class="p">,</span>
301
- <span class="n">interaction</span><span class="o">=</span><span class="n">index_sel</span><span class="p">,</span>
302
- <span class="p">)</span>
303
- <span class="n">VBox</span><span class="p">([</span><span class="n">db_index</span><span class="p">,</span> <span class="n">fig_index_sel</span><span class="p">])</span>
304
- </pre></div>
305
-
306
- </div>
307
- </div>
308
- </div>
309
-
310
- </div>
311
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
312
- <div class="text_cell_render border-box-sizing rendered_html">
313
- <h2 id="Returning-indexes-of-selected-values">Returning indexes of selected values<a class="anchor-link" href="#Returning-indexes-of-selected-values">&#182;</a></h2>
314
- </div>
315
- </div>
316
- </div>
317
-
318
-
319
-
320
- <div class="
321
- cell border-box-sizing code_cell rendered">
322
- <div class="input">
323
-
324
- <div class="inner_cell">
325
- <div class="input_area">
326
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">datetime</span> <span class="kn">import</span> <span class="n">datetime</span> <span class="k">as</span> <span class="n">py_dtime</span>
327
-
328
- <span class="n">dt_x_index</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">datetime64</span><span class="p">(</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2006</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span>
329
- <span class="n">lin_y2</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
330
-
331
- <span class="n">lc2_index</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">prices</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">dt_x_index</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lin_y2</span><span class="p">})</span>
332
-
333
- <span class="n">x_ax1</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s2">&quot;Date&quot;</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="n">dt_x_index</span><span class="p">)</span>
334
- <span class="n">x_ay2</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span> <span class="o">+</span> <span class="s2">&quot; Price&quot;</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">lin_y2</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
335
- </pre></div>
336
-
337
- </div>
338
- </div>
339
- </div>
340
-
341
- </div>
342
-
343
-
344
-
345
- <div class="
346
- cell border-box-sizing code_cell rendered">
347
- <div class="input">
348
-
349
- <div class="inner_cell">
350
- <div class="input_area">
351
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">intsel_date</span> <span class="o">=</span> <span class="n">FastIntervalSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x_index</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2_index</span><span class="p">])</span>
352
- </pre></div>
353
-
354
- </div>
355
- </div>
356
- </div>
357
-
358
- </div>
359
-
360
-
361
-
362
- <div class="
363
- cell border-box-sizing code_cell rendered">
364
- <div class="input">
365
-
366
- <div class="inner_cell">
367
- <div class="input_area">
368
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">db_date</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
369
- <span class="n">db_date</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">intsel_date</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
370
- </pre></div>
371
-
372
- </div>
373
- </div>
374
- </div>
375
-
376
- </div>
377
-
378
-
379
-
380
- <div class="
381
- cell border-box-sizing code_cell rendered">
382
- <div class="input">
383
-
384
- <div class="inner_cell">
385
- <div class="input_area">
386
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now, we define a function that will be called when the selectors are interacted with - a callback</span>
387
- <span class="k">def</span> <span class="nf">date_interval_change_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
388
- <span class="n">db_date</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">change</span><span class="o">.</span><span class="n">new</span><span class="p">)</span>
389
- </pre></div>
390
-
391
- </div>
392
- </div>
393
- </div>
394
-
395
- </div>
396
-
397
-
398
-
399
- <div class="
400
- cell border-box-sizing code_cell rendered">
401
- <div class="input">
402
-
403
- <div class="inner_cell">
404
- <div class="input_area">
405
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Notice here that we call the observe on the Mark lc2_index rather than on the selector intsel_date</span>
406
- <span class="n">lc2_index</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">date_interval_change_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
407
-
408
- <span class="n">fig_date_mark</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
409
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2_index</span><span class="p">],</span>
410
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">x_ax1</span><span class="p">,</span> <span class="n">x_ay2</span><span class="p">],</span>
411
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Fast Interval Selector Selected Indices Example&quot;</span><span class="p">,</span>
412
- <span class="n">interaction</span><span class="o">=</span><span class="n">intsel_date</span><span class="p">,</span>
413
- <span class="p">)</span>
414
-
415
- <span class="n">VBox</span><span class="p">([</span><span class="n">db_date</span><span class="p">,</span> <span class="n">fig_date_mark</span><span class="p">])</span>
416
- </pre></div>
417
-
418
- </div>
419
- </div>
420
- </div>
421
-
422
- </div>
423
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
424
- <div class="text_cell_render border-box-sizing rendered_html">
425
- <h2 id="Brush-Selector">Brush Selector<a class="anchor-link" href="#Brush-Selector">&#182;</a></h2>
426
- </div>
427
- </div>
428
- </div>
429
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
430
- <div class="text_cell_render border-box-sizing rendered_html">
431
- <h3 id="We-can-do-the-same-with-any-type-of-selector">We can do the same with any type of selector<a class="anchor-link" href="#We-can-do-the-same-with-any-type-of-selector">&#182;</a></h3>
432
- </div>
433
- </div>
434
- </div>
435
-
436
-
437
-
438
- <div class="
439
- cell border-box-sizing code_cell rendered">
440
- <div class="input">
441
-
442
- <div class="inner_cell">
443
- <div class="input_area">
444
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Defining a new Figure</span>
445
- <span class="n">dt_x_brush</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">datetime64</span><span class="p">(</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2006</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span>
446
- <span class="n">lin_y2_brush</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
447
-
448
- <span class="n">lc3_brush</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">prices</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">dt_x_brush</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lin_y2_brush</span><span class="p">})</span>
449
-
450
- <span class="n">x_ax_brush</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s2">&quot;Date&quot;</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="n">dt_x_brush</span><span class="p">)</span>
451
- <span class="n">x_ay_brush</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span> <span class="o">+</span> <span class="s2">&quot; Price&quot;</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">lin_y2_brush</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
452
- </pre></div>
453
-
454
- </div>
455
- </div>
456
- </div>
457
-
458
- </div>
459
-
460
-
461
-
462
- <div class="
463
- cell border-box-sizing code_cell rendered">
464
- <div class="input">
465
-
466
- <div class="inner_cell">
467
- <div class="input_area">
468
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">db_brush</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">(</span><span class="n">value</span><span class="o">=</span><span class="s2">&quot;[]&quot;</span><span class="p">)</span>
469
- </pre></div>
470
-
471
- </div>
472
- </div>
473
- </div>
474
-
475
- </div>
476
-
477
-
478
-
479
- <div class="
480
- cell border-box-sizing code_cell rendered">
481
- <div class="input">
482
-
483
- <div class="inner_cell">
484
- <div class="input_area">
485
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">brushsel_date</span> <span class="o">=</span> <span class="n">BrushIntervalSelector</span><span class="p">(</span>
486
- <span class="n">scale</span><span class="o">=</span><span class="n">dt_x_brush</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc3_brush</span><span class="p">],</span> <span class="n">color</span><span class="o">=</span><span class="s2">&quot;FireBrick&quot;</span>
487
- <span class="p">)</span>
488
- </pre></div>
489
-
490
- </div>
491
- </div>
492
- </div>
493
-
494
- </div>
495
-
496
-
497
-
498
- <div class="
499
- cell border-box-sizing code_cell rendered">
500
- <div class="input">
501
-
502
- <div class="inner_cell">
503
- <div class="input_area">
504
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Now, we define a function that will be called when the selectors are interacted with - a callback</span>
505
- <span class="k">def</span> <span class="nf">date_brush_change_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
506
- <span class="n">db_brush</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">change</span><span class="o">.</span><span class="n">new</span><span class="p">)</span>
507
- </pre></div>
508
-
509
- </div>
510
- </div>
511
- </div>
512
-
513
- </div>
514
-
515
-
516
-
517
- <div class="
518
- cell border-box-sizing code_cell rendered">
519
- <div class="input">
520
-
521
- <div class="inner_cell">
522
- <div class="input_area">
523
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">lc3_brush</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">date_brush_change_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
524
- </pre></div>
525
-
526
- </div>
527
- </div>
528
- </div>
529
-
530
- </div>
531
-
532
-
533
-
534
- <div class="
535
- cell border-box-sizing code_cell rendered">
536
- <div class="input">
537
-
538
- <div class="inner_cell">
539
- <div class="input_area">
540
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">fig_brush_sel</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
541
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc3_brush</span><span class="p">],</span>
542
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">x_ax_brush</span><span class="p">,</span> <span class="n">x_ay_brush</span><span class="p">],</span>
543
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Brush Selector Selected Indices Example&quot;</span><span class="p">,</span>
544
- <span class="n">interaction</span><span class="o">=</span><span class="n">brushsel_date</span><span class="p">,</span>
545
- <span class="p">)</span>
546
-
547
- <span class="n">VBox</span><span class="p">([</span><span class="n">db_brush</span><span class="p">,</span> <span class="n">fig_brush_sel</span><span class="p">])</span>
548
- </pre></div>
549
-
550
- </div>
551
- </div>
552
- </div>
553
-
554
- </div>
555
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
556
- <div class="text_cell_render border-box-sizing rendered_html">
557
- <h1 id="Scatter-Chart-Selectors">Scatter Chart Selectors<a class="anchor-link" href="#Scatter-Chart-Selectors">&#182;</a></h1>
558
- </div>
559
- </div>
560
- </div>
561
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
562
- <div class="text_cell_render border-box-sizing rendered_html">
563
- <h2 id="Brush-Selector">Brush Selector<a class="anchor-link" href="#Brush-Selector">&#182;</a></h2>
564
- </div>
565
- </div>
566
- </div>
567
-
568
-
569
-
570
- <div class="
571
- cell border-box-sizing code_cell rendered">
572
- <div class="input">
573
-
574
- <div class="inner_cell">
575
- <div class="input_area">
576
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">date_fmt</span> <span class="o">=</span> <span class="s2">&quot;%m-</span><span class="si">%d</span><span class="s2">-%Y&quot;</span>
577
-
578
- <span class="n">sec2_data</span> <span class="o">=</span> <span class="n">price_data</span><span class="p">[</span><span class="n">symbol2</span><span class="p">]</span><span class="o">.</span><span class="n">values</span>
579
- <span class="n">dates</span> <span class="o">=</span> <span class="n">price_data</span><span class="o">.</span><span class="n">index</span><span class="o">.</span><span class="n">values</span>
580
- </pre></div>
581
-
582
- </div>
583
- </div>
584
- </div>
585
-
586
- </div>
587
-
588
-
589
-
590
- <div class="
591
- cell border-box-sizing code_cell rendered">
592
- <div class="input">
593
-
594
- <div class="inner_cell">
595
- <div class="input_area">
596
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">sc_x</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
597
- <span class="n">sc_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
598
-
599
- <span class="n">scatt</span> <span class="o">=</span> <span class="n">Scatter</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">prices</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">sc_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">sc_y</span><span class="p">})</span>
600
-
601
- <span class="n">sc_xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">sc_x</span><span class="p">)</span>
602
- <span class="n">sc_yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol2</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">sc_y</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
603
- </pre></div>
604
-
605
- </div>
606
- </div>
607
- </div>
608
-
609
- </div>
610
-
611
-
612
-
613
- <div class="
614
- cell border-box-sizing code_cell rendered">
615
- <div class="input">
616
-
617
- <div class="inner_cell">
618
- <div class="input_area">
619
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">br_sel</span> <span class="o">=</span> <span class="n">BrushSelector</span><span class="p">(</span><span class="n">x_scale</span><span class="o">=</span><span class="n">sc_x</span><span class="p">,</span> <span class="n">y_scale</span><span class="o">=</span><span class="n">sc_y</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">scatt</span><span class="p">],</span> <span class="n">color</span><span class="o">=</span><span class="s2">&quot;red&quot;</span><span class="p">)</span>
620
-
621
- <span class="n">db_scat_brush</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">(</span><span class="n">value</span><span class="o">=</span><span class="s2">&quot;[]&quot;</span><span class="p">)</span>
622
- </pre></div>
623
-
624
- </div>
625
- </div>
626
- </div>
627
-
628
- </div>
629
-
630
-
631
-
632
- <div class="
633
- cell border-box-sizing code_cell rendered">
634
- <div class="input">
635
-
636
- <div class="inner_cell">
637
- <div class="input_area">
638
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## call back for the selector</span>
639
- <span class="k">def</span> <span class="nf">brush_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
640
- <span class="n">db_scat_brush</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">br_sel</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
641
- </pre></div>
642
-
643
- </div>
644
- </div>
645
- </div>
646
-
647
- </div>
648
-
649
-
650
-
651
- <div class="
652
- cell border-box-sizing code_cell rendered">
653
- <div class="input">
654
-
655
- <div class="inner_cell">
656
- <div class="input_area">
657
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">br_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">brush_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;brushing&quot;</span><span class="p">])</span>
658
- </pre></div>
659
-
660
- </div>
661
- </div>
662
- </div>
663
-
664
- </div>
665
-
666
-
667
-
668
- <div class="
669
- cell border-box-sizing code_cell rendered">
670
- <div class="input">
671
-
672
- <div class="inner_cell">
673
- <div class="input_area">
674
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">fig_scat_brush</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
675
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">scatt</span><span class="p">],</span>
676
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">sc_xax</span><span class="p">,</span> <span class="n">sc_yax</span><span class="p">],</span>
677
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Scatter Chart Brush Selector Example&quot;</span><span class="p">,</span>
678
- <span class="n">interaction</span><span class="o">=</span><span class="n">br_sel</span><span class="p">,</span>
679
- <span class="p">)</span>
680
- </pre></div>
681
-
682
- </div>
683
- </div>
684
- </div>
685
-
686
- </div>
687
-
688
-
689
-
690
- <div class="
691
- cell border-box-sizing code_cell rendered">
692
- <div class="input">
693
-
694
- <div class="inner_cell">
695
- <div class="input_area">
696
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">VBox</span><span class="p">([</span><span class="n">db_scat_brush</span><span class="p">,</span> <span class="n">fig_scat_brush</span><span class="p">])</span>
697
- </pre></div>
698
-
699
- </div>
700
- </div>
701
- </div>
702
-
703
- </div>
704
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
705
- <div class="text_cell_render border-box-sizing rendered_html">
706
- <h2 id="Brush-Selector-with-Date-Values">Brush Selector with Date Values<a class="anchor-link" href="#Brush-Selector-with-Date-Values">&#182;</a></h2>
707
- </div>
708
- </div>
709
- </div>
710
-
711
-
712
-
713
- <div class="
714
- cell border-box-sizing code_cell rendered">
715
- <div class="input">
716
-
717
- <div class="inner_cell">
718
- <div class="input_area">
719
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">sc_brush_dt_x</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="n">date_format</span><span class="o">=</span><span class="n">date_fmt</span><span class="p">)</span>
720
- <span class="n">sc_brush_dt_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
721
-
722
- <span class="n">scatt2</span> <span class="o">=</span> <span class="n">Scatter</span><span class="p">(</span>
723
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">sc_brush_dt_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">sc_brush_dt_y</span><span class="p">}</span>
724
- <span class="p">)</span>
725
- </pre></div>
726
-
727
- </div>
728
- </div>
729
- </div>
730
-
731
- </div>
732
-
733
-
734
-
735
- <div class="
736
- cell border-box-sizing code_cell rendered">
737
- <div class="input">
738
-
739
- <div class="inner_cell">
740
- <div class="input_area">
741
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">br_sel_dt</span> <span class="o">=</span> <span class="n">BrushSelector</span><span class="p">(</span><span class="n">x_scale</span><span class="o">=</span><span class="n">sc_brush_dt_x</span><span class="p">,</span> <span class="n">y_scale</span><span class="o">=</span><span class="n">sc_brush_dt_y</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">scatt2</span><span class="p">])</span>
742
- </pre></div>
743
-
744
- </div>
745
- </div>
746
- </div>
747
-
748
- </div>
749
-
750
-
751
-
752
- <div class="
753
- cell border-box-sizing code_cell rendered">
754
- <div class="input">
755
-
756
- <div class="inner_cell">
757
- <div class="input_area">
758
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">db_brush_dt</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">(</span><span class="n">value</span><span class="o">=</span><span class="nb">str</span><span class="p">(</span><span class="n">br_sel_dt</span><span class="o">.</span><span class="n">selected</span><span class="p">))</span>
759
- </pre></div>
760
-
761
- </div>
762
- </div>
763
- </div>
764
-
765
- </div>
766
-
767
-
768
-
769
- <div class="
770
- cell border-box-sizing code_cell rendered">
771
- <div class="input">
772
-
773
- <div class="inner_cell">
774
- <div class="input_area">
775
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## call back for the selector</span>
776
- <span class="k">def</span> <span class="nf">brush_dt_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
777
- <span class="n">db_brush_dt</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">br_sel_dt</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
778
- </pre></div>
779
-
780
- </div>
781
- </div>
782
- </div>
783
-
784
- </div>
785
-
786
-
787
-
788
- <div class="
789
- cell border-box-sizing code_cell rendered">
790
- <div class="input">
791
-
792
- <div class="inner_cell">
793
- <div class="input_area">
794
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">br_sel_dt</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">brush_dt_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;brushing&quot;</span><span class="p">])</span>
795
- </pre></div>
796
-
797
- </div>
798
- </div>
799
- </div>
800
-
801
- </div>
802
-
803
-
804
-
805
- <div class="
806
- cell border-box-sizing code_cell rendered">
807
- <div class="input">
808
-
809
- <div class="inner_cell">
810
- <div class="input_area">
811
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">sc_xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">sc_brush_dt_x</span><span class="p">)</span>
812
- <span class="n">sc_yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol2</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">sc_brush_dt_y</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
813
- <span class="n">fig_brush_dt</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
814
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">scatt2</span><span class="p">],</span>
815
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">sc_xax</span><span class="p">,</span> <span class="n">sc_yax</span><span class="p">],</span>
816
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Brush Selector with Dates Example&quot;</span><span class="p">,</span>
817
- <span class="n">interaction</span><span class="o">=</span><span class="n">br_sel_dt</span><span class="p">,</span>
818
- <span class="p">)</span>
819
- </pre></div>
820
-
821
- </div>
822
- </div>
823
- </div>
824
-
825
- </div>
826
-
827
-
828
-
829
- <div class="
830
- cell border-box-sizing code_cell rendered">
831
- <div class="input">
832
-
833
- <div class="inner_cell">
834
- <div class="input_area">
835
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">VBox</span><span class="p">([</span><span class="n">db_brush_dt</span><span class="p">,</span> <span class="n">fig_brush_dt</span><span class="p">])</span>
836
- </pre></div>
837
-
838
- </div>
839
- </div>
840
- </div>
841
-
842
- </div>
843
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
844
- <div class="text_cell_render border-box-sizing rendered_html">
845
- <h1 id="Histogram-Selectors">Histogram Selectors<a class="anchor-link" href="#Histogram-Selectors">&#182;</a></h1>
846
- </div>
847
- </div>
848
- </div>
849
-
850
-
851
-
852
- <div class="
853
- cell border-box-sizing code_cell rendered">
854
- <div class="input">
855
-
856
- <div class="inner_cell">
857
- <div class="input_area">
858
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## call back for selectors</span>
859
- <span class="k">def</span> <span class="nf">interval_change_callback</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">value</span><span class="p">):</span>
860
- <span class="n">db3</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">value</span><span class="p">)</span>
861
-
862
-
863
- <span class="c1">## call back for the selector</span>
864
- <span class="k">def</span> <span class="nf">brush_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
865
- <span class="k">if</span> <span class="ow">not</span> <span class="n">br_intsel</span><span class="o">.</span><span class="n">brushing</span><span class="p">:</span>
866
- <span class="n">db3</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">br_intsel</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
867
- </pre></div>
868
-
869
- </div>
870
- </div>
871
- </div>
872
-
873
- </div>
874
-
875
-
876
-
877
- <div class="
878
- cell border-box-sizing code_cell rendered">
879
- <div class="input">
880
-
881
- <div class="inner_cell">
882
- <div class="input_area">
883
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">returns</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">log</span><span class="p">(</span><span class="n">prices</span><span class="p">[</span><span class="mi">1</span><span class="p">:])</span> <span class="o">-</span> <span class="n">np</span><span class="o">.</span><span class="n">log</span><span class="p">(</span><span class="n">prices</span><span class="p">[:</span><span class="o">-</span><span class="mi">1</span><span class="p">])</span>
884
- <span class="n">hist_x</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
885
- <span class="n">hist_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
886
- <span class="n">hist</span> <span class="o">=</span> <span class="n">Hist</span><span class="p">(</span><span class="n">sample</span><span class="o">=</span><span class="n">returns</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;sample&quot;</span><span class="p">:</span> <span class="n">hist_x</span><span class="p">,</span> <span class="s2">&quot;count&quot;</span><span class="p">:</span> <span class="n">hist_y</span><span class="p">})</span>
887
-
888
- <span class="n">br_intsel</span> <span class="o">=</span> <span class="n">BrushIntervalSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">hist_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">hist</span><span class="p">])</span>
889
- <span class="n">br_intsel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">brush_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
890
- <span class="n">br_intsel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">brush_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;brushing&quot;</span><span class="p">])</span>
891
-
892
- <span class="n">db3</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
893
- <span class="n">db3</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">br_intsel</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
894
-
895
- <span class="n">h_xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span>
896
- <span class="n">scale</span><span class="o">=</span><span class="n">hist_x</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Returns&quot;</span><span class="p">,</span> <span class="n">grids</span><span class="o">=</span><span class="s2">&quot;off&quot;</span><span class="p">,</span> <span class="n">set_ticks</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">tick_format</span><span class="o">=</span><span class="s2">&quot;0.2%&quot;</span>
897
- <span class="p">)</span>
898
- <span class="n">h_yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">hist_y</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Freq&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
899
-
900
- <span class="n">fig_hist</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
901
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">hist</span><span class="p">],</span>
902
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">h_xax</span><span class="p">,</span> <span class="n">h_yax</span><span class="p">],</span>
903
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Histogram Selection Example&quot;</span><span class="p">,</span>
904
- <span class="n">interaction</span><span class="o">=</span><span class="n">br_intsel</span><span class="p">,</span>
905
- <span class="p">)</span>
906
- <span class="n">VBox</span><span class="p">([</span><span class="n">db3</span><span class="p">,</span> <span class="n">fig_hist</span><span class="p">])</span>
907
- </pre></div>
908
-
909
- </div>
910
- </div>
911
- </div>
912
-
913
- </div>
914
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
915
- <div class="text_cell_render border-box-sizing rendered_html">
916
- <h2 id="Multi-Selector">Multi Selector<a class="anchor-link" href="#Multi-Selector">&#182;</a></h2><ul>
917
- <li>This selector provides the ability to have multiple brush selectors on the same graph.</li>
918
- <li>The first brush works like a regular brush.</li>
919
- <li><code>Ctrl + click</code> creates a new brush, which works like the regular brush.</li>
920
- <li>The <code>active</code> brush has a Green border while all the <code>inactive</code> brushes have a Red border.</li>
921
- <li><code>Shift + click</code> deactivates the current <code>active</code> brush. Now, click on any <code>inactive</code> brush to make it <code>active</code>.</li>
922
- <li><code>Ctrl + Alt + Shift + click</code> clears and resets all the brushes.</li>
923
- </ul>
924
-
925
- </div>
926
- </div>
927
- </div>
928
-
929
-
930
-
931
- <div class="
932
- cell border-box-sizing code_cell rendered">
933
- <div class="input">
934
-
935
- <div class="inner_cell">
936
- <div class="input_area">
937
- <div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">multi_sel_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
938
- <span class="k">if</span> <span class="ow">not</span> <span class="n">multi_sel</span><span class="o">.</span><span class="n">brushing</span><span class="p">:</span>
939
- <span class="n">db4</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">multi_sel</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
940
- </pre></div>
941
-
942
- </div>
943
- </div>
944
- </div>
945
-
946
- </div>
947
-
948
-
949
-
950
- <div class="
951
- cell border-box-sizing code_cell rendered">
952
- <div class="input">
953
-
954
- <div class="inner_cell">
955
- <div class="input_area">
956
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">line_x</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
957
- <span class="n">line_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
958
- <span class="n">line</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
959
- <span class="n">x</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="mi">100</span><span class="p">),</span> <span class="n">y</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">random</span><span class="o">.</span><span class="n">randn</span><span class="p">(</span><span class="mi">100</span><span class="p">),</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">line_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">line_y</span><span class="p">}</span>
960
- <span class="p">)</span>
961
-
962
- <span class="n">multi_sel</span> <span class="o">=</span> <span class="n">MultiSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">line_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">line</span><span class="p">])</span>
963
- <span class="n">multi_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">multi_sel_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
964
- <span class="n">multi_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">multi_sel_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;brushing&quot;</span><span class="p">])</span>
965
-
966
- <span class="n">db4</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
967
- <span class="n">db4</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">multi_sel</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
968
-
969
- <span class="n">h_xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">line_x</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Returns&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
970
- <span class="n">h_yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">hist_y</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Freq&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
971
-
972
- <span class="n">fig_multi</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
973
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">line</span><span class="p">],</span>
974
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">h_xax</span><span class="p">,</span> <span class="n">h_yax</span><span class="p">],</span>
975
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Multi-Selector Example&quot;</span><span class="p">,</span>
976
- <span class="n">interaction</span><span class="o">=</span><span class="n">multi_sel</span><span class="p">,</span>
977
- <span class="p">)</span>
978
- <span class="n">VBox</span><span class="p">([</span><span class="n">db4</span><span class="p">,</span> <span class="n">fig_multi</span><span class="p">])</span>
979
- </pre></div>
980
-
981
- </div>
982
- </div>
983
- </div>
984
-
985
- </div>
986
-
987
-
988
-
989
- <div class="
990
- cell border-box-sizing code_cell rendered">
991
- <div class="input">
992
-
993
- <div class="inner_cell">
994
- <div class="input_area">
995
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># changing the names of the intervals.</span>
996
- <span class="n">multi_sel</span><span class="o">.</span><span class="n">names</span> <span class="o">=</span> <span class="p">[</span><span class="s2">&quot;int1&quot;</span><span class="p">,</span> <span class="s2">&quot;int2&quot;</span><span class="p">,</span> <span class="s2">&quot;int3&quot;</span><span class="p">]</span>
997
- </pre></div>
998
-
999
- </div>
1000
- </div>
1001
- </div>
1002
-
1003
- </div>
1004
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1005
- <div class="text_cell_render border-box-sizing rendered_html">
1006
- <h2 id="Multi-Selector-with-Date-X">Multi Selector with Date X<a class="anchor-link" href="#Multi-Selector-with-Date-X">&#182;</a></h2>
1007
- </div>
1008
- </div>
1009
- </div>
1010
-
1011
-
1012
-
1013
- <div class="
1014
- cell border-box-sizing code_cell rendered">
1015
- <div class="input">
1016
-
1017
- <div class="inner_cell">
1018
- <div class="input_area">
1019
- <div class=" highlight hl-ipython3"><pre><span></span><span class="k">def</span> <span class="nf">multi_sel_dt_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
1020
- <span class="k">if</span> <span class="ow">not</span> <span class="n">multi_sel_dt</span><span class="o">.</span><span class="n">brushing</span><span class="p">:</span>
1021
- <span class="n">db_multi_dt</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">multi_sel_dt</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
1022
- </pre></div>
1023
-
1024
- </div>
1025
- </div>
1026
- </div>
1027
-
1028
- </div>
1029
-
1030
-
1031
-
1032
- <div class="
1033
- cell border-box-sizing code_cell rendered">
1034
- <div class="input">
1035
-
1036
- <div class="inner_cell">
1037
- <div class="input_area">
1038
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">line_dt_x</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">datetime64</span><span class="p">(</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2007</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span>
1039
- <span class="n">line_dt_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
1040
- <span class="n">line_dt</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1041
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">line_dt_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">line_dt_y</span><span class="p">},</span> <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;red&quot;</span><span class="p">]</span>
1042
- <span class="p">)</span>
1043
-
1044
- <span class="n">multi_sel_dt</span> <span class="o">=</span> <span class="n">MultiSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">line_dt_x</span><span class="p">)</span>
1045
- <span class="n">multi_sel_dt</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">multi_sel_dt_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
1046
- <span class="n">multi_sel_dt</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">multi_sel_dt_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;brushing&quot;</span><span class="p">])</span>
1047
-
1048
- <span class="n">db_multi_dt</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
1049
- <span class="n">db_multi_dt</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">multi_sel_dt</span><span class="o">.</span><span class="n">selected</span><span class="p">)</span>
1050
-
1051
- <span class="n">h_xax_dt</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">line_dt_x</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Returns&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
1052
- <span class="n">h_yax_dt</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span>
1053
- <span class="n">scale</span><span class="o">=</span><span class="n">line_dt_y</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Freq&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span>
1054
- <span class="p">)</span>
1055
-
1056
- <span class="n">fig_multi_dt</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
1057
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">line_dt</span><span class="p">],</span>
1058
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">h_xax_dt</span><span class="p">,</span> <span class="n">h_yax_dt</span><span class="p">],</span>
1059
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Multi-Selector with Date Example&quot;</span><span class="p">,</span>
1060
- <span class="n">interaction</span><span class="o">=</span><span class="n">multi_sel_dt</span><span class="p">,</span>
1061
- <span class="p">)</span>
1062
- <span class="n">VBox</span><span class="p">([</span><span class="n">db_multi_dt</span><span class="p">,</span> <span class="n">fig_multi_dt</span><span class="p">])</span>
1063
- </pre></div>
1064
-
1065
- </div>
1066
- </div>
1067
- </div>
1068
-
1069
- </div>
1070
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1071
- <div class="text_cell_render border-box-sizing rendered_html">
1072
- <h2 id="Lasso-Selector">Lasso Selector<a class="anchor-link" href="#Lasso-Selector">&#182;</a></h2>
1073
- </div>
1074
- </div>
1075
- </div>
1076
-
1077
-
1078
-
1079
- <div class="
1080
- cell border-box-sizing code_cell rendered">
1081
- <div class="input">
1082
-
1083
- <div class="inner_cell">
1084
- <div class="input_area">
1085
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">lasso_sel</span> <span class="o">=</span> <span class="n">LassoSelector</span><span class="p">()</span>
1086
- </pre></div>
1087
-
1088
- </div>
1089
- </div>
1090
- </div>
1091
-
1092
- </div>
1093
-
1094
-
1095
-
1096
- <div class="
1097
- cell border-box-sizing code_cell rendered">
1098
- <div class="input">
1099
-
1100
- <div class="inner_cell">
1101
- <div class="input_area">
1102
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">xs</span><span class="p">,</span> <span class="n">ys</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">(),</span> <span class="n">LinearScale</span><span class="p">()</span>
1103
- <span class="n">data</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">arange</span><span class="p">(</span><span class="mi">20</span><span class="p">)</span>
1104
- <span class="n">line_lasso</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">xs</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">ys</span><span class="p">})</span>
1105
- <span class="n">scatter_lasso</span> <span class="o">=</span> <span class="n">Scatter</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">xs</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">ys</span><span class="p">},</span> <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;skyblue&quot;</span><span class="p">])</span>
1106
- <span class="n">bar_lasso</span> <span class="o">=</span> <span class="n">Bars</span><span class="p">(</span><span class="n">x</span><span class="o">=</span><span class="n">data</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">data</span> <span class="o">/</span> <span class="mf">2.0</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">xs</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">ys</span><span class="p">})</span>
1107
- <span class="n">xax_lasso</span><span class="p">,</span> <span class="n">yax_lasso</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">xs</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;X&quot;</span><span class="p">),</span> <span class="n">Axis</span><span class="p">(</span>
1108
- <span class="n">scale</span><span class="o">=</span><span class="n">ys</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Y&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span>
1109
- <span class="p">)</span>
1110
- <span class="n">fig_lasso</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span>
1111
- <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">scatter_lasso</span><span class="p">,</span> <span class="n">line_lasso</span><span class="p">,</span> <span class="n">bar_lasso</span><span class="p">],</span>
1112
- <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">xax_lasso</span><span class="p">,</span> <span class="n">yax_lasso</span><span class="p">],</span>
1113
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Lasso Selector Example&quot;</span><span class="p">,</span>
1114
- <span class="n">interaction</span><span class="o">=</span><span class="n">lasso_sel</span><span class="p">,</span>
1115
- <span class="p">)</span>
1116
- <span class="n">lasso_sel</span><span class="o">.</span><span class="n">marks</span> <span class="o">=</span> <span class="p">[</span><span class="n">scatter_lasso</span><span class="p">,</span> <span class="n">line_lasso</span><span class="p">]</span>
1117
- <span class="n">fig_lasso</span>
1118
- </pre></div>
1119
-
1120
- </div>
1121
- </div>
1122
- </div>
1123
-
1124
- </div>
1125
-
1126
-
1127
-
1128
- <div class="
1129
- cell border-box-sizing code_cell rendered">
1130
- <div class="input">
1131
-
1132
- <div class="inner_cell">
1133
- <div class="input_area">
1134
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">scatter_lasso</span><span class="o">.</span><span class="n">selected</span><span class="p">,</span> <span class="n">line_lasso</span><span class="o">.</span><span class="n">selected</span>
1135
- </pre></div>
1136
-
1137
- </div>
1138
- </div>
1139
- </div>
1140
-
1141
- </div>
1142
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1143
- <div class="text_cell_render border-box-sizing rendered_html">
1144
- <h2 id="Pan-Zoom">Pan Zoom<a class="anchor-link" href="#Pan-Zoom">&#182;</a></h2>
1145
- </div>
1146
- </div>
1147
- </div>
1148
-
1149
-
1150
-
1151
- <div class="
1152
- cell border-box-sizing code_cell rendered">
1153
- <div class="input">
1154
-
1155
- <div class="inner_cell">
1156
- <div class="input_area">
1157
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">xs_pz</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">datetime64</span><span class="p">(</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2007</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span>
1158
- <span class="n">ys_pz</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
1159
- <span class="n">line_pz</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1160
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">xs_pz</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">ys_pz</span><span class="p">},</span> <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;red&quot;</span><span class="p">]</span>
1161
- <span class="p">)</span>
1162
-
1163
- <span class="n">panzoom</span> <span class="o">=</span> <span class="n">PanZoom</span><span class="p">(</span><span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="p">[</span><span class="n">xs_pz</span><span class="p">],</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="p">[</span><span class="n">ys_pz</span><span class="p">]})</span>
1164
- <span class="n">xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">xs_pz</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Date&quot;</span><span class="p">,</span> <span class="n">grids</span><span class="o">=</span><span class="s2">&quot;off&quot;</span><span class="p">)</span>
1165
- <span class="n">yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">ys_pz</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Price&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
1166
-
1167
- <span class="n">Figure</span><span class="p">(</span><span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">line_pz</span><span class="p">],</span> <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">xax</span><span class="p">,</span> <span class="n">yax</span><span class="p">],</span> <span class="n">interaction</span><span class="o">=</span><span class="n">panzoom</span><span class="p">)</span>
1168
- </pre></div>
1169
-
1170
- </div>
1171
- </div>
1172
- </div>
1173
-
1174
- </div>
1175
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1176
- <div class="text_cell_render border-box-sizing rendered_html">
1177
- <h2 id="Hand-Draw">Hand Draw<a class="anchor-link" href="#Hand-Draw">&#182;</a></h2>
1178
- </div>
1179
- </div>
1180
- </div>
1181
-
1182
-
1183
-
1184
- <div class="
1185
- cell border-box-sizing code_cell rendered">
1186
- <div class="input">
1187
-
1188
- <div class="inner_cell">
1189
- <div class="input_area">
1190
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">xs_hd</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">datetime64</span><span class="p">(</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2007</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span>
1191
- <span class="n">ys_hd</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
1192
- <span class="n">line_hd</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1193
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span> <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span> <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">xs_hd</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">ys_hd</span><span class="p">},</span> <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;red&quot;</span><span class="p">]</span>
1194
- <span class="p">)</span>
1195
-
1196
- <span class="n">handdraw</span> <span class="o">=</span> <span class="n">HandDraw</span><span class="p">(</span><span class="n">lines</span><span class="o">=</span><span class="n">line_hd</span><span class="p">)</span>
1197
- <span class="n">xax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">xs_hd</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Date&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
1198
- <span class="n">yax</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">ys_hd</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s2">&quot;Price&quot;</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
1199
-
1200
- <span class="n">Figure</span><span class="p">(</span><span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">line_hd</span><span class="p">],</span> <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">xax</span><span class="p">,</span> <span class="n">yax</span><span class="p">],</span> <span class="n">interaction</span><span class="o">=</span><span class="n">handdraw</span><span class="p">)</span>
1201
- </pre></div>
1202
-
1203
- </div>
1204
- </div>
1205
- </div>
1206
-
1207
- </div>
1208
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1209
- <div class="text_cell_render border-box-sizing rendered_html">
1210
- <h1 id="Unified-Figure-with-All-Interactions">Unified Figure with All Interactions<a class="anchor-link" href="#Unified-Figure-with-All-Interactions">&#182;</a></h1>
1211
- </div>
1212
- </div>
1213
- </div>
1214
-
1215
-
1216
-
1217
- <div class="
1218
- cell border-box-sizing code_cell rendered">
1219
- <div class="input">
1220
-
1221
- <div class="inner_cell">
1222
- <div class="input_area">
1223
- <div class=" highlight hl-ipython3"><pre><span></span><span class="n">dt_x</span> <span class="o">=</span> <span class="n">DateScale</span><span class="p">(</span><span class="n">date_format</span><span class="o">=</span><span class="n">date_fmt</span><span class="p">,</span> <span class="nb">min</span><span class="o">=</span><span class="n">py_dtime</span><span class="p">(</span><span class="mi">2007</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">))</span>
1224
- <span class="n">lc1_x</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
1225
- <span class="n">lc2_y</span> <span class="o">=</span> <span class="n">LinearScale</span><span class="p">()</span>
1226
-
1227
- <span class="n">lc2</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1228
- <span class="n">x</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">linspace</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">10.0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">prices</span><span class="p">)),</span>
1229
- <span class="n">y</span><span class="o">=</span><span class="n">prices</span> <span class="o">*</span> <span class="mf">0.25</span><span class="p">,</span>
1230
- <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">lc1_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lc2_y</span><span class="p">},</span>
1231
- <span class="n">display_legend</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
1232
- <span class="n">labels</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;Security 1&quot;</span><span class="p">],</span>
1233
- <span class="p">)</span>
1234
-
1235
- <span class="n">lc3</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1236
- <span class="n">x</span><span class="o">=</span><span class="n">dates_actual</span><span class="p">,</span>
1237
- <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span><span class="p">,</span>
1238
- <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">dt_x</span><span class="p">,</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lc2_y</span><span class="p">},</span>
1239
- <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;red&quot;</span><span class="p">],</span>
1240
- <span class="n">display_legend</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
1241
- <span class="n">labels</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;Security 2&quot;</span><span class="p">],</span>
1242
- <span class="p">)</span>
1243
-
1244
- <span class="n">lc4</span> <span class="o">=</span> <span class="n">Lines</span><span class="p">(</span>
1245
- <span class="n">x</span><span class="o">=</span><span class="n">np</span><span class="o">.</span><span class="n">linspace</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span> <span class="mf">10.0</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">prices</span><span class="p">)),</span>
1246
- <span class="n">y</span><span class="o">=</span><span class="n">sec2_data</span> <span class="o">*</span> <span class="mf">0.75</span><span class="p">,</span>
1247
- <span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="n">LinearScale</span><span class="p">(</span><span class="nb">min</span><span class="o">=</span><span class="mi">5</span><span class="p">,</span> <span class="nb">max</span><span class="o">=</span><span class="mi">10</span><span class="p">),</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="n">lc2_y</span><span class="p">},</span>
1248
- <span class="n">colors</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;green&quot;</span><span class="p">],</span>
1249
- <span class="n">display_legend</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
1250
- <span class="n">labels</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;Security 2 squared&quot;</span><span class="p">],</span>
1251
- <span class="p">)</span>
1252
-
1253
- <span class="n">x_ax1</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s2">&quot;Date&quot;</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="n">dt_x</span><span class="p">)</span>
1254
- <span class="n">x_ax2</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="s2">&quot;Time&quot;</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="n">lc1_x</span><span class="p">,</span> <span class="n">side</span><span class="o">=</span><span class="s2">&quot;top&quot;</span><span class="p">,</span> <span class="n">grid_lines</span><span class="o">=</span><span class="s2">&quot;none&quot;</span><span class="p">)</span>
1255
- <span class="n">x_ay2</span> <span class="o">=</span> <span class="n">Axis</span><span class="p">(</span><span class="n">label</span><span class="o">=</span><span class="p">(</span><span class="n">symbol</span> <span class="o">+</span> <span class="s2">&quot; Price&quot;</span><span class="p">),</span> <span class="n">scale</span><span class="o">=</span><span class="n">lc2_y</span><span class="p">,</span> <span class="n">orientation</span><span class="o">=</span><span class="s2">&quot;vertical&quot;</span><span class="p">)</span>
1256
-
1257
-
1258
- <span class="n">fig</span> <span class="o">=</span> <span class="n">Figure</span><span class="p">(</span><span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2</span><span class="p">,</span> <span class="n">lc3</span><span class="p">,</span> <span class="n">lc4</span><span class="p">],</span> <span class="n">axes</span><span class="o">=</span><span class="p">[</span><span class="n">x_ax1</span><span class="p">,</span> <span class="n">x_ax2</span><span class="p">,</span> <span class="n">x_ay2</span><span class="p">])</span>
1259
- </pre></div>
1260
-
1261
- </div>
1262
- </div>
1263
- </div>
1264
-
1265
- </div>
1266
-
1267
-
1268
-
1269
- <div class="
1270
- cell border-box-sizing code_cell rendered">
1271
- <div class="input">
1272
-
1273
- <div class="inner_cell">
1274
- <div class="input_area">
1275
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## declaring the interactions</span>
1276
- <span class="n">multi_sel</span> <span class="o">=</span> <span class="n">MultiSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2</span><span class="p">,</span> <span class="n">lc3</span><span class="p">])</span>
1277
- <span class="n">br_intsel</span> <span class="o">=</span> <span class="n">BrushIntervalSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">lc1_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2</span><span class="p">,</span> <span class="n">lc3</span><span class="p">])</span>
1278
- <span class="n">index_sel</span> <span class="o">=</span> <span class="n">IndexSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc2</span><span class="p">,</span> <span class="n">lc3</span><span class="p">])</span>
1279
- <span class="n">int_sel</span> <span class="o">=</span> <span class="n">FastIntervalSelector</span><span class="p">(</span><span class="n">scale</span><span class="o">=</span><span class="n">dt_x</span><span class="p">,</span> <span class="n">marks</span><span class="o">=</span><span class="p">[</span><span class="n">lc3</span><span class="p">,</span> <span class="n">lc2</span><span class="p">])</span>
1280
-
1281
- <span class="n">hd</span> <span class="o">=</span> <span class="n">HandDraw</span><span class="p">(</span><span class="n">lines</span><span class="o">=</span><span class="n">lc2</span><span class="p">)</span>
1282
- <span class="n">hd2</span> <span class="o">=</span> <span class="n">HandDraw</span><span class="p">(</span><span class="n">lines</span><span class="o">=</span><span class="n">lc3</span><span class="p">)</span>
1283
- <span class="n">pz</span> <span class="o">=</span> <span class="n">PanZoom</span><span class="p">(</span><span class="n">scales</span><span class="o">=</span><span class="p">{</span><span class="s2">&quot;x&quot;</span><span class="p">:</span> <span class="p">[</span><span class="n">dt_x</span><span class="p">],</span> <span class="s2">&quot;y&quot;</span><span class="p">:</span> <span class="p">[</span><span class="n">lc2_y</span><span class="p">]})</span>
1284
-
1285
- <span class="n">deb</span> <span class="o">=</span> <span class="n">HTML</span><span class="p">()</span>
1286
- <span class="n">deb</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="s2">&quot;[]&quot;</span>
1287
- </pre></div>
1288
-
1289
- </div>
1290
- </div>
1291
- </div>
1292
-
1293
- </div>
1294
-
1295
-
1296
-
1297
- <div class="
1298
- cell border-box-sizing code_cell rendered">
1299
- <div class="input">
1300
-
1301
- <div class="inner_cell">
1302
- <div class="input_area">
1303
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">## Call back handler for the interactions</span>
1304
- <span class="k">def</span> <span class="nf">test_callback</span><span class="p">(</span><span class="n">change</span><span class="p">):</span>
1305
- <span class="n">deb</span><span class="o">.</span><span class="n">value</span> <span class="o">=</span> <span class="nb">str</span><span class="p">(</span><span class="n">change</span><span class="o">.</span><span class="n">new</span><span class="p">)</span>
1306
-
1307
-
1308
- <span class="n">multi_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">test_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
1309
- <span class="n">br_intsel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">test_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
1310
- <span class="n">index_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">test_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
1311
- <span class="n">int_sel</span><span class="o">.</span><span class="n">observe</span><span class="p">(</span><span class="n">test_callback</span><span class="p">,</span> <span class="n">names</span><span class="o">=</span><span class="p">[</span><span class="s2">&quot;selected&quot;</span><span class="p">])</span>
1312
- </pre></div>
1313
-
1314
- </div>
1315
- </div>
1316
- </div>
1317
-
1318
- </div>
1319
-
1320
-
1321
-
1322
- <div class="
1323
- cell border-box-sizing code_cell rendered">
1324
- <div class="input">
1325
-
1326
- <div class="inner_cell">
1327
- <div class="input_area">
1328
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">collections</span> <span class="kn">import</span> <span class="n">OrderedDict</span>
1329
-
1330
- <span class="n">selection_interacts</span> <span class="o">=</span> <span class="n">ToggleButtons</span><span class="p">(</span>
1331
- <span class="n">options</span><span class="o">=</span><span class="n">OrderedDict</span><span class="p">(</span>
1332
- <span class="p">[</span>
1333
- <span class="p">(</span><span class="s2">&quot;HandDraw1&quot;</span><span class="p">,</span> <span class="n">hd</span><span class="p">),</span>
1334
- <span class="p">(</span><span class="s2">&quot;HandDraw2&quot;</span><span class="p">,</span> <span class="n">hd2</span><span class="p">),</span>
1335
- <span class="p">(</span><span class="s2">&quot;PanZoom&quot;</span><span class="p">,</span> <span class="n">pz</span><span class="p">),</span>
1336
- <span class="p">(</span><span class="s2">&quot;FastIntervalSelector&quot;</span><span class="p">,</span> <span class="n">int_sel</span><span class="p">),</span>
1337
- <span class="p">(</span><span class="s2">&quot;IndexSelector&quot;</span><span class="p">,</span> <span class="n">index_sel</span><span class="p">),</span>
1338
- <span class="p">(</span><span class="s2">&quot;BrushIntervalSelector&quot;</span><span class="p">,</span> <span class="n">br_intsel</span><span class="p">),</span>
1339
- <span class="p">(</span><span class="s2">&quot;MultiSelector&quot;</span><span class="p">,</span> <span class="n">multi_sel</span><span class="p">),</span>
1340
- <span class="p">(</span><span class="s2">&quot;None&quot;</span><span class="p">,</span> <span class="kc">None</span><span class="p">),</span>
1341
- <span class="p">]</span>
1342
- <span class="p">)</span>
1343
- <span class="p">)</span>
1344
-
1345
- <span class="n">link</span><span class="p">((</span><span class="n">selection_interacts</span><span class="p">,</span> <span class="s2">&quot;value&quot;</span><span class="p">),</span> <span class="p">(</span><span class="n">fig</span><span class="p">,</span> <span class="s2">&quot;interaction&quot;</span><span class="p">))</span>
1346
- <span class="n">VBox</span><span class="p">([</span><span class="n">deb</span><span class="p">,</span> <span class="n">fig</span><span class="p">,</span> <span class="n">selection_interacts</span><span class="p">],</span> <span class="n">align_self</span><span class="o">=</span><span class="s2">&quot;stretch&quot;</span><span class="p">)</span>
1347
- </pre></div>
1348
-
1349
- </div>
1350
- </div>
1351
- </div>
1352
-
1353
- </div>
1354
-
1355
-
1356
-
1357
- <div class="
1358
- cell border-box-sizing code_cell rendered">
1359
- <div class="input">
1360
-
1361
- <div class="inner_cell">
1362
- <div class="input_area">
1363
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># Set the scales of lc4 to the ones of lc2 and check if panzoom pans the two.</span>
1364
- <span class="n">lc4</span><span class="o">.</span><span class="n">scales</span> <span class="o">=</span> <span class="n">lc2</span><span class="o">.</span><span class="n">scales</span>
1365
- </pre></div>
1366
-
1367
- </div>
1368
- </div>
1369
- </div>
1370
-
1371
- </div>
1372
-