j1-template 2022.5.0.rc4 → 2022.5.1.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (413) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/modules/attics/generator.html +5 -13
  3. data/_includes/themes/j1/procedures/global/date-german.proc +67 -0
  4. data/assets/data/banner.html +2 -2
  5. data/assets/data/menu.html +1 -1
  6. data/assets/data/mmenu.html +36 -36
  7. data/assets/themes/j1/adapter/js/attic.js +114 -62
  8. data/assets/themes/j1/adapter/js/cookieConsent.js +42 -25
  9. data/assets/themes/j1/adapter/js/masterslider.js +2 -2
  10. data/assets/themes/j1/adapter/js/mmenu.js +2 -2
  11. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +28 -3
  12. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
  13. data/assets/themes/j1/modules/backstretch/js/backstretch.js +5 -5
  14. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +1 -1
  15. data/assets/themes/j1/modules/backstretch/js/v2.1.16/backstretch.js +1696 -0
  16. data/assets/themes/j1/modules/backstretch/js/v2.1.16/backstretch.min.js +20 -0
  17. data/assets/themes/j1/modules/backstretch/js/v2.1.18/backstretch.js +1627 -0
  18. data/assets/themes/j1/modules/backstretch/js/v2.1.18/backstretch.min.js +20 -0
  19. data/assets/themes/j1/modules/cryptoJS/js/rc4.js +2 -2
  20. data/assets/themes/j1/modules/mmenuLight/README.md +22 -0
  21. data/assets/themes/j1/modules/mmenuLight/css/mmenu-light.css +224 -243
  22. data/assets/themes/j1/modules/mmenuLight/css/mmenu-light.min.css +3 -3
  23. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.css +95 -55
  24. data/assets/themes/j1/modules/mmenuLight/css/theme/uno/mmenu.min.css +1 -1
  25. data/assets/themes/j1/modules/mmenuLight/js/mmenu.js +57 -440
  26. data/assets/themes/j1/modules/mmenuLight/js/mmenu.min.js +4 -15
  27. data/assets/themes/j1/modules/{twemoji/js/picker → themeSwitcher}/LICENSE +21 -21
  28. data/assets/themes/j1/modules/themeSwitcher/README.md +166 -0
  29. data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +2 -2
  30. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
  31. data/lib/j1/version.rb +1 -1
  32. data/lib/starter_web/Gemfile +1 -1
  33. data/lib/starter_web/README.md +440 -175
  34. data/lib/starter_web/_config.yml +2 -2
  35. data/lib/starter_web/_data/blocks/banner.yml +1 -1
  36. data/lib/starter_web/_data/modules/attics.yml +12 -0
  37. data/lib/starter_web/_data/modules/defaults/attics.yml +16 -1
  38. data/lib/starter_web/_data/modules/defaults/cookies.yml +1 -1
  39. data/lib/starter_web/_data/modules/navigator_menu.yml +31 -25
  40. data/lib/starter_web/_includes/attributes.asciidoc +2 -0
  41. data/lib/starter_web/_plugins/lunr_index.rb +1 -1
  42. data/lib/starter_web/assets/images/modules/attics/1920x1280/ben-kolde.jpg +0 -0
  43. data/lib/starter_web/assets/images/modules/attics/1920x1280/braden-collum.jpg +0 -0
  44. data/lib/starter_web/assets/images/modules/attics/1920x1280/ev.jpg +0 -0
  45. data/lib/starter_web/assets/images/modules/attics/1920x1280/firmbee-com.jpg +0 -0
  46. data/lib/starter_web/assets/images/modules/attics/1920x1280/max-harlynking.jpg +0 -0
  47. data/lib/starter_web/assets/images/modules/attics/guillaume-bolduc-1920x1280.jpg +0 -0
  48. data/lib/starter_web/assets/images/modules/attics/spacex-1920x1280.jpg +0 -0
  49. data/lib/starter_web/assets/videos/headers/{still → present_videos/still}/underground-broadway.jpg +0 -0
  50. data/lib/starter_web/assets/videos/headers/present_videos/underground-broadway.mp4 +0 -0
  51. data/lib/starter_web/collections/asciidoc_skeletons/simple-post/_posts/yyyy-mm-dd-your-post-name.asciidoc +3 -1
  52. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +3 -0
  53. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +2 -3
  54. data/lib/starter_web/collections/posts/public/featured/_posts/2022-02-01-about-j1.adoc +3 -0
  55. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +3 -0
  56. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +3 -0
  57. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +3 -0
  58. data/lib/starter_web/index.html +68 -12
  59. data/lib/starter_web/package.json +2 -2
  60. data/lib/starter_web/pages/public/about/features.adoc +119 -0
  61. data/lib/starter_web/pages/public/about/reporting_issues.adoc +78 -0
  62. data/lib/starter_web/pages/public/about/{about_site.adoc → site.adoc} +20 -15
  63. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +3 -0
  64. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +3 -0
  65. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +3 -0
  66. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +3 -0
  67. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +4 -1
  68. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +4 -1
  69. data/lib/starter_web/pages/public/blog/navigator/archive.html +4 -1
  70. data/lib/starter_web/pages/public/blog/navigator/index.html +4 -1
  71. data/lib/starter_web/pages/public/features/general.adoc +5 -1
  72. data/lib/starter_web/pages/public/features/template.adoc +4 -0
  73. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-circular-times-table.adoc +3 -0
  74. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-common-used-widgets.adoc +3 -0
  75. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-odes-in-python.adoc +3 -0
  76. data/lib/starter_web/pages/public/jupyter/examples/localized/j1_climate-change-forecast.adoc +3 -0
  77. data/lib/starter_web/pages/public/learn/quickstart.adoc +4 -1
  78. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +4 -1
  79. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +16 -5
  80. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +3 -0
  81. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +3 -0
  82. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +3 -0
  83. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +3 -0
  84. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +3 -0
  85. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +3 -0
  86. data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +6 -2
  87. data/lib/starter_web/pages/public/learn/where_to_go.adoc +3 -0
  88. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +3 -0
  89. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +3 -0
  90. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +142 -0
  91. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +3 -0
  92. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +9 -1
  93. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +10 -2
  94. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +66 -3
  95. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +3 -0
  96. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +3 -0
  97. data/lib/starter_web/pages/public/plans/plans.adoc +3 -0
  98. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +4 -0
  99. data/lib/starter_web/pages/public/se/se-fake.adoc +4 -0
  100. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  101. data/lib/starter_web/utilsrv/package.json +1 -1
  102. metadata +22 -372
  103. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.css +0 -153
  104. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.min.css +0 -19
  105. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.js +0 -304
  106. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.min.js +0 -322
  107. data/assets/themes/j1/modules/twemoji/js/twemoji.js +0 -580
  108. data/assets/themes/j1/modules/twemoji/js/twemoji.min.js +0 -19
  109. data/lib/starter_web/assets/videos/headers/still/victoria-oskolovich-on-vimeo.jpg +0 -0
  110. data/lib/starter_web/pages/public/_jupyter/docs/_includes/attributes.asciidoc +0 -67
  111. data/lib/starter_web/pages/public/_jupyter/docs/_includes/documents/j1_docs_example_static.asciidoc +0 -232
  112. data/lib/starter_web/pages/public/_jupyter/docs/binderhub.adoc +0 -631
  113. data/lib/starter_web/pages/public/_jupyter/docs/j1-nbinteract.adoc +0 -638
  114. data/lib/starter_web/pages/public/_jupyter/docs/jupyterhub.adoc +0 -248
  115. data/lib/starter_web/pages/public/_jupyter/docs/nbinteract-widget-manual.adoc +0 -928
  116. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-circular-times-table.adoc +0 -139
  117. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-common-used-widgets.adoc +0 -229
  118. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-odes-in-python.adoc +0 -112
  119. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-altair/j1-altair-visualisations.adoc +0 -142
  120. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bokeh-visualisations.adoc +0 -171
  121. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bqplot-eamples.adoc +0 -111
  122. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-plotly/j1-plotly-visualisations.adoc +0 -94
  123. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1_climate-change-forecast.adoc +0 -106
  124. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +0 -16260
  125. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_bgplot_line_plot-checkpoint.ipynb +0 -247
  126. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-Copy1-checkpoint.ipynb +0 -12382
  127. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-checkpoint.ipynb +0 -12387
  128. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-short-checkpoint.ipynb +0 -12170
  129. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_climate_change_forecast-checkpoint.ipynb +0 -1058
  130. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_docs_example_dynamic-checkpoint.ipynb +0 -14478
  131. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-Copy1-checkpoint.ipynb +0 -379
  132. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +0 -442
  133. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets-checkpoint.ipynb +0 -523
  134. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.line_charts-checkpoint.ipynb +0 -84
  135. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.questions-checkpoint.ipynb +0 -194
  136. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_chart-checkpoint.ipynb +0 -89
  137. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-Copy1-checkpoint.ipynb +0 -164
  138. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-checkpoint.ipynb +0 -173
  139. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts.1-checkpoint.ipynb +0 -256
  140. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_barcharts-checkpoint.ipynb +0 -126
  141. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_hist_chart-checkpoint.ipynb +0 -87
  142. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_chart-checkpoint.ipynb +0 -90
  143. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_charts-checkpoint.ipynb +0 -87
  144. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_multiple_choice-checkpoint.ipynb +0 -64
  145. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_short_answer-checkpoint.ipynb +0 -122
  146. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_questions-checkpoint.ipynb +0 -181
  147. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_chart-checkpoint.ipynb +0 -89
  148. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_charts-checkpoint.ipynb +0 -175
  149. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_drag_chart-checkpoint.ipynb +0 -87
  150. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_ode_selected-checkpoint.ipynb +0 -14478
  151. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_odes_in_python-checkpoint.ipynb +0 -15227
  152. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/factor_by_factor.mp4 +0 -0
  153. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_circular_times_table.ipynb +0 -12382
  154. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_climate_change_forecast.ipynb +0 -1058
  155. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_docs_example_dynamic.ipynb +0 -14478
  156. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_interactive_widgets.ipynb +0 -442
  157. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets.ipynb +0 -523
  158. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_bar_chart.ipynb +0 -89
  159. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_hist_chart.ipynb +0 -87
  160. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_line_chart.ipynb +0 -90
  161. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_multiple_choice.ipynb +0 -64
  162. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_short_answer.ipynb +0 -122
  163. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_chart.ipynb +0 -89
  164. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_drag_chart.ipynb +0 -87
  165. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_odes_in_python.ipynb +0 -15227
  166. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/line_by_line.mp4 +0 -0
  167. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/point_by_point.mp4 +0 -0
  168. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +0 -16296
  169. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_non_interactive-checkpoint.ipynb +0 -15385
  170. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_interactive.ipynb +0 -16296
  171. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_non_interactive.ipynb +0 -15385
  172. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/00 - Introduction and Setup-checkpoint.ipynb +0 -717
  173. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/01 - Basic Plotting-checkpoint.ipynb +0 -1381
  174. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/02 - Styling and Theming-checkpoint.ipynb +0 -1440
  175. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/03 - Data Sources and Transformations-checkpoint.ipynb +0 -927
  176. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/04 - Adding Annotations-checkpoint.ipynb +0 -1105
  177. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/05 - Presentation Layouts-checkpoint.ipynb +0 -578
  178. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/06 - Linking and Interactions-checkpoint.ipynb +0 -1196
  179. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/07 - Bar and Categorical Data Plots-checkpoint.ipynb +0 -1681
  180. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/08 - Graph and Network Plots-checkpoint.ipynb +0 -680
  181. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/09 - Geographic Plots-checkpoint.ipynb +0 -693
  182. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/10 - Exporting and Embedding-checkpoint.ipynb +0 -751
  183. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/11 - Running Bokeh Applications-checkpoint.ipynb +0 -770
  184. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/bokeh_tut_00_introduction_and_setup-checkpoint.ipynb +0 -666
  185. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_01_basic_plotting-checkpoint.ipynb +0 -1365
  186. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_02_styling_and_theming-checkpoint.ipynb +0 -1405
  187. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_03_data_sources_and_transformations-checkpoint.ipynb +0 -856
  188. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_04_adding_annotations-checkpoint.ipynb +0 -1167
  189. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_05_presentation_layouts-checkpoint.ipynb +0 -601
  190. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_06_linking_and_interactions-checkpoint.ipynb +0 -1356
  191. 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
  192. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_08_graph_and_network_plots-checkpoint.ipynb +0 -625
  193. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_09_geographic_plots-checkpoint.ipynb +0 -685
  194. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.ipynb +0 -726
  195. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.org +0 -726
  196. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding.new-checkpoint.ipynb +0 -560
  197. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_11_running_bokeh_applications-checkpoint.ipynb +0 -716
  198. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_01_basic_plotting.ipynb +0 -1365
  199. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_02_styling_and_theming.ipynb +0 -1405
  200. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_03_data_sources_and_transformations.ipynb +0 -856
  201. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_04_adding_annotations.ipynb +0 -1167
  202. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_05_presentation_layouts.ipynb +0 -601
  203. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_06_linking_and_interactions.ipynb +0 -1356
  204. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_07_bar_and_categorical_data_plots.ipynb +0 -1742
  205. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_08_graph_and_network_plots.ipynb +0 -625
  206. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_09_geographic_plots.ipynb +0 -685
  207. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/.ipynb_checkpoints/j1_mathplot_vs_bqplot-checkpoint.ipynb +0 -336
  208. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/advanced/Feature_Vector_Distribution-Iris-Digits.ipynb +0 -433
  209. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_bgplot_line_plot.ipynb +0 -244
  210. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_circular_times_table-short.ipynb +0 -12170
  211. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_mathplot_vs_bqplot.ipynb +0 -336
  212. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Index-checkpoint.ipynb +0 -163
  213. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Tutorials-checkpoint.ipynb +0 -51
  214. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Advanced Plotting.ipynb +0 -289
  215. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Animations.ipynb +0 -266
  216. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Axis Properties.ipynb +0 -396
  217. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Plotting Dates.ipynb +0 -318
  218. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/Time Series.ipynb +0 -158
  219. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/spx_prices.csv +0 -6799
  220. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Feature_Vector_Distribution-Iris-Digits.ipynb +0 -470
  221. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Index.ipynb +0 -49
  222. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Logs Analytics/Logs Dashboard.ipynb +0 -378
  223. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Mobile Patent Suits.ipynb +0 -123
  224. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Neural Network.ipynb +0 -177
  225. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Outlier Detection.ipynb +0 -311
  226. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Bubble Chart.ipynb +0 -255
  227. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Choropleth.ipynb +0 -275
  228. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/nations.json +0 -1
  229. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/world_map_codes.csv +0 -234
  230. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Basic Plotting-checkpoint.ipynb +0 -186
  231. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Pyplot-checkpoint.ipynb +0 -794
  232. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Untitled-checkpoint.ipynb +0 -323
  233. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Basic Plotting.ipynb +0 -261
  234. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Pyplot.ipynb +0 -1489
  235. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Index.ipynb +0 -163
  236. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Interaction Layer.ipynb +0 -966
  237. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Mark Interactions.ipynb +0 -476
  238. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Selectors.ipynb +0 -427
  239. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Introduction.ipynb +0 -528
  240. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bars.ipynb +0 -480
  241. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bins.ipynb +0 -217
  242. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Boxplot.ipynb +0 -253
  243. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Candles.ipynb +0 -225
  244. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/FlexLine.ipynb +0 -123
  245. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Graph.ipynb +0 -357
  246. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/GridHeatMap.ipynb +0 -422
  247. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/HeatMap.ipynb +0 -157
  248. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Hist.ipynb +0 -176
  249. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Image.ipynb +0 -195
  250. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Label.ipynb +0 -189
  251. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Lines.ipynb +0 -565
  252. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Map.ipynb +0 -182
  253. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Market Map.ipynb +0 -315
  254. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Pie.ipynb +0 -465
  255. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Scatter.ipynb +0 -835
  256. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bars.ipynb +0 -362
  257. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bins.ipynb +0 -252
  258. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Boxplot.ipynb +0 -273
  259. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Candles.ipynb +0 -242
  260. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/GridHeatMap.ipynb +0 -417
  261. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/HeatMap.ipynb +0 -155
  262. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Hist.ipynb +0 -238
  263. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Image.ipynb +0 -152
  264. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Label.ipynb +0 -206
  265. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Lines.ipynb +0 -474
  266. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Map.ipynb +0 -181
  267. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Pie.ipynb +0 -310
  268. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Scatter.ipynb +0 -702
  269. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Scales/Color Scales.ipynb +0 -495
  270. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Feature_Vector_Distribution-Iris-Digits-checkpoint.ipynb +0 -433
  271. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Linking Plots With Widgets-checkpoint.ipynb +0 -326
  272. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-Copy1-checkpoint.ipynb +0 -177
  273. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-checkpoint.ipynb +0 -177
  274. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Brush Interval Selector.ipynb +0 -154
  275. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Fast Interval Selector.ipynb +0 -152
  276. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density Widget.ipynb +0 -128
  277. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density.ipynb +0 -113
  278. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Linking Plots With Widgets.ipynb +0 -326
  279. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Object Model.ipynb +0 -179
  280. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Pyplot.ipynb +0 -174
  281. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Updating Plots.ipynb +0 -177
  282. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials.ipynb +0 -51
  283. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/country_codes.csv +0 -213
  284. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/gdp_per_capita.csv +0 -56
  285. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/state_codes.csv +0 -52
  286. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/trees.jpg +0 -0
  287. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +0 -247
  288. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_variability_of_the_sample_mean-checkpoint.ipynb +0 -323
  289. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +0 -387
  290. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_interactive_questions-checkpoint.ipynb +0 -185
  291. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_layout-checkpoint.ipynb +0 -384
  292. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_interact-checkpoint.ipynb +0 -254
  293. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_monty_hall-checkpoint.ipynb +0 -732
  294. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_central_limit_theorem.ipynb +0 -247
  295. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_correlation.ipynb +0 -651
  296. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_empirical_distributions.ipynb +0 -773
  297. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_linear_regression.ipynb +0 -111
  298. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_probability_distribution_plots.ipynb +0 -199
  299. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_sampling_from_a_population.ipynb +0 -421
  300. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_variability_of_the_sample_mean.ipynb +0 -323
  301. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_graphing.ipynb +0 -387
  302. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_interactive_questions.ipynb +0 -185
  303. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_layout.ipynb +0 -384
  304. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_interact.ipynb +0 -254
  305. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_monty_hall.ipynb +0 -732
  306. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Advanced Plotting.html +0 -373
  307. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Animations.html +0 -361
  308. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Axis Properties.html +0 -569
  309. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bars.html +0 -487
  310. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Basic Plotting.html +0 -341
  311. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bins.html +0 -259
  312. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Boxplot.html +0 -277
  313. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Brush Interval Selector.html +0 -182
  314. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bubble Chart.html +0 -299
  315. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Candles.html +0 -252
  316. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Choropleth.html +0 -318
  317. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Color Scales.html +0 -514
  318. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Fast Interval Selector.html +0 -182
  319. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Feature_Vector_Distribution-Iris-Digits.html +0 -479
  320. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/FlexLine.html +0 -128
  321. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density Widget.html +0 -152
  322. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density.html +0 -137
  323. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Graph.html +0 -484
  324. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/GridHeatMap.html +0 -483
  325. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/HeatMap.html +0 -170
  326. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Hist.html +0 -349
  327. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Image.html +0 -177
  328. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Index.html +0 -29
  329. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Interaction Layer.html +0 -1372
  330. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Introduction.html +0 -749
  331. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Label.html +0 -268
  332. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Lines.html +0 -704
  333. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Linking Plots With Widgets.html +0 -389
  334. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Logs Dashboard.html +0 -455
  335. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Map.html +0 -229
  336. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mark Interactions.html +0 -613
  337. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Market Map.html +0 -413
  338. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mobile Patent Suits.html +0 -131
  339. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Neural Network.html +0 -190
  340. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Object Model.html +0 -193
  341. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Outlier Detection.html +0 -363
  342. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pie.html +0 -367
  343. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Plotting Dates.html +0 -337
  344. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pyplot.html +0 -196
  345. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Scatter.html +0 -948
  346. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Selectors.html +0 -489
  347. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Time Series.html +0 -173
  348. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Tutorials.html +0 -40
  349. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Updating Plots.html +0 -228
  350. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_interactive.html +0 -2216
  351. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_non_interactive.html +0 -1170
  352. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bgplot_line_plot.html +0 -318
  353. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_01_basic_plotting.html +0 -1479
  354. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_02_styling_and_theming.html +0 -1524
  355. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_03_data_sources_and_transformations.html +0 -983
  356. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_04_adding_annotations.html +0 -1280
  357. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_05_presentation_layouts.html +0 -660
  358. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_06_linking_and_interactions.html +0 -1563
  359. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_07_bar_and_categorical_data_plots.html +0 -1888
  360. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_08_graph_and_network_plots.html +0 -689
  361. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_09_geographic_plots.html +0 -767
  362. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table-short.html +0 -475
  363. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table.html +0 -747
  364. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_climate_change_forecast.html +0 -1250
  365. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_docs_example_dynamic.html +0 -186
  366. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_interactive_widgets.html +0 -512
  367. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_mathplot_vs_bqplot.html +0 -407
  368. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets.html +0 -629
  369. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +0 -95
  370. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +0 -93
  371. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +0 -96
  372. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +0 -70
  373. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +0 -156
  374. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +0 -95
  375. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +0 -93
  376. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_odes_in_python.html +0 -955
  377. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_central_limit_theorem.html +0 -290
  378. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_correlation.html +0 -818
  379. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_empirical_distributions.html +0 -351
  380. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_linear_regression.html +0 -106
  381. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_probability_distribution_plots.html +0 -228
  382. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_sampling_from_a_population.html +0 -518
  383. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_variability_of_the_sample_mean.html +0 -372
  384. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +0 -473
  385. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_interactive_questions.html +0 -242
  386. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_layout.html +0 -496
  387. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_interact.html +0 -329
  388. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_monty_hall.html +0 -866
  389. data/lib/starter_web/pages/public/_jupyter/where_to_go.adoc +0 -270
  390. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_images.adoc +0 -313
  391. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_videos.adoc +0 -281
  392. data/lib/starter_web/pages/public/learn/_roundtrip/200_typography.adoc +0 -253
  393. data/lib/starter_web/pages/public/learn/_roundtrip/300_icon_fonts.adoc +0 -579
  394. data/lib/starter_web/pages/public/learn/_roundtrip/400_asciidoc_extensions.adoc +0 -718
  395. data/lib/starter_web/pages/public/learn/_roundtrip/410_bs_modals_extentions.adoc +0 -91
  396. data/lib/starter_web/pages/public/learn/_roundtrip/420_responsive_tables_extensions.adoc +0 -420
  397. data/lib/starter_web/pages/public/learn/_roundtrip/500_themes.adoc +0 -250
  398. data/lib/starter_web/pages/public/learn/_roundtrip/600_quicksearch.adoc +0 -425
  399. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/attributes.asciidoc +0 -118
  400. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/100_gistblock.asciidoc +0 -28
  401. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_info.asciidoc +0 -14
  402. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_left_warning.asciidoc +0 -11
  403. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_right_danger.asciidoc +0 -11
  404. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_central_success.asciidoc +0 -11
  405. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_left_info.asciidoc +0 -11
  406. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_right_success.asciidoc +0 -11
  407. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_table_bs_modal_examples.asciidoc +0 -47
  408. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_info.asciidoc +0 -11
  409. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_left_info.asciidoc +0 -11
  410. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_right_success.asciidoc +0 -11
  411. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/419_advanced_modals_demo.asciidoc +0 -337
  412. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/tables/bs_modal_examples.asciidoc +0 -47
  413. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/google-ad.js +0 -130
@@ -1,1524 +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
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
10
- <div class="text_cell_render border-box-sizing rendered_html">
11
- <h2 id="2.-Styles-and-Themes">2. Styles and Themes<a class="anchor-link" href="#2.-Styles-and-Themes">&#182;</a></h2><p>In this chapter you learn how to configure various visual aspects of our plots,
12
- and how to find out more about what an be configured.</p>
13
-
14
- </div>
15
- </div>
16
- </div>
17
-
18
-
19
-
20
- <div class="
21
- cell border-box-sizing code_cell rendered">
22
- <div class="input">
23
-
24
- <div class="inner_cell">
25
- <div class="input_area">
26
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">bokeh.io</span> <span class="kn">import</span> <span class="n">output_notebook</span><span class="p">,</span> <span class="n">show</span>
27
- <span class="kn">from</span> <span class="nn">bokeh.plotting</span> <span class="kn">import</span> <span class="n">figure</span>
28
- </pre></div>
29
-
30
- </div>
31
- </div>
32
- </div>
33
-
34
- </div>
35
-
36
-
37
-
38
- <div class="nbinteract-hide_in nbinteract-hide_out
39
- cell border-box-sizing code_cell rendered">
40
- <div class="input">
41
-
42
- <div class="inner_cell">
43
- <div class="input_area">
44
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#nbi:hide_in</span>
45
- <span class="kn">import</span> <span class="nn">bokeh.sampledata</span>
46
-
47
- <span class="c1">#nbi:hide_out</span>
48
- <span class="n">bokeh</span><span class="o">.</span><span class="n">sampledata</span><span class="o">.</span><span class="n">download</span><span class="p">()</span>
49
-
50
- <span class="c1"># Make all outputs INLINE for default (why a hell this is needed !!!)</span>
51
- <span class="n">output_notebook</span><span class="p">()</span>
52
- </pre></div>
53
-
54
- </div>
55
- </div>
56
- </div>
57
-
58
- <div class="output_wrapper">
59
- <div class="output">
60
-
61
-
62
- <div class="output_area">
63
-
64
-
65
-
66
- <div class="output_subarea output_stream output_stdout output_text">
67
- <pre>Using data directory: C:\Users\jadams\.bokeh\data
68
- Skipping &#39;CGM.csv&#39; (checksum match)
69
- Skipping &#39;US_Counties.zip&#39; (checksum match)
70
- Skipping &#39;us_cities.json&#39; (checksum match)
71
- Skipping &#39;unemployment09.csv&#39; (checksum match)
72
- Skipping &#39;AAPL.csv&#39; (checksum match)
73
- Skipping &#39;FB.csv&#39; (checksum match)
74
- Skipping &#39;GOOG.csv&#39; (checksum match)
75
- Skipping &#39;IBM.csv&#39; (checksum match)
76
- Skipping &#39;MSFT.csv&#39; (checksum match)
77
- Skipping &#39;WPP2012_SA_DB03_POPULATION_QUINQUENNIAL.zip&#39; (checksum match)
78
- Skipping &#39;gapminder_fertility.csv&#39; (checksum match)
79
- Skipping &#39;gapminder_population.csv&#39; (checksum match)
80
- Skipping &#39;gapminder_life_expectancy.csv&#39; (checksum match)
81
- Skipping &#39;gapminder_regions.csv&#39; (checksum match)
82
- Skipping &#39;world_cities.zip&#39; (checksum match)
83
- Skipping &#39;airports.json&#39; (checksum match)
84
- Skipping &#39;movies.db.zip&#39; (checksum match)
85
- Skipping &#39;airports.csv&#39; (checksum match)
86
- Skipping &#39;routes.csv&#39; (checksum match)
87
- Skipping &#39;haarcascade_frontalface_default.xml&#39; (checksum match)
88
- </pre>
89
- </div>
90
- </div>
91
-
92
- <div class="output_area">
93
-
94
-
95
-
96
-
97
- <div class="output_html rendered_html output_subarea ">
98
- <div class="bk-root">
99
- <a href="https://bokeh.org" target="_blank" class="bk-logo bk-logo-small bk-logo-notebook"></a>
100
- <span id="1002">Loading BokehJS ...</span>
101
- </div>
102
-
103
- </div>
104
-
105
- </div>
106
-
107
- <div class="output_area">
108
-
109
-
110
-
111
-
112
-
113
-
114
- <div id="5874053b-f870-40c8-918a-779594e4b0e7"></div>
115
- <div class="output_subarea output_javascript ">
116
- <script type="text/javascript">
117
- var element = $('#5874053b-f870-40c8-918a-779594e4b0e7');
118
- (function(root) {
119
- function now() {
120
- return new Date();
121
- }
122
-
123
- const force = true;
124
-
125
- if (typeof root._bokeh_onload_callbacks === "undefined" || force === true) {
126
- root._bokeh_onload_callbacks = [];
127
- root._bokeh_is_loading = undefined;
128
- }
129
-
130
- const JS_MIME_TYPE = 'application/javascript';
131
- const HTML_MIME_TYPE = 'text/html';
132
- const EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';
133
- const CLASS_NAME = 'output_bokeh rendered_html';
134
-
135
- /**
136
- * Render data to the DOM node
137
- */
138
- function render(props, node) {
139
- const script = document.createElement("script");
140
- node.appendChild(script);
141
- }
142
-
143
- /**
144
- * Handle when an output is cleared or removed
145
- */
146
- function handleClearOutput(event, handle) {
147
- const cell = handle.cell;
148
-
149
- const id = cell.output_area._bokeh_element_id;
150
- const server_id = cell.output_area._bokeh_server_id;
151
- // Clean up Bokeh references
152
- if (id != null && id in Bokeh.index) {
153
- Bokeh.index[id].model.document.clear();
154
- delete Bokeh.index[id];
155
- }
156
-
157
- if (server_id !== undefined) {
158
- // Clean up Bokeh references
159
- const cmd_clean = "from bokeh.io.state import curstate; print(curstate().uuid_to_server['" + server_id + "'].get_sessions()[0].document.roots[0]._id)";
160
- cell.notebook.kernel.execute(cmd_clean, {
161
- iopub: {
162
- output: function(msg) {
163
- const id = msg.content.text.trim();
164
- if (id in Bokeh.index) {
165
- Bokeh.index[id].model.document.clear();
166
- delete Bokeh.index[id];
167
- }
168
- }
169
- }
170
- });
171
- // Destroy server and session
172
- const cmd_destroy = "import bokeh.io.notebook as ion; ion.destroy_server('" + server_id + "')";
173
- cell.notebook.kernel.execute(cmd_destroy);
174
- }
175
- }
176
-
177
- /**
178
- * Handle when a new output is added
179
- */
180
- function handleAddOutput(event, handle) {
181
- const output_area = handle.output_area;
182
- const output = handle.output;
183
-
184
- // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only
185
- if ((output.output_type != "display_data") || (!Object.prototype.hasOwnProperty.call(output.data, EXEC_MIME_TYPE))) {
186
- return
187
- }
188
-
189
- const toinsert = output_area.element.find("." + CLASS_NAME.split(' ')[0]);
190
-
191
- if (output.metadata[EXEC_MIME_TYPE]["id"] !== undefined) {
192
- toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];
193
- // store reference to embed id on output_area
194
- output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE]["id"];
195
- }
196
- if (output.metadata[EXEC_MIME_TYPE]["server_id"] !== undefined) {
197
- const bk_div = document.createElement("div");
198
- bk_div.innerHTML = output.data[HTML_MIME_TYPE];
199
- const script_attrs = bk_div.children[0].attributes;
200
- for (let i = 0; i < script_attrs.length; i++) {
201
- toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);
202
- toinsert[toinsert.length - 1].firstChild.textContent = bk_div.children[0].textContent
203
- }
204
- // store reference to server id on output_area
205
- output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE]["server_id"];
206
- }
207
- }
208
-
209
- function register_renderer(events, OutputArea) {
210
-
211
- function append_mime(data, metadata, element) {
212
- // create a DOM node to render to
213
- const toinsert = this.create_output_subarea(
214
- metadata,
215
- CLASS_NAME,
216
- EXEC_MIME_TYPE
217
- );
218
- this.keyboard_manager.register_events(toinsert);
219
- // Render to node
220
- const props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};
221
- render(props, toinsert[toinsert.length - 1]);
222
- element.append(toinsert);
223
- return toinsert
224
- }
225
-
226
- /* Handle when an output is cleared or removed */
227
- events.on('clear_output.CodeCell', handleClearOutput);
228
- events.on('delete.Cell', handleClearOutput);
229
-
230
- /* Handle when a new output is added */
231
- events.on('output_added.OutputArea', handleAddOutput);
232
-
233
- /**
234
- * Register the mime type and append_mime function with output_area
235
- */
236
- OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {
237
- /* Is output safe? */
238
- safe: true,
239
- /* Index of renderer in `output_area.display_order` */
240
- index: 0
241
- });
242
- }
243
-
244
- // register the mime type if in Jupyter Notebook environment and previously unregistered
245
- if (root.Jupyter !== undefined) {
246
- const events = require('base/js/events');
247
- const OutputArea = require('notebook/js/outputarea').OutputArea;
248
-
249
- if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {
250
- register_renderer(events, OutputArea);
251
- }
252
- }
253
- if (typeof (root._bokeh_timeout) === "undefined" || force === true) {
254
- root._bokeh_timeout = Date.now() + 5000;
255
- root._bokeh_failed_load = false;
256
- }
257
-
258
- const NB_LOAD_WARNING = {'data': {'text/html':
259
- "<div style='background-color: #fdd'>\n"+
260
- "<p>\n"+
261
- "BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \n"+
262
- "may be due to a slow or bad network connection. Possible fixes:\n"+
263
- "</p>\n"+
264
- "<ul>\n"+
265
- "<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\n"+
266
- "<li>use INLINE resources instead, as so:</li>\n"+
267
- "</ul>\n"+
268
- "<code>\n"+
269
- "from bokeh.resources import INLINE\n"+
270
- "output_notebook(resources=INLINE)\n"+
271
- "</code>\n"+
272
- "</div>"}};
273
-
274
- function display_loaded() {
275
- const el = document.getElementById("1002");
276
- if (el != null) {
277
- el.textContent = "BokehJS is loading...";
278
- }
279
- if (root.Bokeh !== undefined) {
280
- if (el != null) {
281
- el.textContent = "BokehJS " + root.Bokeh.version + " successfully loaded.";
282
- }
283
- } else if (Date.now() < root._bokeh_timeout) {
284
- setTimeout(display_loaded, 100)
285
- }
286
- }
287
-
288
- function run_callbacks() {
289
- try {
290
- root._bokeh_onload_callbacks.forEach(function(callback) {
291
- if (callback != null)
292
- callback();
293
- });
294
- } finally {
295
- delete root._bokeh_onload_callbacks
296
- }
297
- console.debug("Bokeh: all callbacks have finished");
298
- }
299
-
300
- function load_libs(css_urls, js_urls, callback) {
301
- if (css_urls == null) css_urls = [];
302
- if (js_urls == null) js_urls = [];
303
-
304
- root._bokeh_onload_callbacks.push(callback);
305
- if (root._bokeh_is_loading > 0) {
306
- console.debug("Bokeh: BokehJS is being loaded, scheduling callback at", now());
307
- return null;
308
- }
309
- if (js_urls == null || js_urls.length === 0) {
310
- run_callbacks();
311
- return null;
312
- }
313
- console.debug("Bokeh: BokehJS not loaded, scheduling load and callback at", now());
314
- root._bokeh_is_loading = css_urls.length + js_urls.length;
315
-
316
- function on_load() {
317
- root._bokeh_is_loading--;
318
- if (root._bokeh_is_loading === 0) {
319
- console.debug("Bokeh: all BokehJS libraries/stylesheets loaded");
320
- run_callbacks()
321
- }
322
- }
323
-
324
- function on_error(url) {
325
- console.error("failed to load " + url);
326
- }
327
-
328
- for (let i = 0; i < css_urls.length; i++) {
329
- const url = css_urls[i];
330
- const element = document.createElement("link");
331
- element.onload = on_load;
332
- element.onerror = on_error.bind(null, url);
333
- element.rel = "stylesheet";
334
- element.type = "text/css";
335
- element.href = url;
336
- console.debug("Bokeh: injecting link tag for BokehJS stylesheet: ", url);
337
- document.body.appendChild(element);
338
- }
339
-
340
- for (let i = 0; i < js_urls.length; i++) {
341
- const url = js_urls[i];
342
- const element = document.createElement('script');
343
- element.onload = on_load;
344
- element.onerror = on_error.bind(null, url);
345
- element.async = false;
346
- element.src = url;
347
- console.debug("Bokeh: injecting script tag for BokehJS library: ", url);
348
- document.head.appendChild(element);
349
- }
350
- };
351
-
352
- function inject_raw_css(css) {
353
- const element = document.createElement("style");
354
- element.appendChild(document.createTextNode(css));
355
- document.body.appendChild(element);
356
- }
357
-
358
- const js_urls = ["https://cdn.bokeh.org/bokeh/release/bokeh-2.4.3.min.js", "https://cdn.bokeh.org/bokeh/release/bokeh-gl-2.4.3.min.js", "https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.4.3.min.js", "https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.4.3.min.js", "https://cdn.bokeh.org/bokeh/release/bokeh-mathjax-2.4.3.min.js"];
359
- const css_urls = [];
360
-
361
- const inline_js = [ function(Bokeh) {
362
- Bokeh.set_log_level("info");
363
- },
364
- function(Bokeh) {
365
- }
366
- ];
367
-
368
- function run_inline_js() {
369
- if (root.Bokeh !== undefined || force === true) {
370
- for (let i = 0; i < inline_js.length; i++) {
371
- inline_js[i].call(root, root.Bokeh);
372
- }
373
- if (force === true) {
374
- display_loaded();
375
- }} else if (Date.now() < root._bokeh_timeout) {
376
- setTimeout(run_inline_js, 100);
377
- } else if (!root._bokeh_failed_load) {
378
- console.log("Bokeh: BokehJS failed to load within specified timeout.");
379
- root._bokeh_failed_load = true;
380
- } else if (force !== true) {
381
- const cell = $(document.getElementById("1002")).parents('.cell').data().cell;
382
- cell.output_area.append_execute_result(NB_LOAD_WARNING)
383
- }
384
- }
385
-
386
- if (root._bokeh_is_loading === 0) {
387
- console.debug("Bokeh: BokehJS loaded, going straight to plotting");
388
- run_inline_js();
389
- } else {
390
- load_libs(css_urls, js_urls, function() {
391
- console.debug("Bokeh: BokehJS plotting callback run at", now());
392
- run_inline_js();
393
- });
394
- }
395
- }(window));
396
- </script>
397
- </div>
398
-
399
- </div>
400
-
401
- </div>
402
- </div>
403
-
404
- </div>
405
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
406
- <div class="text_cell_render border-box-sizing rendered_html">
407
- <h3 id="Colors">Colors<a class="anchor-link" href="#Colors">&#182;</a></h3><p>Before getting started, it's useful to describe how colors and properties are specified in Bokeh.
408
- There are many places where you may specify colors. Bokeh can accept colors in a variety of different ways:</p>
409
- <ul>
410
- <li>any of the <a href="https://www.w3schools.com/colors/colors_names.asp">140 named HTML/CSS colors</a>, e.g <code>'green'</code>, <code>'indigo'</code></li>
411
- <li>an RGB(A) hex value, e.g., <code>'#FF0000'</code>, <code>'#44444444'</code></li>
412
- <li>a 3-tuple of integers <em>(r,g,b)</em> between 0 and 255</li>
413
- <li>a 4-tuple of <em>(r,g,b,a)</em> where <em>r</em>, <em>g</em>, <em>b</em> are integers between 0 and 255 and <em>a</em> is a floating point value between 0 and 1</li>
414
- </ul>
415
- <h3 id="Properties">Properties<a class="anchor-link" href="#Properties">&#182;</a></h3><p>Regardless of how a Bokeh plot is created, styling the visual aspects of the plot can always be accomplished by setting attributes on the Bokeh objects that comprise the resulting plot. Visual properties come in three kinds: line, fill, and text properties. For full information with code and examples see the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html">Styling Visual Properties</a> section of the user guide.</p>
416
- <h4 id="Line-Properties">Line Properties<a class="anchor-link" href="#Line-Properties">&#182;</a></h4><p>Set the visual appearance of lines. The most common are <code>line_color</code>, <code>line_alpha</code>, <code>line_width</code> and <code>line_dash</code>.</p>
417
- <h4 id="Fill-Properties">Fill Properties<a class="anchor-link" href="#Fill-Properties">&#182;</a></h4><p>Set the visual appearance of filled areas: <code>fill_color</code> and <code>fill_alpha</code>.</p>
418
- <h4 id="Text-Properties">Text Properties<a class="anchor-link" href="#Text-Properties">&#182;</a></h4><p>Set the visual appearance of lines of text. The most common are <code>text_font</code>, <code>text_font_size</code>, <code>text_color</code>, and <code>text_alpha</code>.</p>
419
- <p>Sometimes a prefix is used with property names, e.g. to distinguish between different line properties on the same object, or to give a more meaningful name. For example, to set the line width of the plot outline, you would say <code>myplot.outline_line_width = 2</code>.</p>
420
-
421
- </div>
422
- </div>
423
- </div>
424
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
425
- <div class="text_cell_render border-box-sizing rendered_html">
426
- <h3 id="Plots">Plots<a class="anchor-link" href="#Plots">&#182;</a></h3><p>Many top-level attributes of plots (outline, border, etc.) can be configured. See the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#plots">Plots</a> section of the styling guide for full information.</p>
427
- <p>Here is an example that tweaks the plot outline:</p>
428
-
429
- </div>
430
- </div>
431
- </div>
432
-
433
-
434
-
435
- <div class="
436
- cell border-box-sizing code_cell rendered">
437
- <div class="input">
438
-
439
- <div class="inner_cell">
440
- <div class="input_area">
441
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
442
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
443
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
444
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
445
- <span class="p">)</span>
446
-
447
- <span class="n">p</span><span class="o">.</span><span class="n">outline_line_width</span> <span class="o">=</span> <span class="mi">7</span>
448
- <span class="n">p</span><span class="o">.</span><span class="n">outline_line_alpha</span> <span class="o">=</span> <span class="mf">0.3</span>
449
- <span class="n">p</span><span class="o">.</span><span class="n">outline_line_color</span> <span class="o">=</span> <span class="s2">&quot;navy&quot;</span>
450
-
451
- <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span> <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span> <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
452
-
453
- <span class="c1"># show the results</span>
454
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
455
- </pre></div>
456
-
457
- </div>
458
- </div>
459
- </div>
460
-
461
- <div class="output_wrapper">
462
- <div class="output">
463
-
464
-
465
- <div class="output_area">
466
-
467
-
468
-
469
-
470
- <div class="output_html rendered_html output_subarea ">
471
-
472
- <div class="bk-root" id="364c4c19-39d9-4aca-8391-dce1a3216aed" data-root-id="1003"></div>
473
-
474
- </div>
475
-
476
- </div>
477
-
478
- <div class="output_area">
479
-
480
-
481
-
482
-
483
-
484
-
485
- <div id="5729b3c1-04ca-42a7-9b2e-4da424087b76"></div>
486
- <div class="output_subarea output_javascript ">
487
- <script type="text/javascript">
488
- var element = $('#5729b3c1-04ca-42a7-9b2e-4da424087b76');
489
- (function(root) {
490
- function embed_document(root) {
491
- const docs_json = {"a45ed3c2-e048-444c-a406-a6d81da66dba":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1012"}],"center":[{"id":"1015"},{"id":"1019"}],"height":400,"left":[{"id":"1016"}],"outline_line_alpha":0.3,"outline_line_color":"navy","outline_line_width":7,"renderers":[{"id":"1038"}],"title":{"id":"1040"},"toolbar":{"id":"1027"},"width":800,"x_range":{"id":"1004"},"x_scale":{"id":"1008"},"y_range":{"id":"1006"},"y_scale":{"id":"1010"}},"id":"1003","subtype":"Figure","type":"Plot"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1035","type":"Circle"},{"attributes":{"tools":[{"id":"1020"},{"id":"1021"},{"id":"1022"},{"id":"1023"},{"id":"1024"},{"id":"1025"}]},"id":"1027","type":"Toolbar"},{"attributes":{},"id":"1044","type":"AllLabels"},{"attributes":{},"id":"1048","type":"UnionRenderers"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1026","type":"BoxAnnotation"},{"attributes":{},"id":"1020","type":"PanTool"},{"attributes":{},"id":"1004","type":"DataRange1d"},{"attributes":{},"id":"1024","type":"ResetTool"},{"attributes":{},"id":"1021","type":"WheelZoomTool"},{"attributes":{},"id":"1006","type":"DataRange1d"},{"attributes":{"overlay":{"id":"1026"}},"id":"1022","type":"BoxZoomTool"},{"attributes":{},"id":"1023","type":"SaveTool"},{"attributes":{"coordinates":null,"group":null},"id":"1040","type":"Title"},{"attributes":{"coordinates":null,"data_source":{"id":"1034"},"glyph":{"id":"1035"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1037"},"nonselection_glyph":{"id":"1036"},"view":{"id":"1039"}},"id":"1038","type":"GlyphRenderer"},{"attributes":{},"id":"1013","type":"BasicTicker"},{"attributes":{},"id":"1008","type":"LinearScale"},{"attributes":{"source":{"id":"1034"}},"id":"1039","type":"CDSView"},{"attributes":{},"id":"1025","type":"HelpTool"},{"attributes":{},"id":"1010","type":"LinearScale"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1037","type":"Circle"},{"attributes":{},"id":"1049","type":"Selection"},{"attributes":{"coordinates":null,"formatter":{"id":"1046"},"group":null,"major_label_policy":{"id":"1047"},"ticker":{"id":"1013"}},"id":"1012","type":"LinearAxis"},{"attributes":{},"id":"1047","type":"AllLabels"},{"attributes":{"axis":{"id":"1012"},"coordinates":null,"group":null,"ticker":null},"id":"1015","type":"Grid"},{"attributes":{},"id":"1017","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1043"},"group":null,"major_label_policy":{"id":"1044"},"ticker":{"id":"1017"}},"id":"1016","type":"LinearAxis"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1036","type":"Circle"},{"attributes":{"axis":{"id":"1016"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1019","type":"Grid"},{"attributes":{},"id":"1046","type":"BasicTickFormatter"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"1049"},"selection_policy":{"id":"1048"}},"id":"1034","type":"ColumnDataSource"},{"attributes":{},"id":"1043","type":"BasicTickFormatter"}],"root_ids":["1003"]},"title":"Bokeh Application","version":"2.4.3"}};
492
- const render_items = [{"docid":"a45ed3c2-e048-444c-a406-a6d81da66dba","root_ids":["1003"],"roots":{"1003":"364c4c19-39d9-4aca-8391-dce1a3216aed"}}];
493
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
494
- }
495
- if (root.Bokeh !== undefined) {
496
- embed_document(root);
497
- } else {
498
- let attempts = 0;
499
- const timer = setInterval(function(root) {
500
- if (root.Bokeh !== undefined) {
501
- clearInterval(timer);
502
- embed_document(root);
503
- } else {
504
- attempts++;
505
- if (attempts > 100) {
506
- clearInterval(timer);
507
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
508
- }
509
- }
510
- }, 10, root)
511
- }
512
- })(window);
513
- </script>
514
- </div>
515
-
516
- </div>
517
-
518
- </div>
519
- </div>
520
-
521
- </div>
522
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
523
- <div class="text_cell_render border-box-sizing rendered_html">
524
- <h3 id="Glyphs">Glyphs<a class="anchor-link" href="#Glyphs">&#182;</a></h3><p>It's also possible to style the visual properties of glyphs (see the <a href="https://docs.bokeh.org/en/latest/docs/user_guide/styling.html#glyphs">Glyphs</a> section of the styling guide for more information). When using <code>bokeh.plotting</code> this is often done when calling the glyph methods:</p>
525
- <div class="highlight"><pre><span></span><span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span><span class="n">line_color</span><span class="o">=</span><span class="s2">&quot;red&quot;</span><span class="p">,</span> <span class="n">fill_alpha</span><span class="o">=</span><span class="mf">0.2</span><span class="p">,</span> <span class="o">...</span><span class="p">)</span>
526
- </pre></div>
527
- <p>But it is also possible to set these properties directly on glyph objects. Glyph objects are found on <code>GlyphRenderer</code> objects, which are returned by the <code>Plot.add_glyph</code> and <code>bokeh.plotting</code> glyph methods like <code>circle</code>, <code>rect</code>, etc. Let's look at an example:</p>
528
-
529
- </div>
530
- </div>
531
- </div>
532
-
533
-
534
-
535
- <div class="
536
- cell border-box-sizing code_cell rendered">
537
- <div class="input">
538
-
539
- <div class="inner_cell">
540
- <div class="input_area">
541
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
542
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
543
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
544
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
545
- <span class="p">)</span>
546
-
547
- <span class="c1"># keep a reference to the returned GlyphRenderer</span>
548
- <span class="n">r</span> <span class="o">=</span> <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
549
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span>
550
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">]</span>
551
- <span class="p">)</span>
552
-
553
- <span class="n">r</span><span class="o">.</span><span class="n">glyph</span><span class="o">.</span><span class="n">size</span> <span class="o">=</span> <span class="mi">50</span>
554
- <span class="n">r</span><span class="o">.</span><span class="n">glyph</span><span class="o">.</span><span class="n">fill_alpha</span> <span class="o">=</span> <span class="mf">0.2</span>
555
- <span class="n">r</span><span class="o">.</span><span class="n">glyph</span><span class="o">.</span><span class="n">line_color</span> <span class="o">=</span> <span class="s2">&quot;firebrick&quot;</span>
556
- <span class="n">r</span><span class="o">.</span><span class="n">glyph</span><span class="o">.</span><span class="n">line_dash</span> <span class="o">=</span> <span class="p">[</span><span class="mi">5</span><span class="p">,</span> <span class="mi">1</span><span class="p">]</span>
557
- <span class="n">r</span><span class="o">.</span><span class="n">glyph</span><span class="o">.</span><span class="n">line_width</span> <span class="o">=</span> <span class="mi">2</span>
558
-
559
- <span class="c1"># show the results</span>
560
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
561
- </pre></div>
562
-
563
- </div>
564
- </div>
565
- </div>
566
-
567
- <div class="output_wrapper">
568
- <div class="output">
569
-
570
-
571
- <div class="output_area">
572
-
573
-
574
-
575
-
576
- <div class="output_html rendered_html output_subarea ">
577
-
578
- <div class="bk-root" id="3030d42e-2f3a-4891-9c56-6e76dcf09b11" data-root-id="1106"></div>
579
-
580
- </div>
581
-
582
- </div>
583
-
584
- <div class="output_area">
585
-
586
-
587
-
588
-
589
-
590
-
591
- <div id="fbf51cf0-1d5f-4675-89b6-b7fc9d99fb68"></div>
592
- <div class="output_subarea output_javascript ">
593
- <script type="text/javascript">
594
- var element = $('#fbf51cf0-1d5f-4675-89b6-b7fc9d99fb68');
595
- (function(root) {
596
- function embed_document(root) {
597
- const docs_json = {"933f230c-461e-431c-b70f-5e84bc462ac0":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1115"}],"center":[{"id":"1118"},{"id":"1122"}],"height":400,"left":[{"id":"1119"}],"renderers":[{"id":"1141"}],"title":{"id":"1154"},"toolbar":{"id":"1130"},"width":800,"x_range":{"id":"1107"},"x_scale":{"id":"1111"},"y_range":{"id":"1109"},"y_scale":{"id":"1113"}},"id":"1106","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1107","type":"DataRange1d"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"x":{"field":"x"},"y":{"field":"y"}},"id":"1139","type":"Circle"},{"attributes":{},"id":"1160","type":"BasicTickFormatter"},{"attributes":{"axis":{"id":"1119"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1122","type":"Grid"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"line_color":{"value":"firebrick"},"line_dash":{"value":[5,1]},"line_width":{"value":2},"size":{"value":50},"x":{"field":"x"},"y":{"field":"y"}},"id":"1138","type":"Circle"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"x":{"field":"x"},"y":{"field":"y"}},"id":"1140","type":"Circle"},{"attributes":{},"id":"1128","type":"HelpTool"},{"attributes":{"coordinates":null,"group":null},"id":"1154","type":"Title"},{"attributes":{},"id":"1161","type":"AllLabels"},{"attributes":{},"id":"1157","type":"BasicTickFormatter"},{"attributes":{},"id":"1109","type":"DataRange1d"},{"attributes":{},"id":"1158","type":"AllLabels"},{"attributes":{},"id":"1116","type":"BasicTicker"},{"attributes":{},"id":"1162","type":"UnionRenderers"},{"attributes":{},"id":"1163","type":"Selection"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1129","type":"BoxAnnotation"},{"attributes":{},"id":"1113","type":"LinearScale"},{"attributes":{},"id":"1111","type":"LinearScale"},{"attributes":{"tools":[{"id":"1123"},{"id":"1124"},{"id":"1125"},{"id":"1126"},{"id":"1127"},{"id":"1128"}]},"id":"1130","type":"Toolbar"},{"attributes":{"overlay":{"id":"1129"}},"id":"1125","type":"BoxZoomTool"},{"attributes":{"axis":{"id":"1115"},"coordinates":null,"group":null,"ticker":null},"id":"1118","type":"Grid"},{"attributes":{"source":{"id":"1137"}},"id":"1142","type":"CDSView"},{"attributes":{},"id":"1124","type":"WheelZoomTool"},{"attributes":{"coordinates":null,"formatter":{"id":"1160"},"group":null,"major_label_policy":{"id":"1161"},"ticker":{"id":"1116"}},"id":"1115","type":"LinearAxis"},{"attributes":{},"id":"1126","type":"SaveTool"},{"attributes":{"coordinates":null,"formatter":{"id":"1157"},"group":null,"major_label_policy":{"id":"1158"},"ticker":{"id":"1120"}},"id":"1119","type":"LinearAxis"},{"attributes":{},"id":"1127","type":"ResetTool"},{"attributes":{},"id":"1120","type":"BasicTicker"},{"attributes":{"coordinates":null,"data_source":{"id":"1137"},"glyph":{"id":"1138"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1140"},"nonselection_glyph":{"id":"1139"},"view":{"id":"1142"}},"id":"1141","type":"GlyphRenderer"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"1163"},"selection_policy":{"id":"1162"}},"id":"1137","type":"ColumnDataSource"},{"attributes":{},"id":"1123","type":"PanTool"}],"root_ids":["1106"]},"title":"Bokeh Application","version":"2.4.3"}};
598
- const render_items = [{"docid":"933f230c-461e-431c-b70f-5e84bc462ac0","root_ids":["1106"],"roots":{"1106":"3030d42e-2f3a-4891-9c56-6e76dcf09b11"}}];
599
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
600
- }
601
- if (root.Bokeh !== undefined) {
602
- embed_document(root);
603
- } else {
604
- let attempts = 0;
605
- const timer = setInterval(function(root) {
606
- if (root.Bokeh !== undefined) {
607
- clearInterval(timer);
608
- embed_document(root);
609
- } else {
610
- attempts++;
611
- if (attempts > 100) {
612
- clearInterval(timer);
613
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
614
- }
615
- }
616
- }, 10, root)
617
- }
618
- })(window);
619
- </script>
620
- </div>
621
-
622
- </div>
623
-
624
- </div>
625
- </div>
626
-
627
- </div>
628
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
629
- <div class="text_cell_render border-box-sizing rendered_html">
630
- <h4 id="Selection-and-non-selection-visuals">Selection and non-selection visuals<a class="anchor-link" href="#Selection-and-non-selection-visuals">&#182;</a></h4><p>You can also control how glyphs look when there are selections involved. The set of "selected" points is displayed according to the optional <code>.selection_glyph</code> property of a <code>GlyphRenderer</code>:</p>
631
- <div class="highlight"><pre><span></span><span class="n">r</span><span class="o">.</span><span class="n">selection_glyph</span> <span class="o">=</span> <span class="n">Circle</span><span class="p">(</span><span class="n">fill_alpha</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">fill_color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span> <span class="n">line_color</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span>
632
- </pre></div>
633
- <p>When there is a non-empty selection, the set of "unselected" points is displayed according to the optional <code>.nonselection_glyph</code> property of a <code>GlyphRenderer</code>:</p>
634
- <div class="highlight"><pre><span></span><span class="n">r</span><span class="o">.</span><span class="n">nonselection_glyph</span> <span class="o">=</span> <span class="n">Circle</span><span class="p">(</span><span class="n">fill_alpha</span><span class="o">=</span><span class="mf">0.2</span><span class="p">,</span> <span class="n">fill_color</span><span class="o">=</span><span class="s2">&quot;grey&quot;</span><span class="p">,</span> <span class="n">line_color</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span>
635
- </pre></div>
636
- <p>When using the <code>bokeh.plotting</code> interface, it is easier to pass these visual properties to the glyph methods as shown below. The glyph method will create the selection or nonselection glyphs and attach them to the renderer for you.</p>
637
-
638
- </div>
639
- </div>
640
- </div>
641
-
642
-
643
-
644
- <div class="
645
- cell border-box-sizing code_cell rendered">
646
- <div class="input">
647
-
648
- <div class="inner_cell">
649
- <div class="input_area">
650
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
651
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
652
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
653
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
654
- <span class="n">tools</span><span class="o">=</span><span class="s2">&quot;tap&quot;</span><span class="p">,</span>
655
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Select a circle&quot;</span>
656
- <span class="p">)</span>
657
-
658
- <span class="n">renderer</span> <span class="o">=</span> <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
659
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">],</span>
660
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">7</span><span class="p">],</span>
661
- <span class="n">size</span><span class="o">=</span><span class="mi">50</span><span class="p">,</span>
662
- <span class="c1"># set visual properties for selected glyphs</span>
663
- <span class="n">selection_color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span>
664
- <span class="c1"># set visual properties for non-selected glyphs</span>
665
- <span class="n">nonselection_fill_alpha</span><span class="o">=</span><span class="mf">0.2</span><span class="p">,</span>
666
- <span class="n">nonselection_fill_color</span><span class="o">=</span><span class="s2">&quot;grey&quot;</span><span class="p">,</span>
667
- <span class="n">nonselection_line_color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span>
668
- <span class="n">nonselection_line_alpha</span><span class="o">=</span><span class="mf">1.0</span>
669
- <span class="p">)</span>
670
-
671
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
672
- </pre></div>
673
-
674
- </div>
675
- </div>
676
- </div>
677
-
678
- <div class="output_wrapper">
679
- <div class="output">
680
-
681
-
682
- <div class="output_area">
683
-
684
-
685
-
686
-
687
- <div class="output_html rendered_html output_subarea ">
688
-
689
- <div class="bk-root" id="0361fe81-0a58-444f-86ec-20b629ec1cc4" data-root-id="1220"></div>
690
-
691
- </div>
692
-
693
- </div>
694
-
695
- <div class="output_area">
696
-
697
-
698
-
699
-
700
-
701
-
702
- <div id="c0c9b237-2940-460d-b020-aff1aa80d561"></div>
703
- <div class="output_subarea output_javascript ">
704
- <script type="text/javascript">
705
- var element = $('#c0c9b237-2940-460d-b020-aff1aa80d561');
706
- (function(root) {
707
- function embed_document(root) {
708
- const docs_json = {"cdec5a83-254c-4bad-b1db-7aa97b71ca34":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1231"}],"center":[{"id":"1234"},{"id":"1238"}],"height":400,"left":[{"id":"1235"}],"renderers":[{"id":"1247"}],"title":{"id":"1221"},"toolbar":{"id":"1240"},"width":800,"x_range":{"id":"1223"},"x_scale":{"id":"1227"},"y_range":{"id":"1225"},"y_scale":{"id":"1229"}},"id":"1220","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1274","type":"AllLabels"},{"attributes":{},"id":"1277","type":"AllLabels"},{"attributes":{},"id":"1278","type":"UnionRenderers"},{"attributes":{"coordinates":null,"group":null,"text":"Select a circle"},"id":"1221","type":"Title"},{"attributes":{},"id":"1276","type":"BasicTickFormatter"},{"attributes":{},"id":"1225","type":"DataRange1d"},{"attributes":{"tools":[{"id":"1239"}]},"id":"1240","type":"Toolbar"},{"attributes":{},"id":"1279","type":"Selection"},{"attributes":{},"id":"1273","type":"BasicTickFormatter"},{"attributes":{},"id":"1232","type":"BasicTicker"},{"attributes":{},"id":"1227","type":"LinearScale"},{"attributes":{"source":{"id":"1242"}},"id":"1248","type":"CDSView"},{"attributes":{},"id":"1229","type":"LinearScale"},{"attributes":{"coordinates":null,"data_source":{"id":"1242"},"glyph":{"id":"1243"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1246"},"nonselection_glyph":{"id":"1244"},"selection_glyph":{"id":"1245"},"view":{"id":"1248"}},"id":"1247","type":"GlyphRenderer"},{"attributes":{"coordinates":null,"formatter":{"id":"1276"},"group":null,"major_label_policy":{"id":"1277"},"ticker":{"id":"1232"}},"id":"1231","type":"LinearAxis"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"size":{"value":50},"x":{"field":"x"},"y":{"field":"y"}},"id":"1243","type":"Circle"},{"attributes":{"axis":{"id":"1231"},"coordinates":null,"group":null,"ticker":null},"id":"1234","type":"Grid"},{"attributes":{"fill_color":{"value":"firebrick"},"hatch_color":{"value":"firebrick"},"line_color":{"value":"firebrick"},"size":{"value":50},"x":{"field":"x"},"y":{"field":"y"}},"id":"1245","type":"Circle"},{"attributes":{},"id":"1236","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1273"},"group":null,"major_label_policy":{"id":"1274"},"ticker":{"id":"1236"}},"id":"1235","type":"LinearAxis"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"grey"},"hatch_alpha":{"value":0.1},"line_color":{"value":"firebrick"},"size":{"value":50},"x":{"field":"x"},"y":{"field":"y"}},"id":"1244","type":"Circle"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"size":{"value":50},"x":{"field":"x"},"y":{"field":"y"}},"id":"1246","type":"Circle"},{"attributes":{"axis":{"id":"1235"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1238","type":"Grid"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"1279"},"selection_policy":{"id":"1278"}},"id":"1242","type":"ColumnDataSource"},{"attributes":{"callback":null},"id":"1239","type":"TapTool"},{"attributes":{},"id":"1223","type":"DataRange1d"}],"root_ids":["1220"]},"title":"Bokeh Application","version":"2.4.3"}};
709
- const render_items = [{"docid":"cdec5a83-254c-4bad-b1db-7aa97b71ca34","root_ids":["1220"],"roots":{"1220":"0361fe81-0a58-444f-86ec-20b629ec1cc4"}}];
710
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
711
- }
712
- if (root.Bokeh !== undefined) {
713
- embed_document(root);
714
- } else {
715
- let attempts = 0;
716
- const timer = setInterval(function(root) {
717
- if (root.Bokeh !== undefined) {
718
- clearInterval(timer);
719
- embed_document(root);
720
- } else {
721
- attempts++;
722
- if (attempts > 100) {
723
- clearInterval(timer);
724
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
725
- }
726
- }
727
- }, 10, root)
728
- }
729
- })(window);
730
- </script>
731
- </div>
732
-
733
- </div>
734
-
735
- </div>
736
- </div>
737
-
738
- </div>
739
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
740
- <div class="text_cell_render border-box-sizing rendered_html">
741
- <p>It is also possible to specify the visual appearance of glyphs when they are "inspected", e.g. by a hover tool. This is accomplished by setting an optional <code>hover_glyph</code> on the glyph renderer:</p>
742
- <div class="highlight"><pre><span></span><span class="n">r</span><span class="o">.</span><span class="n">hover_glyph</span> <span class="o">=</span> <span class="n">Circle</span><span class="p">(</span><span class="n">fill_alpha</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">fill_color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span> <span class="n">line_color</span><span class="o">=</span><span class="kc">None</span><span class="p">)</span>
743
- </pre></div>
744
- <p>Or if using <code>bokeh.plotting</code> glyph methods, by passing <code>hover_fill_alpha</code>, etc. to the glyph method. Lets look at an example that works together with a <code>HoverTool</code> configured for "hline" hit-testing.</p>
745
-
746
- </div>
747
- </div>
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="kn">from</span> <span class="nn">bokeh.models.tools</span> <span class="kn">import</span> <span class="n">HoverTool</span>
759
- <span class="kn">from</span> <span class="nn">bokeh.sampledata.glucose</span> <span class="kn">import</span> <span class="n">data</span>
760
-
761
- <span class="n">subset</span> <span class="o">=</span> <span class="n">data</span><span class="o">.</span><span class="n">loc</span><span class="p">[</span><span class="s1">&#39;2010-10-06&#39;</span><span class="p">]</span>
762
-
763
- <span class="n">x</span><span class="p">,</span> <span class="n">y</span> <span class="o">=</span> <span class="n">subset</span><span class="o">.</span><span class="n">index</span><span class="o">.</span><span class="n">to_series</span><span class="p">(),</span> <span class="n">subset</span><span class="p">[</span><span class="s1">&#39;glucose&#39;</span><span class="p">]</span>
764
-
765
- <span class="c1"># Basic plot setup</span>
766
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
767
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
768
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
769
- <span class="n">x_axis_type</span><span class="o">=</span><span class="s2">&quot;datetime&quot;</span><span class="p">,</span>
770
- <span class="n">title</span><span class="o">=</span><span class="s1">&#39;Hover over points&#39;</span>
771
- <span class="p">)</span>
772
-
773
- <span class="n">p</span><span class="o">.</span><span class="n">line</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">line_dash</span><span class="o">=</span><span class="s2">&quot;4 4&quot;</span><span class="p">,</span> <span class="n">line_width</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">color</span><span class="o">=</span><span class="s1">&#39;gray&#39;</span><span class="p">)</span>
774
-
775
- <span class="n">cr</span> <span class="o">=</span> <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
776
- <span class="n">x</span><span class="p">,</span>
777
- <span class="n">y</span><span class="p">,</span>
778
- <span class="n">size</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span>
779
- <span class="n">fill_color</span><span class="o">=</span><span class="s2">&quot;grey&quot;</span><span class="p">,</span> <span class="n">hover_fill_color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span>
780
- <span class="n">fill_alpha</span><span class="o">=</span><span class="mf">0.05</span><span class="p">,</span> <span class="n">hover_alpha</span><span class="o">=</span><span class="mf">0.3</span><span class="p">,</span>
781
- <span class="n">line_color</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">hover_line_color</span><span class="o">=</span><span class="s2">&quot;white&quot;</span>
782
- <span class="p">)</span>
783
-
784
- <span class="n">p</span><span class="o">.</span><span class="n">add_tools</span><span class="p">(</span>
785
- <span class="n">HoverTool</span><span class="p">(</span><span class="n">tooltips</span><span class="o">=</span><span class="kc">None</span><span class="p">,</span> <span class="n">renderers</span><span class="o">=</span><span class="p">[</span><span class="n">cr</span><span class="p">],</span> <span class="n">mode</span><span class="o">=</span><span class="s1">&#39;hline&#39;</span><span class="p">)</span>
786
- <span class="p">)</span>
787
-
788
- <span class="c1"># show the results</span>
789
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
790
- </pre></div>
791
-
792
- </div>
793
- </div>
794
- </div>
795
-
796
- <div class="output_wrapper">
797
- <div class="output">
798
-
799
-
800
- <div class="output_area">
801
-
802
-
803
-
804
-
805
- <div class="output_html rendered_html output_subarea ">
806
-
807
- <div class="bk-root" id="55d5b544-b88c-4857-9409-dfe7ff547125" data-root-id="1325"></div>
808
-
809
- </div>
810
-
811
- </div>
812
-
813
- <div class="output_area">
814
-
815
-
816
-
817
-
818
-
819
-
820
- <div id="b0f903a9-9741-4806-8131-b8dee58f1bd1"></div>
821
- <div class="output_subarea output_javascript ">
822
- <script type="text/javascript">
823
- var element = $('#b0f903a9-9741-4806-8131-b8dee58f1bd1');
824
- (function(root) {
825
- function embed_document(root) {
826
- const docs_json = {"8fe97e7e-0d37-43aa-b33f-ca34e8d58cbf":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1336"}],"center":[{"id":"1339"},{"id":"1343"}],"height":400,"left":[{"id":"1340"}],"renderers":[{"id":"1362"},{"id":"1369"}],"title":{"id":"1326"},"toolbar":{"id":"1351"},"width":800,"x_range":{"id":"1328"},"x_scale":{"id":"1332"},"y_range":{"id":"1330"},"y_scale":{"id":"1334"}},"id":"1325","subtype":"Figure","type":"Plot"},{"attributes":{"overlay":{"id":"1350"}},"id":"1346","type":"BoxZoomTool"},{"attributes":{"days":[1,4,7,10,13,16,19,22,25,28]},"id":"1420","type":"DaysTicker"},{"attributes":{"coordinates":null,"group":null,"text":"Hover over points"},"id":"1326","type":"Title"},{"attributes":{"coordinates":null,"data_source":{"id":"1364"},"glyph":{"id":"1365"},"group":null,"hover_glyph":{"id":"1367"},"muted_glyph":{"id":"1368"},"nonselection_glyph":{"id":"1366"},"view":{"id":"1370"}},"id":"1369","type":"GlyphRenderer"},{"attributes":{},"id":"1328","type":"DataRange1d"},{"attributes":{"source":{"id":"1364"}},"id":"1370","type":"CDSView"},{"attributes":{},"id":"1347","type":"SaveTool"},{"attributes":{"num_minor_ticks":5,"tickers":[{"id":"1416"},{"id":"1417"},{"id":"1418"},{"id":"1419"},{"id":"1420"},{"id":"1421"},{"id":"1422"},{"id":"1423"},{"id":"1424"},{"id":"1425"},{"id":"1426"},{"id":"1427"}]},"id":"1337","type":"DatetimeTicker"},{"attributes":{},"id":"1406","type":"BasicTickFormatter"},{"attributes":{"months":[0,1,2,3,4,5,6,7,8,9,10,11]},"id":"1423","type":"MonthsTicker"},{"attributes":{"days":[1,8,15,22]},"id":"1421","type":"DaysTicker"},{"attributes":{},"id":"1345","type":"WheelZoomTool"},{"attributes":{},"id":"1349","type":"HelpTool"},{"attributes":{"days":[1,15]},"id":"1422","type":"DaysTicker"},{"attributes":{},"id":"1332","type":"LinearScale"},{"attributes":{"base":60,"mantissas":[1,2,5,10,15,20,30],"max_interval":1800000.0,"min_interval":1000.0,"num_minor_ticks":0},"id":"1417","type":"AdaptiveTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1409"},"group":null,"major_label_policy":{"id":"1410"},"ticker":{"id":"1337"}},"id":"1336","type":"DatetimeAxis"},{"attributes":{},"id":"1334","type":"LinearScale"},{"attributes":{"line_alpha":0.1,"line_color":"gray","line_dash":[4,4],"x":{"field":"x"},"y":{"field":"y"}},"id":"1360","type":"Line"},{"attributes":{"months":[0,2,4,6,8,10]},"id":"1424","type":"MonthsTicker"},{"attributes":{},"id":"1407","type":"AllLabels"},{"attributes":{"fill_alpha":{"value":0.05},"fill_color":{"value":"grey"},"line_color":{"value":null},"size":{"value":20},"x":{"field":"x"},"y":{"field":"y"}},"id":"1365","type":"Circle"},{"attributes":{"months":[0,4,8]},"id":"1425","type":"MonthsTicker"},{"attributes":{},"id":"1410","type":"AllLabels"},{"attributes":{"axis":{"id":"1336"},"coordinates":null,"group":null,"ticker":null},"id":"1339","type":"Grid"},{"attributes":{},"id":"1409","type":"DatetimeTickFormatter"},{"attributes":{},"id":"1341","type":"BasicTicker"},{"attributes":{},"id":"1411","type":"UnionRenderers"},{"attributes":{"mantissas":[1,2,5],"max_interval":500.0,"num_minor_ticks":0},"id":"1416","type":"AdaptiveTicker"},{"attributes":{"months":[0,6]},"id":"1426","type":"MonthsTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1406"},"group":null,"major_label_policy":{"id":"1407"},"ticker":{"id":"1341"}},"id":"1340","type":"LinearAxis"},{"attributes":{},"id":"1412","type":"Selection"},{"attributes":{"data":{"x":{"__ndarray__":"AADyke23ckIAADDb7bdyQgAAbiTut3JCAACsbe63ckIAAOq27rdyQgAAKADvt3JCAABmSe+3ckIAAKSS77dyQgAA4tvvt3JCAAAgJfC3ckIAAF5u8LdyQgAAnLfwt3JCAADaAPG3ckIAABhK8bdyQgAAVpPxt3JCAACU3PG3ckIAANIl8rdyQgAAEG/yt3JCAABOuPK3ckIAAIwB87dyQgAAykrzt3JCAAAIlPO3ckIAAEbd87dyQgAAhCb0t3JCAADCb/S3ckIAAAC59LdyQgAAPgL1t3JCAAB8S/W3ckIAALqU9bdyQgAA+N31t3JCAAA2J/a3ckIAAHRw9rdyQgAAsrn2t3JCAADwAve3ckIAAC5M97dyQgAAbJX3t3JCAACq3ve3ckIAAOgn+LdyQgAAJnH4t3JCAABkuvi3ckIAAKID+bdyQgAA4Ez5t3JCAAAelvm3ckIAAFzf+bdyQgAAmij6t3JCAADYcfq3ckIAABa7+rdyQgAAVAT7t3JCAACSTfu3ckIAANCW+7dyQgAADuD7t3JCAABMKfy3ckIAAIpy/LdyQgAAyLv8t3JCAAAGBf23ckIAAERO/bdyQgAAgpf9t3JCAADA4P23ckIAAP4p/rdyQgAAPHP+t3JCAAB6vP63ckIAALgF/7dyQgAA9k7/t3JCAAA0mP+3ckIAAHLh/7dyQgAAsCoAuHJCAADucwC4ckIAACy9ALhyQgAAagYBuHJCAACoTwG4ckIAAOaYAbhyQgAAJOIBuHJCAABiKwK4ckIAAKB0ArhyQgAA3r0CuHJCAAAcBwO4ckIAAFpQA7hyQgAAmJkDuHJCAADW4gO4ckIAABQsBLhyQgAAUnUEuHJCAACQvgS4ckIAAM4HBbhyQgAADFEFuHJCAABKmgW4ckIAAIjjBbhyQgAAxiwGuHJCAAAEdga4ckIAAEK/BrhyQgAAgAgHuHJCAAC+UQe4ckIAAPyaB7hyQgAAOuQHuHJCAAB4LQi4ckIAALZ2CLhyQgAA9L8IuHJCAAAyCQm4ckIAAHBSCbhyQgAArpsJuHJCAADs5Am4ckIAACouCrhyQgAAaHcKuHJCAACmwAq4ckIAAOQJC7hyQgAAIlMLuHJCAABgnAu4ckIAAJ7lC7hyQgAA3C4MuHJCAAAaeAy4ckIAAFjBDLhyQgAAlgoNuHJCAADUUw24ckIAABKdDbhyQgAAUOYNuHJCAACOLw64ckIAAMx4DrhyQgAACsIOuHJCAABICw+4ckIAAIZUD7hyQgAAxJ0PuHJCAAAC5w+4ckIAAEAwELhyQgAAfnkQuHJCAAC8whC4ckIAAPoLEbhyQgAAOFURuHJCAAB2nhG4ckIAALTnEbhyQgAA8jASuHJCAAAwehK4ckIAAG7DErhyQgAArAwTuHJCAADqVRO4ckIAACifE7hyQgAAZugTuHJCAACkMRS4ckIAAOJ6FLhyQgAAIMQUuHJCAABeDRW4ckIAAJxWFbhyQgAA2p8VuHJCAAAY6RW4ckIAAFYyFrhyQgAAlHsWuHJCAADSxBa4ckIAABAOF7hyQgAATlcXuHJCAACMoBe4ckIAAMrpF7hyQgAACDMYuHJCAABGfBi4ckIAAITFGLhyQgAAwg4ZuHJCAAAAWBm4ckIAAD6hGbhyQgAAfOoZuHJCAAC6Mxq4ckIAAPh8GrhyQgAANsYauHJCAAB0Dxu4ckIAALJYG7hyQgAA8KEbuHJCAAAu6xu4ckIAAGw0HLhyQgAAqn0cuHJCAADoxhy4ckIAACYQHbhyQgAAZFkduHJCAACioh24ckIAAODrHbhyQgAAHjUeuHJCAABcfh64ckIAAJrHHrhyQgAA2BAfuHJCAAAWWh+4ckIAAFSjH7hyQgAAkuwfuHJCAADQNSC4ckIAAA5/ILhyQgAATMgguHJCAACKESG4ckIAAMhaIbhyQgAABqQhuHJCAABE7SG4ckIAAII2IrhyQgAAwH8iuHJCAAD+yCK4ckIAADwSI7hyQgAAelsjuHJCAAC4pCO4ckIAAPbtI7hyQgAANDckuHJCAABygCS4ckIAALDJJLhyQgAA7hIluHJCAAAsXCW4ckIAAGqlJbhyQgAAqO4luHJCAADmNya4ckIAACSBJrhyQgAAYsomuHJCAACgEye4ckIAAN5cJ7hyQgAAHKYnuHJCAABa7ye4ckIAAJg4KLhyQgAA1oEouHJCAAAUyyi4ckIAAFIUKbhyQgAAkF0puHJCAADOpim4ckIAAAzwKbhyQgAASjkquHJCAACIgiq4ckIAAMbLKrhyQgAABBUruHJCAABCXiu4ckIAAICnK7hyQgAAvvAruHJCAAD8OSy4ckIAADqDLLhyQgAAeMwsuHJCAAC2FS24ckIAAPReLbhyQgAAMqgtuHJCAABw8S24ckIAAK46LrhyQgAA7IMuuHJCAAAqzS64ckIAAGgWL7hyQgAApl8vuHJCAADkqC+4ckIAACLyL7hyQgAAYDswuHJCAACehDC4ckIAANzNMLhyQgAAGhcxuHJCAABYYDG4ckIAAJapMbhyQgAA1PIxuHJCAAASPDK4ckIAAFCFMrhyQgAAjs4yuHJCAADMFzO4ckIAAAphM7hyQgAASKozuHJCAACG8zO4ckIAAMQ8NLhyQgAAAoY0uHJCAABAzzS4ckIAAH4YNbhyQgAAvGE1uHJCAAD6qjW4ckIAADj0NbhyQgAAdj02uHJCAAC0hja4ckIAAPLPNrhyQgAAMBk3uHJCAABuYje4ckIAAKyrN7hyQgAA6vQ3uHJCAAAoPji4ckIAAGaHOLhyQgAApNA4uHJCAADiGTm4ckIAACBjObhyQgAAXqw5uHJCAACc9Tm4ckIAANo+OrhyQgAAGIg6uHJCAABW0Tq4ckIAAJQaO7hyQgAA0mM7uHJCAAAQrTu4ckIAAE72O7hyQgAAjD88uHJCAADKiDy4ckIAAAjSPLhyQgAARhs9uHJCAACEZD24ckIAAMKtPbhyQgAAAPc9uHJCAAA+QD64ckIAAHyJPrhyQgAAutI+uHJCAAD4Gz+4ckIAADZlP7hyQgAAdK4/uHJC","dtype":"float64","order":"little","shape":[288]},"y":[143,147,150,152,152,152,154,155,142,140,138,134,131,130,128,127,126,126,126,126,127,129,131,132,134,136,136,136,136,135,134,132,130,130,130,129,128,127,125,124,123,123,122,121,120,118,115,112,111,111,110,110,109,108,107,107,107,108,107,105,105,105,105,104,103,102,99,97,96,94,94,93,93,92,91,92,94,95,96,97,99,102,104,112,112,112,111,110,107,104,105,105,103,99,96,94,95,102,114,128,144,160,173,185,196,205,209,214,219,226,234,241,248,255,260,265,268,270,272,271,271,268,265,261,256,253,250,246,244,241,237,233,229,225,222,204,200,197,193,190,186,182,179,175,171,168,164,158,154,151,148,145,141,133,139,152,173,196,217,233,244,249,250,253,256,260,263,265,265,264,260,254,246,234,217,200,188,181,175,169,164,159,154,147,138,132,129,127,123,117,111,106,104,103,100,94,88,83,78,75,73,71,69,68,67,67,68,70,71,71,70,69,68,67,67,67,66,67,69,71,74,76,78,80,80,80,80,80,80,82,84,87,90,92,87,87,86,86,86,86,87,87,87,85,83,82,83,87,95,107,118,130,141,149,172,179,187,201,214,221,225,230,232,230,223,216,208,199,191,185,181,177,176,177,176,173,171,169,163,154,152,153,154,154,153,151,150,150]},"selected":{"id":"1412"},"selection_policy":{"id":"1411"}},"id":"1358","type":"ColumnDataSource"},{"attributes":{"line_alpha":0.2,"line_color":"gray","line_dash":[4,4],"x":{"field":"x"},"y":{"field":"y"}},"id":"1361","type":"Line"},{"attributes":{"coordinates":null,"data_source":{"id":"1358"},"glyph":{"id":"1359"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1361"},"nonselection_glyph":{"id":"1360"},"view":{"id":"1363"}},"id":"1362","type":"GlyphRenderer"},{"attributes":{},"id":"1427","type":"YearsTicker"},{"attributes":{"callback":null,"mode":"hline","renderers":[{"id":"1369"}],"tooltips":null},"id":"1371","type":"HoverTool"},{"attributes":{},"id":"1413","type":"UnionRenderers"},{"attributes":{"axis":{"id":"1340"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1343","type":"Grid"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"grey"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":null},"size":{"value":20},"x":{"field":"x"},"y":{"field":"y"}},"id":"1368","type":"Circle"},{"attributes":{"line_color":"gray","line_dash":[4,4],"x":{"field":"x"},"y":{"field":"y"}},"id":"1359","type":"Line"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"grey"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":null},"size":{"value":20},"x":{"field":"x"},"y":{"field":"y"}},"id":"1366","type":"Circle"},{"attributes":{},"id":"1414","type":"Selection"},{"attributes":{"source":{"id":"1358"}},"id":"1363","type":"CDSView"},{"attributes":{"tools":[{"id":"1344"},{"id":"1345"},{"id":"1346"},{"id":"1347"},{"id":"1348"},{"id":"1349"},{"id":"1371"}]},"id":"1351","type":"Toolbar"},{"attributes":{"fill_alpha":{"value":0.3},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.3},"line_alpha":{"value":0.3},"line_color":{"value":"white"},"size":{"value":20},"x":{"field":"x"},"y":{"field":"y"}},"id":"1367","type":"Circle"},{"attributes":{"base":24,"mantissas":[1,2,4,6,8,12],"max_interval":43200000.0,"min_interval":3600000.0,"num_minor_ticks":0},"id":"1418","type":"AdaptiveTicker"},{"attributes":{"data":{"x":{"__ndarray__":"AADyke23ckIAADDb7bdyQgAAbiTut3JCAACsbe63ckIAAOq27rdyQgAAKADvt3JCAABmSe+3ckIAAKSS77dyQgAA4tvvt3JCAAAgJfC3ckIAAF5u8LdyQgAAnLfwt3JCAADaAPG3ckIAABhK8bdyQgAAVpPxt3JCAACU3PG3ckIAANIl8rdyQgAAEG/yt3JCAABOuPK3ckIAAIwB87dyQgAAykrzt3JCAAAIlPO3ckIAAEbd87dyQgAAhCb0t3JCAADCb/S3ckIAAAC59LdyQgAAPgL1t3JCAAB8S/W3ckIAALqU9bdyQgAA+N31t3JCAAA2J/a3ckIAAHRw9rdyQgAAsrn2t3JCAADwAve3ckIAAC5M97dyQgAAbJX3t3JCAACq3ve3ckIAAOgn+LdyQgAAJnH4t3JCAABkuvi3ckIAAKID+bdyQgAA4Ez5t3JCAAAelvm3ckIAAFzf+bdyQgAAmij6t3JCAADYcfq3ckIAABa7+rdyQgAAVAT7t3JCAACSTfu3ckIAANCW+7dyQgAADuD7t3JCAABMKfy3ckIAAIpy/LdyQgAAyLv8t3JCAAAGBf23ckIAAERO/bdyQgAAgpf9t3JCAADA4P23ckIAAP4p/rdyQgAAPHP+t3JCAAB6vP63ckIAALgF/7dyQgAA9k7/t3JCAAA0mP+3ckIAAHLh/7dyQgAAsCoAuHJCAADucwC4ckIAACy9ALhyQgAAagYBuHJCAACoTwG4ckIAAOaYAbhyQgAAJOIBuHJCAABiKwK4ckIAAKB0ArhyQgAA3r0CuHJCAAAcBwO4ckIAAFpQA7hyQgAAmJkDuHJCAADW4gO4ckIAABQsBLhyQgAAUnUEuHJCAACQvgS4ckIAAM4HBbhyQgAADFEFuHJCAABKmgW4ckIAAIjjBbhyQgAAxiwGuHJCAAAEdga4ckIAAEK/BrhyQgAAgAgHuHJCAAC+UQe4ckIAAPyaB7hyQgAAOuQHuHJCAAB4LQi4ckIAALZ2CLhyQgAA9L8IuHJCAAAyCQm4ckIAAHBSCbhyQgAArpsJuHJCAADs5Am4ckIAACouCrhyQgAAaHcKuHJCAACmwAq4ckIAAOQJC7hyQgAAIlMLuHJCAABgnAu4ckIAAJ7lC7hyQgAA3C4MuHJCAAAaeAy4ckIAAFjBDLhyQgAAlgoNuHJCAADUUw24ckIAABKdDbhyQgAAUOYNuHJCAACOLw64ckIAAMx4DrhyQgAACsIOuHJCAABICw+4ckIAAIZUD7hyQgAAxJ0PuHJCAAAC5w+4ckIAAEAwELhyQgAAfnkQuHJCAAC8whC4ckIAAPoLEbhyQgAAOFURuHJCAAB2nhG4ckIAALTnEbhyQgAA8jASuHJCAAAwehK4ckIAAG7DErhyQgAArAwTuHJCAADqVRO4ckIAACifE7hyQgAAZugTuHJCAACkMRS4ckIAAOJ6FLhyQgAAIMQUuHJCAABeDRW4ckIAAJxWFbhyQgAA2p8VuHJCAAAY6RW4ckIAAFYyFrhyQgAAlHsWuHJCAADSxBa4ckIAABAOF7hyQgAATlcXuHJCAACMoBe4ckIAAMrpF7hyQgAACDMYuHJCAABGfBi4ckIAAITFGLhyQgAAwg4ZuHJCAAAAWBm4ckIAAD6hGbhyQgAAfOoZuHJCAAC6Mxq4ckIAAPh8GrhyQgAANsYauHJCAAB0Dxu4ckIAALJYG7hyQgAA8KEbuHJCAAAu6xu4ckIAAGw0HLhyQgAAqn0cuHJCAADoxhy4ckIAACYQHbhyQgAAZFkduHJCAACioh24ckIAAODrHbhyQgAAHjUeuHJCAABcfh64ckIAAJrHHrhyQgAA2BAfuHJCAAAWWh+4ckIAAFSjH7hyQgAAkuwfuHJCAADQNSC4ckIAAA5/ILhyQgAATMgguHJCAACKESG4ckIAAMhaIbhyQgAABqQhuHJCAABE7SG4ckIAAII2IrhyQgAAwH8iuHJCAAD+yCK4ckIAADwSI7hyQgAAelsjuHJCAAC4pCO4ckIAAPbtI7hyQgAANDckuHJCAABygCS4ckIAALDJJLhyQgAA7hIluHJCAAAsXCW4ckIAAGqlJbhyQgAAqO4luHJCAADmNya4ckIAACSBJrhyQgAAYsomuHJCAACgEye4ckIAAN5cJ7hyQgAAHKYnuHJCAABa7ye4ckIAAJg4KLhyQgAA1oEouHJCAAAUyyi4ckIAAFIUKbhyQgAAkF0puHJCAADOpim4ckIAAAzwKbhyQgAASjkquHJCAACIgiq4ckIAAMbLKrhyQgAABBUruHJCAABCXiu4ckIAAICnK7hyQgAAvvAruHJCAAD8OSy4ckIAADqDLLhyQgAAeMwsuHJCAAC2FS24ckIAAPReLbhyQgAAMqgtuHJCAABw8S24ckIAAK46LrhyQgAA7IMuuHJCAAAqzS64ckIAAGgWL7hyQgAApl8vuHJCAADkqC+4ckIAACLyL7hyQgAAYDswuHJCAACehDC4ckIAANzNMLhyQgAAGhcxuHJCAABYYDG4ckIAAJapMbhyQgAA1PIxuHJCAAASPDK4ckIAAFCFMrhyQgAAjs4yuHJCAADMFzO4ckIAAAphM7hyQgAASKozuHJCAACG8zO4ckIAAMQ8NLhyQgAAAoY0uHJCAABAzzS4ckIAAH4YNbhyQgAAvGE1uHJCAAD6qjW4ckIAADj0NbhyQgAAdj02uHJCAAC0hja4ckIAAPLPNrhyQgAAMBk3uHJCAABuYje4ckIAAKyrN7hyQgAA6vQ3uHJCAAAoPji4ckIAAGaHOLhyQgAApNA4uHJCAADiGTm4ckIAACBjObhyQgAAXqw5uHJCAACc9Tm4ckIAANo+OrhyQgAAGIg6uHJCAABW0Tq4ckIAAJQaO7hyQgAA0mM7uHJCAAAQrTu4ckIAAE72O7hyQgAAjD88uHJCAADKiDy4ckIAAAjSPLhyQgAARhs9uHJCAACEZD24ckIAAMKtPbhyQgAAAPc9uHJCAAA+QD64ckIAAHyJPrhyQgAAutI+uHJCAAD4Gz+4ckIAADZlP7hyQgAAdK4/uHJC","dtype":"float64","order":"little","shape":[288]},"y":[143,147,150,152,152,152,154,155,142,140,138,134,131,130,128,127,126,126,126,126,127,129,131,132,134,136,136,136,136,135,134,132,130,130,130,129,128,127,125,124,123,123,122,121,120,118,115,112,111,111,110,110,109,108,107,107,107,108,107,105,105,105,105,104,103,102,99,97,96,94,94,93,93,92,91,92,94,95,96,97,99,102,104,112,112,112,111,110,107,104,105,105,103,99,96,94,95,102,114,128,144,160,173,185,196,205,209,214,219,226,234,241,248,255,260,265,268,270,272,271,271,268,265,261,256,253,250,246,244,241,237,233,229,225,222,204,200,197,193,190,186,182,179,175,171,168,164,158,154,151,148,145,141,133,139,152,173,196,217,233,244,249,250,253,256,260,263,265,265,264,260,254,246,234,217,200,188,181,175,169,164,159,154,147,138,132,129,127,123,117,111,106,104,103,100,94,88,83,78,75,73,71,69,68,67,67,68,70,71,71,70,69,68,67,67,67,66,67,69,71,74,76,78,80,80,80,80,80,80,82,84,87,90,92,87,87,86,86,86,86,87,87,87,85,83,82,83,87,95,107,118,130,141,149,172,179,187,201,214,221,225,230,232,230,223,216,208,199,191,185,181,177,176,177,176,173,171,169,163,154,152,153,154,154,153,151,150,150]},"selected":{"id":"1414"},"selection_policy":{"id":"1413"}},"id":"1364","type":"ColumnDataSource"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1350","type":"BoxAnnotation"},{"attributes":{},"id":"1344","type":"PanTool"},{"attributes":{"days":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]},"id":"1419","type":"DaysTicker"},{"attributes":{},"id":"1348","type":"ResetTool"},{"attributes":{},"id":"1330","type":"DataRange1d"}],"root_ids":["1325"]},"title":"Bokeh Application","version":"2.4.3"}};
827
- const render_items = [{"docid":"8fe97e7e-0d37-43aa-b33f-ca34e8d58cbf","root_ids":["1325"],"roots":{"1325":"55d5b544-b88c-4857-9409-dfe7ff547125"}}];
828
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
829
- }
830
- if (root.Bokeh !== undefined) {
831
- embed_document(root);
832
- } else {
833
- let attempts = 0;
834
- const timer = setInterval(function(root) {
835
- if (root.Bokeh !== undefined) {
836
- clearInterval(timer);
837
- embed_document(root);
838
- } else {
839
- attempts++;
840
- if (attempts > 100) {
841
- clearInterval(timer);
842
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
843
- }
844
- }
845
- }, 10, root)
846
- }
847
- })(window);
848
- </script>
849
- </div>
850
-
851
- </div>
852
-
853
- </div>
854
- </div>
855
-
856
- </div>
857
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
858
- <div class="text_cell_render border-box-sizing rendered_html">
859
- <h3 id="Axes">Axes<a class="anchor-link" href="#Axes">&#182;</a></h3><p>Next we will take a look at <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#axes">stlying of Axes</a>.</p>
860
- <p>To style axes, you first must get ahold of <code>Axis</code> objects. The simplest way is to use some convenience methods on <code>Plot</code>: <code>axis</code>, <code>xaxis</code>, and <code>yaxis</code>. These methods return lists of axis objects:</p>
861
-
862
- <pre><code>&gt;&gt;&gt; p.xaxis
863
- [&lt;bokeh.models.axes.LinearAxis at 0x106fa2390&gt;]</code></pre>
864
- <p>However, you can set properties on all the elements of the list as if it was a single object:</p>
865
-
866
- <pre><code>p.xaxis.axis_label = "Temperature"
867
- p.axis.major_label_text_color = "orange"</code></pre>
868
- <p>These are referred to as "splattable" lists, and tab completion works on them as well.</p>
869
-
870
- </div>
871
- </div>
872
- </div>
873
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
874
- <div class="text_cell_render border-box-sizing rendered_html">
875
- <h4 id="Axis-properties">Axis properties<a class="anchor-link" href="#Axis-properties">&#182;</a></h4><p>Axes objects have many configurable properties that afford control over most visual aspects of an axis. These can be grouped by function according to prefix:</p>
876
- <ul>
877
- <li><p><strong>axis</strong> <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#line-properties">line properties</a> e.g <code>axis_line_width</code></p>
878
- </li>
879
- <li><p><strong>axis_label</strong> <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#text-properties">text properties</a> e.g. <code>axis_label_text_color</code>, as well as <code>axis_label_standoff</code></p>
880
- </li>
881
- <li><p><strong>major_label</strong> <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#text-properties">text properties</a> e.g. <code>major_label_text_font_size</code>, as well as <code>major_label_orientation</code></p>
882
- </li>
883
- <li><p><strong>major_tick</strong> <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#line-properties">line_properties</a> e.g. <code>major_tick_line_dash</code>, as well as <code>major_tick_in</code> and <code>major_tick_out</code></p>
884
- </li>
885
- <li><p><strong>minor_tick</strong> <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#line-properties">line properties</a> e.g. <code>minor_tick_line_width</code>, as well as <code>minor_tick_in</code> and <code>minor_tick_out</code></p>
886
- </li>
887
- </ul>
888
- <p>As a simple first case, let's change the orientation of the major tick labels on both axes of a plot:</p>
889
-
890
- </div>
891
- </div>
892
- </div>
893
-
894
-
895
-
896
- <div class="
897
- cell border-box-sizing code_cell rendered">
898
- <div class="input">
899
-
900
- <div class="inner_cell">
901
- <div class="input_area">
902
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">math</span> <span class="kn">import</span> <span class="n">pi</span>
903
-
904
- <span class="c1"># create a new plot using figure</span>
905
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
906
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
907
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
908
- <span class="p">)</span>
909
-
910
- <span class="n">p</span><span class="o">.</span><span class="n">x</span><span class="p">(</span>
911
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span>
912
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span>
913
- <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
914
- <span class="n">line_width</span><span class="o">=</span><span class="mi">2</span>
915
- <span class="p">)</span>
916
-
917
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">major_label_orientation</span> <span class="o">=</span> <span class="n">pi</span><span class="o">/</span><span class="mi">4</span>
918
- <span class="n">p</span><span class="o">.</span><span class="n">yaxis</span><span class="o">.</span><span class="n">major_label_orientation</span> <span class="o">=</span> <span class="s2">&quot;vertical&quot;</span>
919
-
920
- <span class="c1"># show the results</span>
921
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
922
- </pre></div>
923
-
924
- </div>
925
- </div>
926
- </div>
927
-
928
- <div class="output_wrapper">
929
- <div class="output">
930
-
931
-
932
- <div class="output_area">
933
-
934
-
935
-
936
-
937
- <div class="output_html rendered_html output_subarea ">
938
-
939
- <div class="bk-root" id="a54c6459-f2ba-4a38-8e8a-76183e56956b" data-root-id="1548"></div>
940
-
941
- </div>
942
-
943
- </div>
944
-
945
- <div class="output_area">
946
-
947
-
948
-
949
-
950
-
951
-
952
- <div id="7ba04dae-38a8-41cc-aae9-6614f412d98c"></div>
953
- <div class="output_subarea output_javascript ">
954
- <script type="text/javascript">
955
- var element = $('#7ba04dae-38a8-41cc-aae9-6614f412d98c');
956
- (function(root) {
957
- function embed_document(root) {
958
- const docs_json = {"6c29768b-f199-48be-a3a1-bdf467578c74":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1557"}],"center":[{"id":"1560"},{"id":"1564"}],"height":400,"left":[{"id":"1561"}],"renderers":[{"id":"1583"}],"title":{"id":"1640"},"toolbar":{"id":"1572"},"width":800,"x_range":{"id":"1549"},"x_scale":{"id":"1553"},"y_range":{"id":"1551"},"y_scale":{"id":"1555"}},"id":"1548","subtype":"Figure","type":"Plot"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"line_width":{"value":2},"marker":{"value":"x"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1581","type":"Scatter"},{"attributes":{"coordinates":null,"formatter":{"id":"1643"},"group":null,"major_label_orientation":"vertical","major_label_policy":{"id":"1644"},"ticker":{"id":"1562"}},"id":"1561","type":"LinearAxis"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"1649"},"selection_policy":{"id":"1648"}},"id":"1579","type":"ColumnDataSource"},{"attributes":{},"id":"1649","type":"Selection"},{"attributes":{"overlay":{"id":"1571"}},"id":"1567","type":"BoxZoomTool"},{"attributes":{},"id":"1555","type":"LinearScale"},{"attributes":{"coordinates":null,"group":null},"id":"1640","type":"Title"},{"attributes":{},"id":"1647","type":"AllLabels"},{"attributes":{"axis":{"id":"1557"},"coordinates":null,"group":null,"ticker":null},"id":"1560","type":"Grid"},{"attributes":{},"id":"1644","type":"AllLabels"},{"attributes":{},"id":"1643","type":"BasicTickFormatter"},{"attributes":{},"id":"1565","type":"PanTool"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"line_width":{"value":2},"marker":{"value":"x"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1582","type":"Scatter"},{"attributes":{},"id":"1568","type":"SaveTool"},{"attributes":{},"id":"1648","type":"UnionRenderers"},{"attributes":{},"id":"1558","type":"BasicTicker"},{"attributes":{},"id":"1646","type":"BasicTickFormatter"},{"attributes":{"axis":{"id":"1561"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1564","type":"Grid"},{"attributes":{},"id":"1553","type":"LinearScale"},{"attributes":{"coordinates":null,"data_source":{"id":"1579"},"glyph":{"id":"1580"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1582"},"nonselection_glyph":{"id":"1581"},"view":{"id":"1584"}},"id":"1583","type":"GlyphRenderer"},{"attributes":{"coordinates":null,"formatter":{"id":"1646"},"group":null,"major_label_orientation":0.7853981633974483,"major_label_policy":{"id":"1647"},"ticker":{"id":"1558"}},"id":"1557","type":"LinearAxis"},{"attributes":{},"id":"1551","type":"DataRange1d"},{"attributes":{},"id":"1562","type":"BasicTicker"},{"attributes":{},"id":"1570","type":"HelpTool"},{"attributes":{"tools":[{"id":"1565"},{"id":"1566"},{"id":"1567"},{"id":"1568"},{"id":"1569"},{"id":"1570"}]},"id":"1572","type":"Toolbar"},{"attributes":{},"id":"1566","type":"WheelZoomTool"},{"attributes":{},"id":"1549","type":"DataRange1d"},{"attributes":{"source":{"id":"1579"}},"id":"1584","type":"CDSView"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1571","type":"BoxAnnotation"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"line_width":{"value":2},"marker":{"value":"x"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1580","type":"Scatter"},{"attributes":{},"id":"1569","type":"ResetTool"}],"root_ids":["1548"]},"title":"Bokeh Application","version":"2.4.3"}};
959
- const render_items = [{"docid":"6c29768b-f199-48be-a3a1-bdf467578c74","root_ids":["1548"],"roots":{"1548":"a54c6459-f2ba-4a38-8e8a-76183e56956b"}}];
960
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
961
- }
962
- if (root.Bokeh !== undefined) {
963
- embed_document(root);
964
- } else {
965
- let attempts = 0;
966
- const timer = setInterval(function(root) {
967
- if (root.Bokeh !== undefined) {
968
- clearInterval(timer);
969
- embed_document(root);
970
- } else {
971
- attempts++;
972
- if (attempts > 100) {
973
- clearInterval(timer);
974
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
975
- }
976
- }
977
- }, 10, root)
978
- }
979
- })(window);
980
- </script>
981
- </div>
982
-
983
- </div>
984
-
985
- </div>
986
- </div>
987
-
988
- </div>
989
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
990
- <div class="text_cell_render border-box-sizing rendered_html">
991
- <p>The next example shows customizations on several of the different Axis properties at once:</p>
992
-
993
- </div>
994
- </div>
995
- </div>
996
-
997
-
998
-
999
- <div class="
1000
- cell border-box-sizing code_cell rendered">
1001
- <div class="input">
1002
-
1003
- <div class="inner_cell">
1004
- <div class="input_area">
1005
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
1006
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
1007
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
1008
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
1009
- <span class="p">)</span>
1010
-
1011
- <span class="n">p</span><span class="o">.</span><span class="n">asterisk</span><span class="p">(</span>
1012
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span>
1013
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span>
1014
- <span class="n">size</span><span class="o">=</span><span class="mi">12</span><span class="p">,</span>
1015
- <span class="n">color</span><span class="o">=</span><span class="s2">&quot;olive&quot;</span>
1016
- <span class="p">)</span>
1017
-
1018
- <span class="c1"># change just some things about the x-axes</span>
1019
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">axis_label</span> <span class="o">=</span> <span class="s2">&quot;Temp&quot;</span>
1020
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">axis_line_width</span> <span class="o">=</span> <span class="mi">3</span>
1021
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">axis_line_color</span> <span class="o">=</span> <span class="s2">&quot;red&quot;</span>
1022
-
1023
- <span class="c1"># change just some things about the y-axes</span>
1024
- <span class="n">p</span><span class="o">.</span><span class="n">yaxis</span><span class="o">.</span><span class="n">axis_label</span> <span class="o">=</span> <span class="s2">&quot;Pressure&quot;</span>
1025
- <span class="n">p</span><span class="o">.</span><span class="n">yaxis</span><span class="o">.</span><span class="n">major_label_text_color</span> <span class="o">=</span> <span class="s2">&quot;orange&quot;</span>
1026
- <span class="n">p</span><span class="o">.</span><span class="n">yaxis</span><span class="o">.</span><span class="n">major_label_orientation</span> <span class="o">=</span> <span class="s2">&quot;vertical&quot;</span>
1027
-
1028
- <span class="c1"># change things on all axes</span>
1029
- <span class="n">p</span><span class="o">.</span><span class="n">axis</span><span class="o">.</span><span class="n">minor_tick_in</span> <span class="o">=</span> <span class="o">-</span><span class="mi">3</span>
1030
- <span class="n">p</span><span class="o">.</span><span class="n">axis</span><span class="o">.</span><span class="n">minor_tick_out</span> <span class="o">=</span> <span class="mi">6</span>
1031
-
1032
- <span class="c1"># show the results</span>
1033
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
1034
- </pre></div>
1035
-
1036
- </div>
1037
- </div>
1038
- </div>
1039
-
1040
- <div class="output_wrapper">
1041
- <div class="output">
1042
-
1043
-
1044
- <div class="output_area">
1045
-
1046
-
1047
-
1048
-
1049
- <div class="output_html rendered_html output_subarea ">
1050
-
1051
- <div class="bk-root" id="d4980f46-66ae-4d72-9d25-4ae4a8411b24" data-root-id="1706"></div>
1052
-
1053
- </div>
1054
-
1055
- </div>
1056
-
1057
- <div class="output_area">
1058
-
1059
-
1060
-
1061
-
1062
-
1063
-
1064
- <div id="130d100f-5092-4128-8432-f8dbec256463"></div>
1065
- <div class="output_subarea output_javascript ">
1066
- <script type="text/javascript">
1067
- var element = $('#130d100f-5092-4128-8432-f8dbec256463');
1068
- (function(root) {
1069
- function embed_document(root) {
1070
- const docs_json = {"7fddf087-dc06-4862-8ec4-41f469c31a55":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1715"}],"center":[{"id":"1718"},{"id":"1722"}],"height":400,"left":[{"id":"1719"}],"renderers":[{"id":"1741"}],"title":{"id":"1809"},"toolbar":{"id":"1730"},"width":800,"x_range":{"id":"1707"},"x_scale":{"id":"1711"},"y_range":{"id":"1709"},"y_scale":{"id":"1713"}},"id":"1706","subtype":"Figure","type":"Plot"},{"attributes":{"axis_label":"Temp","axis_line_color":"red","axis_line_width":3,"coordinates":null,"formatter":{"id":"1815"},"group":null,"major_label_policy":{"id":"1816"},"minor_tick_in":-3,"minor_tick_out":6,"ticker":{"id":"1716"}},"id":"1715","type":"LinearAxis"},{"attributes":{"axis":{"id":"1715"},"coordinates":null,"group":null,"ticker":null},"id":"1718","type":"Grid"},{"attributes":{"tools":[{"id":"1723"},{"id":"1724"},{"id":"1725"},{"id":"1726"},{"id":"1727"},{"id":"1728"}]},"id":"1730","type":"Toolbar"},{"attributes":{},"id":"1720","type":"BasicTicker"},{"attributes":{"axis_label":"Pressure","coordinates":null,"formatter":{"id":"1812"},"group":null,"major_label_orientation":"vertical","major_label_policy":{"id":"1813"},"major_label_text_color":"orange","minor_tick_in":-3,"minor_tick_out":6,"ticker":{"id":"1720"}},"id":"1719","type":"LinearAxis"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1729","type":"BoxAnnotation"},{"attributes":{"axis":{"id":"1719"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1722","type":"Grid"},{"attributes":{"source":{"id":"1737"}},"id":"1742","type":"CDSView"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"olive"},"hatch_alpha":{"value":0.2},"hatch_color":{"value":"olive"},"line_alpha":{"value":0.2},"line_color":{"value":"olive"},"marker":{"value":"asterisk"},"size":{"value":12},"x":{"field":"x"},"y":{"field":"y"}},"id":"1740","type":"Scatter"},{"attributes":{"fill_color":{"value":"olive"},"hatch_color":{"value":"olive"},"line_color":{"value":"olive"},"marker":{"value":"asterisk"},"size":{"value":12},"x":{"field":"x"},"y":{"field":"y"}},"id":"1738","type":"Scatter"},{"attributes":{},"id":"1707","type":"DataRange1d"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"olive"},"hatch_alpha":{"value":0.1},"hatch_color":{"value":"olive"},"line_alpha":{"value":0.1},"line_color":{"value":"olive"},"marker":{"value":"asterisk"},"size":{"value":12},"x":{"field":"x"},"y":{"field":"y"}},"id":"1739","type":"Scatter"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"1818"},"selection_policy":{"id":"1817"}},"id":"1737","type":"ColumnDataSource"},{"attributes":{},"id":"1709","type":"DataRange1d"},{"attributes":{},"id":"1723","type":"PanTool"},{"attributes":{"coordinates":null,"data_source":{"id":"1737"},"glyph":{"id":"1738"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1740"},"nonselection_glyph":{"id":"1739"},"view":{"id":"1742"}},"id":"1741","type":"GlyphRenderer"},{"attributes":{},"id":"1727","type":"ResetTool"},{"attributes":{},"id":"1812","type":"BasicTickFormatter"},{"attributes":{},"id":"1818","type":"Selection"},{"attributes":{},"id":"1724","type":"WheelZoomTool"},{"attributes":{},"id":"1817","type":"UnionRenderers"},{"attributes":{"overlay":{"id":"1729"}},"id":"1725","type":"BoxZoomTool"},{"attributes":{"coordinates":null,"group":null},"id":"1809","type":"Title"},{"attributes":{},"id":"1726","type":"SaveTool"},{"attributes":{},"id":"1728","type":"HelpTool"},{"attributes":{},"id":"1815","type":"BasicTickFormatter"},{"attributes":{},"id":"1813","type":"AllLabels"},{"attributes":{},"id":"1716","type":"BasicTicker"},{"attributes":{},"id":"1816","type":"AllLabels"},{"attributes":{},"id":"1711","type":"LinearScale"},{"attributes":{},"id":"1713","type":"LinearScale"}],"root_ids":["1706"]},"title":"Bokeh Application","version":"2.4.3"}};
1071
- const render_items = [{"docid":"7fddf087-dc06-4862-8ec4-41f469c31a55","root_ids":["1706"],"roots":{"1706":"d4980f46-66ae-4d72-9d25-4ae4a8411b24"}}];
1072
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
1073
- }
1074
- if (root.Bokeh !== undefined) {
1075
- embed_document(root);
1076
- } else {
1077
- let attempts = 0;
1078
- const timer = setInterval(function(root) {
1079
- if (root.Bokeh !== undefined) {
1080
- clearInterval(timer);
1081
- embed_document(root);
1082
- } else {
1083
- attempts++;
1084
- if (attempts > 100) {
1085
- clearInterval(timer);
1086
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
1087
- }
1088
- }
1089
- }, 10, root)
1090
- }
1091
- })(window);
1092
- </script>
1093
- </div>
1094
-
1095
- </div>
1096
-
1097
- </div>
1098
- </div>
1099
-
1100
- </div>
1101
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1102
- <div class="text_cell_render border-box-sizing rendered_html">
1103
- <h3 id="Configuring-tick-labels">Configuring tick labels<a class="anchor-link" href="#Configuring-tick-labels">&#182;</a></h3><p>All Bokeh axes have a <code>formatter</code> property, whose value is a <code>TickFormatter</code> object that Bokeh uses to format the ticks displayed by that axis. Bokeh will configure default tick formatters for numeric, datetime, or categotical axes. But often we would like to customize the appearance of tick labels. This can be accomplished by changing properties on the default formatter that Bokeh chooses, or by replacing the formatter with a new type entirely.</p>
1104
- <p>Let's first look at changing the properties of a default formatter. The default datetime formatter is configured to show <em>month/day</em> when the axis is on the scale of days. If would like the also always show the year, we can change the <code>days</code> property to a format that includes the year, as done below.</p>
1105
-
1106
- </div>
1107
- </div>
1108
- </div>
1109
-
1110
-
1111
-
1112
- <div class="
1113
- cell border-box-sizing code_cell rendered">
1114
- <div class="input">
1115
-
1116
- <div class="inner_cell">
1117
- <div class="input_area">
1118
- <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">math</span> <span class="kn">import</span> <span class="n">pi</span>
1119
- <span class="kn">from</span> <span class="nn">bokeh.sampledata.glucose</span> <span class="kn">import</span> <span class="n">data</span>
1120
-
1121
- <span class="n">week</span> <span class="o">=</span> <span class="n">data</span><span class="o">.</span><span class="n">loc</span><span class="p">[</span><span class="s1">&#39;2010-10-01&#39;</span><span class="p">:</span><span class="s1">&#39;2010-10-08&#39;</span><span class="p">]</span>
1122
-
1123
- <span class="c1"># create a new plot using figure</span>
1124
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
1125
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
1126
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
1127
- <span class="n">x_axis_type</span><span class="o">=</span><span class="s2">&quot;datetime&quot;</span><span class="p">,</span>
1128
- <span class="n">title</span><span class="o">=</span><span class="s2">&quot;Glocose Range&quot;</span>
1129
- <span class="p">)</span>
1130
-
1131
-
1132
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">formatter</span><span class="o">.</span><span class="n">days</span> <span class="o">=</span> <span class="s1">&#39;%m/</span><span class="si">%d</span><span class="s1">/%Y&#39;</span>
1133
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">major_label_orientation</span> <span class="o">=</span> <span class="n">pi</span><span class="o">/</span><span class="mi">3</span>
1134
-
1135
- <span class="n">p</span><span class="o">.</span><span class="n">line</span><span class="p">(</span><span class="n">week</span><span class="o">.</span><span class="n">index</span><span class="p">,</span> <span class="n">week</span><span class="o">.</span><span class="n">glucose</span><span class="p">)</span>
1136
-
1137
- <span class="c1"># show the results</span>
1138
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
1139
- </pre></div>
1140
-
1141
- </div>
1142
- </div>
1143
- </div>
1144
-
1145
- <div class="output_wrapper">
1146
- <div class="output">
1147
-
1148
-
1149
- <div class="output_area">
1150
-
1151
-
1152
-
1153
-
1154
- <div class="output_html rendered_html output_subarea ">
1155
-
1156
- <div class="bk-root" id="fa75122f-68d4-4721-8440-be13852d8706" data-root-id="1875"></div>
1157
-
1158
- </div>
1159
-
1160
- </div>
1161
-
1162
- <div class="output_area">
1163
-
1164
-
1165
-
1166
-
1167
-
1168
-
1169
- <div id="e98ada7e-2e07-4009-b139-32817832b8aa"></div>
1170
- <div class="output_subarea output_javascript ">
1171
- <script type="text/javascript">
1172
- var element = $('#e98ada7e-2e07-4009-b139-32817832b8aa');
1173
- (function(root) {
1174
- function embed_document(root) {
1175
- const docs_json = {"11a0aa5c-13e1-4f85-b0ed-55b578a3c0f4":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"1886"}],"center":[{"id":"1889"},{"id":"1893"}],"height":400,"left":[{"id":"1890"}],"renderers":[{"id":"1913"}],"title":{"id":"1876"},"toolbar":{"id":"1901"},"width":800,"x_range":{"id":"1878"},"x_scale":{"id":"1882"},"y_range":{"id":"1880"},"y_scale":{"id":"1884"}},"id":"1875","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1891","type":"BasicTicker"},{"attributes":{"line_alpha":0.2,"line_color":"#1f77b4","x":{"field":"x"},"y":{"field":"y"}},"id":"1912","type":"Line"},{"attributes":{"months":[0,4,8]},"id":"2011","type":"MonthsTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1994"},"group":null,"major_label_policy":{"id":"1995"},"ticker":{"id":"1891"}},"id":"1890","type":"LinearAxis"},{"attributes":{"days":[1,15]},"id":"2008","type":"DaysTicker"},{"attributes":{"months":[0,1,2,3,4,5,6,7,8,9,10,11]},"id":"2009","type":"MonthsTicker"},{"attributes":{"months":[0,2,4,6,8,10]},"id":"2010","type":"MonthsTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1908"},"group":null,"major_label_orientation":1.0471975511965976,"major_label_policy":{"id":"1998"},"ticker":{"id":"1887"}},"id":"1886","type":"DatetimeAxis"},{"attributes":{"mantissas":[1,2,5],"max_interval":500.0,"num_minor_ticks":0},"id":"2002","type":"AdaptiveTicker"},{"attributes":{"axis":{"id":"1886"},"coordinates":null,"group":null,"ticker":null},"id":"1889","type":"Grid"},{"attributes":{"data":{"x":{"__ndarray__":"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AABK++C3ckIAAIhE4bdyQgAAxo3ht3JCAAAE1+G3ckIAAEIg4rdyQgAAgGnit3JCAAC+suK3ckIAAPz74rdyQgAAOkXjt3JCAAB4juO3ckIAALbX47dyQgAArvzkt3JCAADsReW3ckIAACqP5bdyQgAAaNjlt3JCAACmIea3ckIAAORq5rdyQgAAIrTmt3JCAABg/ea3ckIAAJ5G57dyQgAA3I/nt3JCAAAa2ee3ckIAAFgi6LdyQgAAlmvot3JCAADUtOi3ckIAABL+6LdyQgAAUEfpt3JCAACOkOm3ckIAAMzZ6bdyQgAACiPqt3JCAABIbOq3ckIAAIa16rdyQgAAxP7qt3JCAAACSOu3ckIAAECR67dyQgAAftrrt3JCAAC8I+y3ckIAAPps7LdyQgAAOLbst3JCAAB2/+y3ckIAALRI7bdyQgAA8pHtt3JCAAAw2+23ckIAAG4k7rdyQgAArG3ut3JCAADqtu63ckIAACgA77dyQgAAZknvt3JCAACkku+3ckIAAOLb77dyQgAAICXwt3JCAABebvC3ckIAAJy38LdyQgAA2gDxt3JCAAAYSvG3ckIAAFaT8bdyQgAAlNzxt3JCAADSJfK3ckIAABBv8rdyQgAATrjyt3JCAACMAfO3ckIAAMpK87dyQgAACJTzt3JCAABG3fO3ckIAAIQm9LdyQgAAwm/0t3JCAAAAufS3ckIAAD4C9bdyQgAAfEv1t3JCAAC6lPW3ckIAAPjd9bdyQgAANif2t3JCAAB0cPa3ckIAALK59rdyQgAA8AL3t3JCAAAuTPe3ckIAAGyV97dyQgAAqt73t3JCAADoJ/i3ckIAACZx+LdyQgAAZLr4t3JCAACiA/m3ckIAAOBM+bdyQgAAHpb5t3JCAABc3/m3ckIAAJoo+rdyQgAA2HH6t3JCAAAWu/q3ckIAAFQE+7dyQgAAkk37t3JCAADQlvu3ckIAAA7g+7dyQgAATCn8t3JCAACKcvy3ckIAAMi7/LdyQgAABgX9t3JCAABETv23ckIAAIKX/bdyQgAAwOD9t3JCAAD+Kf63ckIAADxz/rdyQgAAerz+t3JCAAC4Bf+3ckIAAPZO/7dyQgAANJj/t3JCAABy4f+3ckIAALAqALhyQgAA7nMAuHJCAAAsvQC4ckIAAGoGAbhyQgAAqE8BuHJCAADmmAG4ckIAACTi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","dtype":"float64","order":"little","shape":[2217]},"y":[92,100,108,115,120,124,128,133,137,142,147,152,157,162,167,171,175,179,185,192,200,207,212,215,217,219,218,219,217,216,216,216,215,214,212,211,209,207,204,203,203,203,203,204,203,202,201,200,199,199,197,193,189,185,182,182,183,184,184,182,177,174,172,170,168,167,166,164,162,160,158,155,152,150,147,140,131,124,120,116,114,114,116,118,119,120,120,120,119,117,114,112,112,111,111,112,111,111,110,108,106,106,106,106,104,101,101,103,102,100,99,100,100,99,99,99,100,99,98,97,97,96,92,90,89,86,85,85,84,84,81,80,81,86,99,115,125,130,129,128,123,118,113,111,112,111,109,108,105,101,100,102,107,113,119,125,129,131,129,128,127,127,127,125,122,117,113,108,103,98,93,89,86,85,83,82,81,82,84,87,92,99,107,121,133,142,146,149,150,151,151,152,152,150,148,161,160,158,157,157,157,156,153,149,147,145,144,145,149,154,159,163,164,164,164,163,162,158,154,153,154,155,157,159,158,156,152,148,144,139,134,128,123,121,119,117,115,115,112,109,106,105,103,101,97,93,89,86,85,88,93,100,106,113,119,125,131,137,142,149,159,172,186,197,204,207,208,207,205,202,199,197,193,185,176,178,177,177,176,173,171,170,169,167,166,165,163,163,162,160,156,150,150,150,151,150,150,150,149,149,148,149,147,145,143,139,141,145,147,147,146,145,141,138,136,135,134,133,132,129,124,120,118,112,114,119,123,125,126,127,128,135,143,148,151,153,154,155,156,156,157,157,156,155,154,147,137,131,128,129,131,132,133,135,135,133,131,132,135,138,139,138,136,132,128,126,125,120,113,108,106,105,108,111,113,116,120,120,120,119,118,118,118,118,117,116,113,106,98,93,97,107,115,122,120,113,102,94,95,96,90,88,83,83,85,90,97,98,99,94,89,95,105,111,113,106,95,90,91,96,101,104,109,112,120,123,118,115,123,130,128,130,136,131,121,113,110,108,109,111,115,120,115,108,105,105,104,106,110,111,115,115,117,114,111,107,105,109,111,110,111,115,121,126,135,142,145,147,150,153,156,160,162,161,160,160,159,157,154,152,152,150,143,138,132,128,124,119,112,105,98,92,94,98,106,118,126,128,127,123,123,121,118,115,112,112,114,113,105,78,209,204,214,252,282,290,295,292,284,268,263,262,263,263,262,258,249,236,179,165,157,152,150,149,150,154,158,163,166,166,163,159,158,161,170,176,178,174,170,166,160,156,151,148,147,145,142,141,145,144,144,153,155,152,147,143,145,152,156,157,156,155,155,156,158,158,158,156,152,146,139,139,141,143,145,147,148,149,149,149,148,147,144,140,139,139,138,137,136,135,134,133,134,136,137,136,134,135,139,142,143,141,138,141,145,148,151,152,154,156,155,155,159,163,166,166,166,164,162,160,158,157,155,153,150,150,149,149,149,149,150,152,154,155,155,156,156,157,160,163,165,165,164,163,121,119,117,114,113,112,113,113,113,113,112,113,113,113,114,112,110,109,109,109,108,108,90,90,94,99,107,116,125,130,132,130,124,117,110,103,95,88,81,77,75,63,65,70,73,78,80,80,79,80,83,86,89,94,96,98,104,105,106,106,107,107,109,114,118,121,123,124,123,122,122,123,123,123,124,123,123,124,127,132,137,139,140,140,142,147,152,156,160,165,168,169,169,165,162,160,158,156,154,150,146,144,141,138,136,133,129,124,118,112,107,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,122,125,128,130,130,131,130,128,126,123,120,116,93,89,86,84,82,79,76,74,72,71,69,70,68,67,66,67,68,69,69,69,68,68,67,66,65,64,63,61,61,60,60,61,63,64,64,64,63,64,65,66,67,67,66,66,67,68,69,71,73,72,71,70,71,72,74,75,76,78,79,80,81,82,84,86,88,88,87,86,85,86,86,86,86,87,87,88,88,88,89,87,83,79,78,82,85,87,88,89,89,89,87,86,88,89,90,89,90,92,91,90,89,88,87,87,89,90,91,92,94,108,110,110,111,111,111,112,113,114,116,116,116,117,119,121,124,127,131,138,145,150,155,161,165,169,173,177,182,185,185,184,189,193,195,198,198,197,196,196,199,202,202,201,202,204,205,205,203,202,201,197,197,198,199,200,199,195,190,184,180,178,179,180,179,176,175,174,172,169,168,167,170,180,191,203,214,219,219,222,227,228,226,223,221,219,219,218,218,219,218,216,214,214,211,208,207,206,206,205,202,199,193,190,187,182,179,176,173,170,167,163,158,152,146,141,135,129,122,114,108,102,97,90,85,81,77,73,68,65,62,61,61,61,61,61,60,59,59,60,61,64,69,75,82,92,104,117,128,137,144,149,153,156,160,164,169,175,180,184,188,191,193,195,196,200,203,207,212,218,223,228,231,234,235,236,327,327,330,333,328,321,316,308,298,287,274,263,255,249,243,239,234,230,225,220,215,210,206,204,204,199,195,190,185,181,177,175,173,171,170,169,169,168,167,166,166,166,163,161,159,158,157,156,154,152,150,149,149,150,150,151,151,152,153,153,153,154,154,154,154,153,152,152,150,149,148,146,145,144,144,143,142,142,141,140,139,137,137,138,136,137,137,136,137,136,134,133,132,132,132,132,132,134,136,138,141,142,142,143,145,150,154,156,158,160,162,164,167,169,172,175,176,175,174,172,170,171,173,178,185,191,198,210,223,235,244,254,265,273,283,290,296,302,307,309,313,316,318,320,322,320,319,317,313,311,306,300,297,294,293,290,287,286,285,282,279,274,271,270,270,269,274,271,267,264,262,259,255,250,244,237,232,227,223,220,215,210,205,199,195,193,197,206,221,239,258,276,291,302,311,318,323,324,322,320,319,320,319,317,314,311,307,302,294,286,280,276,272,267,259,251,245,241,241,241,242,244,245,245,242,237,232,228,225,216,215,216,217,217,215,211,206,202,200,201,203,201,196,188,176,163,149,138,129,119,108,98,89,79,71,66,66,67,67,68,69,71,74,77,79,81,85,91,99,109,119,132,145,157,168,175,179,183,185,188,188,187,184,179,172,163,159,157,155,153,151,149,148,148,148,147,146,145,145,144,143,143,143,144,145,146,145,144,143,142,140,140,140,140,140,143,147,150,152,152,152,154,155,142,140,138,134,131,130,128,127,126,126,126,126,127,129,131,132,134,136,136,136,136,135,134,132,130,130,130,129,128,127,125,124,123,123,122,121,120,118,115,112,111,111,110,110,109,108,107,107,107,108,107,105,105,105,105,104,103,102,99,97,96,94,94,93,93,92,91,92,94,95,96,97,99,102,104,112,112,112,111,110,107,104,105,105,103,99,96,94,95,102,114,128,144,160,173,185,196,205,209,214,219,226,234,241,248,255,260,265,268,270,272,271,271,268,265,261,256,253,250,246,244,241,237,233,229,225,222,204,200,197,193,190,186,182,179,175,171,168,164,158,154,151,148,145,141,133,139,152,173,196,217,233,244,249,250,253,256,260,263,265,265,264,260,254,246,234,217,200,188,181,175,169,164,159,154,147,138,132,129,127,123,117,111,106,104,103,100,94,88,83,78,75,73,71,69,68,67,67,68,70,71,71,70,69,68,67,67,67,66,67,69,71,74,76,78,80,80,80,80,80,80,82,84,87,90,92,87,87,86,86,86,86,87,87,87,85,83,82,83,87,95,107,118,130,141,149,172,179,187,201,214,221,225,230,232,230,223,216,208,199,191,185,181,177,176,177,176,173,171,169,163,154,152,153,154,154,153,151,150,150,150,152,149,147,148,150,152,152,152,151,151,150,149,147,146,143,140,138,136,137,138,140,138,135,132,130,129,129,129,130,130,129,128,128,128,129,129,128,127,126,125,125,125,125,124,124,121,120,120,123,124,123,122,120,115,113,114,114,115,116,115,112,111,111,109,108,107,107,110,113,114,115,115,115,114,113,113,116,119,120,121,121,122,123,124,125,126,126,126,126,126,127,127,125,122,118,115,111,112,115,117,120,124,127,131,137,143,148,153,159,166,172,178,184,191,199,206,212,217,223,229,232,233,235,237,240,241,243,246,247,246,243,240,234,229,225,221,217,216,215,215,215,212,208,203,199,196,194,190,185,180,177,163,158,152,149,153,163,174,182,188,192,195,197,201,204,205,203,199,195,189,184,176,169,162,150,138,128,119,110,100,90,80,73,68,64,63,63,66,68,70,71,72,74,80,94,116,141,164,183,198,210,220,228,233,237,241,247,252,256,260,259,258,256,251,245,238,234,227,221,215,208,207,207,203,201,201,199,179,176,171,163,152,137,119,98,77,61,50,45,47,59,71,86,99,109,116,117,115,111,107,102,96,91,90,94,97,97,95,92,87,84,84,83,84,86,86,86,84,82,82,81,81,82,84,87,89,91,92,94,93,93,94,96,100,101,99,97,96,96,97,97,98,99,101,102,106,114,121,127,130,124,105,109,119,127,129,132,129,126,126,126,126,126,125,124,125,130,130,128,126,126,126,126,126,126,126,127,128,129,129,127,128,136,141,143,141,138,131,129,133,134,130,129,134,137,139,138,130,122,118,115,114,113,113,112,112,117,118,117,118,118,117,117,114,112,115,118,124,126,119,121,122,274,285,293,297,298,298,296,293,289,282,275,267,256,249,242,233,225,217,217,215,203,190,185,193,202,202,194,182,170,143,130,120,110,102,93,80,67,57,52,50,49,49,54,72,93,104,114,125,134,140,145,145,141,136,130,124,118,116,114,112,108,105,102,99,95,91,88,85,83,82,80,79,79,83,86,87,88,89,89,88,88,90,92,88,86,86,86,84,82,84,88,90,94,99,104,107,107,105,104,103,95,94,93,93,93,93,93,94,99,109,122,172,169,164,156,147,137,126,115,104,99,99,103,106,111,115,117,118,120,120,120,120,119,119,118,118,117,116,115,115,116,116,115,115,114,112,109,110,111,111,110,109,109,109,108,107,106,105,101,100,99,99,98,97,97]},"selected":{"id":"2000"},"selection_policy":{"id":"1999"}},"id":"1909","type":"ColumnDataSource"},{"attributes":{},"id":"1995","type":"AllLabels"},{"attributes":{"months":[0,6]},"id":"2012","type":"MonthsTicker"},{"attributes":{"coordinates":null,"data_source":{"id":"1909"},"glyph":{"id":"1910"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1912"},"nonselection_glyph":{"id":"1911"},"view":{"id":"1914"}},"id":"1913","type":"GlyphRenderer"},{"attributes":{},"id":"1882","type":"LinearScale"},{"attributes":{"axis":{"id":"1890"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1893","type":"Grid"},{"attributes":{},"id":"1994","type":"BasicTickFormatter"},{"attributes":{"tools":[{"id":"1894"},{"id":"1895"},{"id":"1896"},{"id":"1897"},{"id":"1898"},{"id":"1899"}]},"id":"1901","type":"Toolbar"},{"attributes":{"source":{"id":"1909"}},"id":"1914","type":"CDSView"},{"attributes":{},"id":"1898","type":"ResetTool"},{"attributes":{},"id":"2013","type":"YearsTicker"},{"attributes":{"line_color":"#1f77b4","x":{"field":"x"},"y":{"field":"y"}},"id":"1910","type":"Line"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"1900","type":"BoxAnnotation"},{"attributes":{"line_alpha":0.1,"line_color":"#1f77b4","x":{"field":"x"},"y":{"field":"y"}},"id":"1911","type":"Line"},{"attributes":{},"id":"1894","type":"PanTool"},{"attributes":{},"id":"1880","type":"DataRange1d"},{"attributes":{},"id":"1895","type":"WheelZoomTool"},{"attributes":{},"id":"1878","type":"DataRange1d"},{"attributes":{},"id":"1897","type":"SaveTool"},{"attributes":{},"id":"1884","type":"LinearScale"},{"attributes":{"overlay":{"id":"1900"}},"id":"1896","type":"BoxZoomTool"},{"attributes":{"days":["%m/%d/%Y"]},"id":"1908","type":"DatetimeTickFormatter"},{"attributes":{},"id":"1999","type":"UnionRenderers"},{"attributes":{},"id":"2000","type":"Selection"},{"attributes":{"base":60,"mantissas":[1,2,5,10,15,20,30],"max_interval":1800000.0,"min_interval":1000.0,"num_minor_ticks":0},"id":"2003","type":"AdaptiveTicker"},{"attributes":{"num_minor_ticks":5,"tickers":[{"id":"2002"},{"id":"2003"},{"id":"2004"},{"id":"2005"},{"id":"2006"},{"id":"2007"},{"id":"2008"},{"id":"2009"},{"id":"2010"},{"id":"2011"},{"id":"2012"},{"id":"2013"}]},"id":"1887","type":"DatetimeTicker"},{"attributes":{"days":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]},"id":"2005","type":"DaysTicker"},{"attributes":{},"id":"1998","type":"AllLabels"},{"attributes":{},"id":"1899","type":"HelpTool"},{"attributes":{"days":[1,8,15,22]},"id":"2007","type":"DaysTicker"},{"attributes":{"days":[1,4,7,10,13,16,19,22,25,28]},"id":"2006","type":"DaysTicker"},{"attributes":{"base":24,"mantissas":[1,2,4,6,8,12],"max_interval":43200000.0,"min_interval":3600000.0,"num_minor_ticks":0},"id":"2004","type":"AdaptiveTicker"},{"attributes":{"coordinates":null,"group":null,"text":"Glocose Range"},"id":"1876","type":"Title"}],"root_ids":["1875"]},"title":"Bokeh Application","version":"2.4.3"}};
1176
- const render_items = [{"docid":"11a0aa5c-13e1-4f85-b0ed-55b578a3c0f4","root_ids":["1875"],"roots":{"1875":"fa75122f-68d4-4721-8440-be13852d8706"}}];
1177
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
1178
- }
1179
- if (root.Bokeh !== undefined) {
1180
- embed_document(root);
1181
- } else {
1182
- let attempts = 0;
1183
- const timer = setInterval(function(root) {
1184
- if (root.Bokeh !== undefined) {
1185
- clearInterval(timer);
1186
- embed_document(root);
1187
- } else {
1188
- attempts++;
1189
- if (attempts > 100) {
1190
- clearInterval(timer);
1191
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
1192
- }
1193
- }
1194
- }, 10, root)
1195
- }
1196
- })(window);
1197
- </script>
1198
- </div>
1199
-
1200
- </div>
1201
-
1202
- </div>
1203
- </div>
1204
-
1205
- </div>
1206
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1207
- <div class="text_cell_render border-box-sizing rendered_html">
1208
- <p>See the reference guide entry for <a href="https://bokeh.pydata.org/en/latest/docs/reference/models/formatters.html#bokeh.models.formatters.DatetimeTickFormatter">DatetimeTickFormatter</a> to see other properties that can be updated.</p>
1209
- <p>In addition to the tick formatters that Bokeh will use by default, there are others such as the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#numeraltickformatter"><code>NumeralTickFormatter</code></a> that we can configure explicitly. The example below shows how to set a formatter on each axis.</p>
1210
-
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="kn">from</span> <span class="nn">bokeh.models</span> <span class="kn">import</span> <span class="n">NumeralTickFormatter</span>
1224
-
1225
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span><span class="n">plot_height</span><span class="o">=</span><span class="mi">300</span><span class="p">,</span> <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">)</span>
1226
- <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">([</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span> <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span> <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">)</span>
1227
-
1228
- <span class="n">p</span><span class="o">.</span><span class="n">xaxis</span><span class="o">.</span><span class="n">formatter</span> <span class="o">=</span> <span class="n">NumeralTickFormatter</span><span class="p">(</span><span class="nb">format</span><span class="o">=</span><span class="s2">&quot;0.0%&quot;</span><span class="p">)</span>
1229
- <span class="n">p</span><span class="o">.</span><span class="n">yaxis</span><span class="o">.</span><span class="n">formatter</span> <span class="o">=</span> <span class="n">NumeralTickFormatter</span><span class="p">(</span><span class="nb">format</span><span class="o">=</span><span class="s2">&quot;$0.00&quot;</span><span class="p">)</span>
1230
-
1231
- <span class="c1"># show the results</span>
1232
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
1233
- </pre></div>
1234
-
1235
- </div>
1236
- </div>
1237
- </div>
1238
-
1239
- <div class="output_wrapper">
1240
- <div class="output">
1241
-
1242
-
1243
- <div class="output_area">
1244
-
1245
-
1246
-
1247
-
1248
- <div class="output_html rendered_html output_subarea ">
1249
-
1250
- <div class="bk-root" id="4088ee5f-9b79-4539-9bfe-8e8b62f5402a" data-root-id="2124"></div>
1251
-
1252
- </div>
1253
-
1254
- </div>
1255
-
1256
- <div class="output_area">
1257
-
1258
-
1259
-
1260
-
1261
-
1262
-
1263
- <div id="d756bbed-85ea-4d7f-8515-2ac94bc7e11c"></div>
1264
- <div class="output_subarea output_javascript ">
1265
- <script type="text/javascript">
1266
- var element = $('#d756bbed-85ea-4d7f-8515-2ac94bc7e11c');
1267
- (function(root) {
1268
- function embed_document(root) {
1269
- const docs_json = {"613d7a77-2646-44bc-919b-9e517f0c7072":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"2133"}],"center":[{"id":"2136"},{"id":"2140"}],"height":300,"left":[{"id":"2137"}],"renderers":[{"id":"2159"}],"title":{"id":"2264"},"toolbar":{"id":"2148"},"width":800,"x_range":{"id":"2125"},"x_scale":{"id":"2129"},"y_range":{"id":"2127"},"y_scale":{"id":"2131"}},"id":"2124","subtype":"Figure","type":"Plot"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2158","type":"Circle"},{"attributes":{"format":"$0.00"},"id":"2163","type":"NumeralTickFormatter"},{"attributes":{},"id":"2141","type":"PanTool"},{"attributes":{},"id":"2145","type":"ResetTool"},{"attributes":{},"id":"2142","type":"WheelZoomTool"},{"attributes":{},"id":"2134","type":"BasicTicker"},{"attributes":{"overlay":{"id":"2147"}},"id":"2143","type":"BoxZoomTool"},{"attributes":{},"id":"2129","type":"LinearScale"},{"attributes":{},"id":"2131","type":"LinearScale"},{"attributes":{},"id":"2144","type":"SaveTool"},{"attributes":{"coordinates":null,"formatter":{"id":"2161"},"group":null,"major_label_policy":{"id":"2269"},"ticker":{"id":"2134"}},"id":"2133","type":"LinearAxis"},{"attributes":{},"id":"2267","type":"AllLabels"},{"attributes":{"axis":{"id":"2133"},"coordinates":null,"group":null,"ticker":null},"id":"2136","type":"Grid"},{"attributes":{},"id":"2146","type":"HelpTool"},{"attributes":{},"id":"2271","type":"Selection"},{"attributes":{},"id":"2127","type":"DataRange1d"},{"attributes":{"coordinates":null,"data_source":{"id":"2155"},"glyph":{"id":"2156"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"2158"},"nonselection_glyph":{"id":"2157"},"view":{"id":"2160"}},"id":"2159","type":"GlyphRenderer"},{"attributes":{"coordinates":null,"formatter":{"id":"2163"},"group":null,"major_label_policy":{"id":"2267"},"ticker":{"id":"2138"}},"id":"2137","type":"LinearAxis"},{"attributes":{},"id":"2270","type":"UnionRenderers"},{"attributes":{"tools":[{"id":"2141"},{"id":"2142"},{"id":"2143"},{"id":"2144"},{"id":"2145"},{"id":"2146"}]},"id":"2148","type":"Toolbar"},{"attributes":{},"id":"2138","type":"BasicTicker"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"2147","type":"BoxAnnotation"},{"attributes":{"axis":{"id":"2137"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"2140","type":"Grid"},{"attributes":{"format":"0.0%"},"id":"2161","type":"NumeralTickFormatter"},{"attributes":{},"id":"2125","type":"DataRange1d"},{"attributes":{"coordinates":null,"group":null},"id":"2264","type":"Title"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2156","type":"Circle"},{"attributes":{},"id":"2269","type":"AllLabels"},{"attributes":{"source":{"id":"2155"}},"id":"2160","type":"CDSView"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2157","type":"Circle"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"2271"},"selection_policy":{"id":"2270"}},"id":"2155","type":"ColumnDataSource"}],"root_ids":["2124"]},"title":"Bokeh Application","version":"2.4.3"}};
1270
- const render_items = [{"docid":"613d7a77-2646-44bc-919b-9e517f0c7072","root_ids":["2124"],"roots":{"2124":"4088ee5f-9b79-4539-9bfe-8e8b62f5402a"}}];
1271
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
1272
- }
1273
- if (root.Bokeh !== undefined) {
1274
- embed_document(root);
1275
- } else {
1276
- let attempts = 0;
1277
- const timer = setInterval(function(root) {
1278
- if (root.Bokeh !== undefined) {
1279
- clearInterval(timer);
1280
- embed_document(root);
1281
- } else {
1282
- attempts++;
1283
- if (attempts > 100) {
1284
- clearInterval(timer);
1285
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
1286
- }
1287
- }
1288
- }, 10, root)
1289
- }
1290
- })(window);
1291
- </script>
1292
- </div>
1293
-
1294
- </div>
1295
-
1296
- </div>
1297
- </div>
1298
-
1299
- </div>
1300
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1301
- <div class="text_cell_render border-box-sizing rendered_html">
1302
- <p>Try experimenting with the format argument and re-execute the cell above.</p>
1303
- <p>There are many other possibilities for controlling tick formatting, including the possibility of supplying a JavaScript snippet to perform arbitrary formatting in the browser. See the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#tick-label-formats">Tick Label Formats</a> for more details.</p>
1304
- <p>It is also possible to customize <em>where</em> ticks will be drawn. See the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#tick-locations">Tick Locations</a> section of the User's Guide for more information.</p>
1305
-
1306
- </div>
1307
- </div>
1308
- </div>
1309
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1310
- <div class="text_cell_render border-box-sizing rendered_html">
1311
- <h3 id="Grids">Grids<a class="anchor-link" href="#Grids">&#182;</a></h3><p>It is also possible to control the <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#grids">styling of Grids</a></p>
1312
- <p>Grids properties in Bokeh have two possible prefixes:</p>
1313
- <ul>
1314
- <li><strong>grid</strong> properties (which are <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#line-properties">line properties</a>) control the "grid lines"</li>
1315
- <li><strong>band</strong> properties (which are <a href="https://bokeh.pydata.org/en/latest/docs/user_guide/styling.html#fill-properties">fill properties</a>) control shaded bands between grid lines</li>
1316
- </ul>
1317
- <p>In this first example we turn off the vertical grid lines (by setting the line color to None) and set the horizontal grid to be light and dashed.</p>
1318
-
1319
- </div>
1320
- </div>
1321
- </div>
1322
-
1323
-
1324
-
1325
- <div class="
1326
- cell border-box-sizing code_cell rendered">
1327
- <div class="input">
1328
-
1329
- <div class="inner_cell">
1330
- <div class="input_area">
1331
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
1332
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
1333
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
1334
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
1335
- <span class="p">)</span>
1336
-
1337
- <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
1338
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span>
1339
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span>
1340
- <span class="n">size</span><span class="o">=</span><span class="mi">10</span>
1341
- <span class="p">)</span>
1342
-
1343
- <span class="c1"># change just some things about the x-grid</span>
1344
- <span class="n">p</span><span class="o">.</span><span class="n">xgrid</span><span class="o">.</span><span class="n">grid_line_color</span> <span class="o">=</span> <span class="kc">None</span>
1345
-
1346
- <span class="c1"># change just some things about the y-grid</span>
1347
- <span class="n">p</span><span class="o">.</span><span class="n">ygrid</span><span class="o">.</span><span class="n">grid_line_alpha</span> <span class="o">=</span> <span class="mf">0.5</span>
1348
- <span class="n">p</span><span class="o">.</span><span class="n">ygrid</span><span class="o">.</span><span class="n">grid_line_dash</span> <span class="o">=</span> <span class="p">[</span><span class="mi">6</span><span class="p">,</span> <span class="mi">4</span><span class="p">]</span>
1349
-
1350
- <span class="c1"># show the results</span>
1351
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
1352
- </pre></div>
1353
-
1354
- </div>
1355
- </div>
1356
- </div>
1357
-
1358
- <div class="output_wrapper">
1359
- <div class="output">
1360
-
1361
-
1362
- <div class="output_area">
1363
-
1364
-
1365
-
1366
-
1367
- <div class="output_html rendered_html output_subarea ">
1368
-
1369
- <div class="bk-root" id="e47488a4-7866-45cf-ada8-b5ec064ca4bd" data-root-id="2318"></div>
1370
-
1371
- </div>
1372
-
1373
- </div>
1374
-
1375
- <div class="output_area">
1376
-
1377
-
1378
-
1379
-
1380
-
1381
-
1382
- <div id="df435281-4dca-4d73-ba34-5cbc40842fd9"></div>
1383
- <div class="output_subarea output_javascript ">
1384
- <script type="text/javascript">
1385
- var element = $('#df435281-4dca-4d73-ba34-5cbc40842fd9');
1386
- (function(root) {
1387
- function embed_document(root) {
1388
- const docs_json = {"1b94de34-58a8-4b3e-b8bb-2a5d79a8037e":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"2327"}],"center":[{"id":"2330"},{"id":"2334"}],"height":400,"left":[{"id":"2331"}],"renderers":[{"id":"2353"}],"title":{"id":"2463"},"toolbar":{"id":"2342"},"width":800,"x_range":{"id":"2319"},"x_scale":{"id":"2323"},"y_range":{"id":"2321"},"y_scale":{"id":"2325"}},"id":"2318","subtype":"Figure","type":"Plot"},{"attributes":{"tools":[{"id":"2335"},{"id":"2336"},{"id":"2337"},{"id":"2338"},{"id":"2339"},{"id":"2340"}]},"id":"2342","type":"Toolbar"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2350","type":"Circle"},{"attributes":{},"id":"2321","type":"DataRange1d"},{"attributes":{"coordinates":null,"group":null},"id":"2463","type":"Title"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"2341","type":"BoxAnnotation"},{"attributes":{},"id":"2335","type":"PanTool"},{"attributes":{},"id":"2319","type":"DataRange1d"},{"attributes":{},"id":"2339","type":"ResetTool"},{"attributes":{},"id":"2336","type":"WheelZoomTool"},{"attributes":{},"id":"2472","type":"Selection"},{"attributes":{"overlay":{"id":"2341"}},"id":"2337","type":"BoxZoomTool"},{"attributes":{},"id":"2338","type":"SaveTool"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"2472"},"selection_policy":{"id":"2471"}},"id":"2349","type":"ColumnDataSource"},{"attributes":{"coordinates":null,"data_source":{"id":"2349"},"glyph":{"id":"2350"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"2352"},"nonselection_glyph":{"id":"2351"},"view":{"id":"2354"}},"id":"2353","type":"GlyphRenderer"},{"attributes":{},"id":"2328","type":"BasicTicker"},{"attributes":{},"id":"2323","type":"LinearScale"},{"attributes":{},"id":"2340","type":"HelpTool"},{"attributes":{},"id":"2467","type":"AllLabels"},{"attributes":{},"id":"2325","type":"LinearScale"},{"attributes":{"coordinates":null,"formatter":{"id":"2469"},"group":null,"major_label_policy":{"id":"2470"},"ticker":{"id":"2328"}},"id":"2327","type":"LinearAxis"},{"attributes":{"source":{"id":"2349"}},"id":"2354","type":"CDSView"},{"attributes":{},"id":"2471","type":"UnionRenderers"},{"attributes":{"axis":{"id":"2327"},"coordinates":null,"grid_line_color":null,"group":null,"ticker":null},"id":"2330","type":"Grid"},{"attributes":{},"id":"2332","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"2466"},"group":null,"major_label_policy":{"id":"2467"},"ticker":{"id":"2332"}},"id":"2331","type":"LinearAxis"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2351","type":"Circle"},{"attributes":{},"id":"2469","type":"BasicTickFormatter"},{"attributes":{"axis":{"id":"2331"},"coordinates":null,"dimension":1,"grid_line_alpha":0.5,"grid_line_dash":[6,4],"group":null,"ticker":null},"id":"2334","type":"Grid"},{"attributes":{},"id":"2466","type":"BasicTickFormatter"},{"attributes":{},"id":"2470","type":"AllLabels"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2352","type":"Circle"}],"root_ids":["2318"]},"title":"Bokeh Application","version":"2.4.3"}};
1389
- const render_items = [{"docid":"1b94de34-58a8-4b3e-b8bb-2a5d79a8037e","root_ids":["2318"],"roots":{"2318":"e47488a4-7866-45cf-ada8-b5ec064ca4bd"}}];
1390
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
1391
- }
1392
- if (root.Bokeh !== undefined) {
1393
- embed_document(root);
1394
- } else {
1395
- let attempts = 0;
1396
- const timer = setInterval(function(root) {
1397
- if (root.Bokeh !== undefined) {
1398
- clearInterval(timer);
1399
- embed_document(root);
1400
- } else {
1401
- attempts++;
1402
- if (attempts > 100) {
1403
- clearInterval(timer);
1404
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
1405
- }
1406
- }
1407
- }, 10, root)
1408
- }
1409
- })(window);
1410
- </script>
1411
- </div>
1412
-
1413
- </div>
1414
-
1415
- </div>
1416
- </div>
1417
-
1418
- </div>
1419
- <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
1420
- <div class="text_cell_render border-box-sizing rendered_html">
1421
- <p>The next example shows how the "band" properties of a plot can be specified</p>
1422
-
1423
- </div>
1424
- </div>
1425
- </div>
1426
-
1427
-
1428
-
1429
- <div class="
1430
- cell border-box-sizing code_cell rendered">
1431
- <div class="input">
1432
-
1433
- <div class="inner_cell">
1434
- <div class="input_area">
1435
- <div class=" highlight hl-ipython3"><pre><span></span><span class="c1"># create a new plot using figure</span>
1436
- <span class="n">p</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
1437
- <span class="n">plot_height</span><span class="o">=</span><span class="mi">400</span><span class="p">,</span>
1438
- <span class="n">plot_width</span><span class="o">=</span><span class="mi">800</span><span class="p">,</span>
1439
- <span class="p">)</span>
1440
-
1441
-
1442
- <span class="n">p</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
1443
- <span class="p">[</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">],</span>
1444
- <span class="p">[</span><span class="mi">2</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">7</span><span class="p">],</span>
1445
- <span class="n">size</span><span class="o">=</span><span class="mi">10</span>
1446
- <span class="p">)</span>
1447
-
1448
- <span class="c1"># change just some things about the x-grid</span>
1449
- <span class="n">p</span><span class="o">.</span><span class="n">xgrid</span><span class="o">.</span><span class="n">grid_line_color</span> <span class="o">=</span> <span class="kc">None</span>
1450
-
1451
- <span class="c1"># change just some things about the y-grid</span>
1452
- <span class="n">p</span><span class="o">.</span><span class="n">ygrid</span><span class="o">.</span><span class="n">band_fill_alpha</span> <span class="o">=</span> <span class="mf">0.1</span>
1453
- <span class="n">p</span><span class="o">.</span><span class="n">ygrid</span><span class="o">.</span><span class="n">band_fill_color</span> <span class="o">=</span> <span class="s2">&quot;navy&quot;</span>
1454
-
1455
- <span class="c1"># show the results</span>
1456
- <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
1457
- </pre></div>
1458
-
1459
- </div>
1460
- </div>
1461
- </div>
1462
-
1463
- <div class="output_wrapper">
1464
- <div class="output">
1465
-
1466
-
1467
- <div class="output_area">
1468
-
1469
-
1470
-
1471
-
1472
- <div class="output_html rendered_html output_subarea ">
1473
-
1474
- <div class="bk-root" id="3fd26f99-1dbb-4670-8e11-72b3f5ca79c4" data-root-id="2529"></div>
1475
-
1476
- </div>
1477
-
1478
- </div>
1479
-
1480
- <div class="output_area">
1481
-
1482
-
1483
-
1484
-
1485
-
1486
-
1487
- <div id="e6dfc1e8-9552-4ada-a3a3-70652b687b4d"></div>
1488
- <div class="output_subarea output_javascript ">
1489
- <script type="text/javascript">
1490
- var element = $('#e6dfc1e8-9552-4ada-a3a3-70652b687b4d');
1491
- (function(root) {
1492
- function embed_document(root) {
1493
- const docs_json = {"13ecf0c1-f773-4b5c-8c3f-194537425ed6":{"defs":[],"roots":{"references":[{"attributes":{"below":[{"id":"2538"}],"center":[{"id":"2541"},{"id":"2545"}],"height":400,"left":[{"id":"2542"}],"renderers":[{"id":"2564"}],"title":{"id":"2685"},"toolbar":{"id":"2553"},"width":800,"x_range":{"id":"2530"},"x_scale":{"id":"2534"},"y_range":{"id":"2532"},"y_scale":{"id":"2536"}},"id":"2529","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"2692","type":"AllLabels"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.1},"line_alpha":{"value":0.1},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2562","type":"Circle"},{"attributes":{"axis":{"id":"2542"},"band_fill_alpha":0.1,"band_fill_color":"navy","coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"2545","type":"Grid"},{"attributes":{},"id":"2694","type":"Selection"},{"attributes":{"data":{"x":[1,2,3,4,5],"y":[2,5,8,2,7]},"selected":{"id":"2694"},"selection_policy":{"id":"2693"}},"id":"2560","type":"ColumnDataSource"},{"attributes":{},"id":"2693","type":"UnionRenderers"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"#1f77b4"},"hatch_alpha":{"value":0.2},"line_alpha":{"value":0.2},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2563","type":"Circle"},{"attributes":{},"id":"2688","type":"BasicTickFormatter"},{"attributes":{"source":{"id":"2560"}},"id":"2565","type":"CDSView"},{"attributes":{},"id":"2530","type":"DataRange1d"},{"attributes":{"coordinates":null,"data_source":{"id":"2560"},"glyph":{"id":"2561"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"2563"},"nonselection_glyph":{"id":"2562"},"view":{"id":"2565"}},"id":"2564","type":"GlyphRenderer"},{"attributes":{},"id":"2532","type":"DataRange1d"},{"attributes":{},"id":"2546","type":"PanTool"},{"attributes":{},"id":"2550","type":"ResetTool"},{"attributes":{},"id":"2547","type":"WheelZoomTool"},{"attributes":{"overlay":{"id":"2552"}},"id":"2548","type":"BoxZoomTool"},{"attributes":{},"id":"2549","type":"SaveTool"},{"attributes":{},"id":"2691","type":"BasicTickFormatter"},{"attributes":{},"id":"2539","type":"BasicTicker"},{"attributes":{"fill_color":{"value":"#1f77b4"},"line_color":{"value":"#1f77b4"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"2561","type":"Circle"},{"attributes":{},"id":"2534","type":"LinearScale"},{"attributes":{},"id":"2551","type":"HelpTool"},{"attributes":{},"id":"2536","type":"LinearScale"},{"attributes":{"coordinates":null,"group":null},"id":"2685","type":"Title"},{"attributes":{"coordinates":null,"formatter":{"id":"2691"},"group":null,"major_label_policy":{"id":"2692"},"ticker":{"id":"2539"}},"id":"2538","type":"LinearAxis"},{"attributes":{},"id":"2689","type":"AllLabels"},{"attributes":{"axis":{"id":"2538"},"coordinates":null,"grid_line_color":null,"group":null,"ticker":null},"id":"2541","type":"Grid"},{"attributes":{"bottom_units":"screen","coordinates":null,"fill_alpha":0.5,"fill_color":"lightgrey","group":null,"left_units":"screen","level":"overlay","line_alpha":1.0,"line_color":"black","line_dash":[4,4],"line_width":2,"right_units":"screen","syncable":false,"top_units":"screen"},"id":"2552","type":"BoxAnnotation"},{"attributes":{},"id":"2543","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"2688"},"group":null,"major_label_policy":{"id":"2689"},"ticker":{"id":"2543"}},"id":"2542","type":"LinearAxis"},{"attributes":{"tools":[{"id":"2546"},{"id":"2547"},{"id":"2548"},{"id":"2549"},{"id":"2550"},{"id":"2551"}]},"id":"2553","type":"Toolbar"}],"root_ids":["2529"]},"title":"Bokeh Application","version":"2.4.3"}};
1494
- const render_items = [{"docid":"13ecf0c1-f773-4b5c-8c3f-194537425ed6","root_ids":["2529"],"roots":{"2529":"3fd26f99-1dbb-4670-8e11-72b3f5ca79c4"}}];
1495
- root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
1496
- }
1497
- if (root.Bokeh !== undefined) {
1498
- embed_document(root);
1499
- } else {
1500
- let attempts = 0;
1501
- const timer = setInterval(function(root) {
1502
- if (root.Bokeh !== undefined) {
1503
- clearInterval(timer);
1504
- embed_document(root);
1505
- } else {
1506
- attempts++;
1507
- if (attempts > 100) {
1508
- clearInterval(timer);
1509
- console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
1510
- }
1511
- }
1512
- }, 10, root)
1513
- }
1514
- })(window);
1515
- </script>
1516
- </div>
1517
-
1518
- </div>
1519
-
1520
- </div>
1521
- </div>
1522
-
1523
- </div>
1524
-