j1-template 2022.5.0.rc1 → 2022.5.0.rc4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (378) hide show
  1. checksums.yaml +4 -4
  2. data/assets/data/banner.html +24 -1
  3. data/assets/themes/j1/adapter/js/masterslider.js +22 -5
  4. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +56 -0
  5. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +1 -1
  6. data/lib/j1/version.rb +1 -1
  7. data/lib/starter_web/Gemfile +270 -270
  8. data/lib/starter_web/_config.yml +19 -9
  9. data/lib/starter_web/_data/blocks/banner.yml +17 -0
  10. data/lib/starter_web/_data/modules/defaults/masterslider.yml +1 -1
  11. data/lib/starter_web/_data/modules/justifiedGallery.yml +82 -0
  12. data/lib/starter_web/_data/modules/masterslider.yml +5 -9
  13. data/lib/starter_web/_data/modules/navigator_menu.yml +208 -168
  14. data/lib/starter_web/_includes/attributes.asciidoc +18 -14
  15. data/lib/starter_web/_includes/tables/template_variables.asciidoc +1 -1
  16. data/lib/starter_web/_plugins/asciidoctor-extensions/lightbox-block.rb +4 -4
  17. data/lib/starter_web/assets/images/pages/features/blog-post-navigator-1280x1000.jpg +0 -0
  18. data/lib/starter_web/assets/images/pages/features/bootswatch-themes-1280x800.png +0 -0
  19. data/lib/starter_web/assets/images/pages/features/clipboard-1280x600.jpg +0 -0
  20. data/lib/starter_web/assets/images/pages/features/comments-1280x600.jpg +0 -0
  21. data/lib/starter_web/assets/images/pages/features/cookie-consent-1280x800.jpg +0 -0
  22. data/lib/starter_web/assets/images/pages/features/desktop-web-navigation-1280x1000.jpg +0 -0
  23. data/lib/starter_web/assets/images/pages/features/example-content-1280x800.jpg +0 -0
  24. data/lib/starter_web/assets/images/pages/features/example-content-present-videos-1280x800.jpg +0 -0
  25. data/lib/starter_web/assets/images/pages/features/fab-1280x500.jpg +0 -0
  26. data/lib/starter_web/assets/images/pages/features/full-text-search-1280x800.jpg +0 -0
  27. data/lib/starter_web/assets/images/pages/features/global-mobile-traffic-1920x1080.png +0 -0
  28. data/lib/starter_web/assets/images/pages/features/google-lighthouse-1080x300.png +0 -0
  29. data/lib/starter_web/assets/images/pages/features/intro-panel-1280x800.jpg +0 -0
  30. data/lib/starter_web/assets/images/pages/features/master-header-1280x600.jpg +0 -0
  31. data/lib/starter_web/assets/images/pages/features/mobile-navigation-600x800.png +0 -0
  32. data/lib/starter_web/assets/images/pages/features/native-speakers-by-language.png +0 -0
  33. data/lib/starter_web/assets/images/pages/features/nav-module-1280x300.jpg +0 -0
  34. data/lib/starter_web/assets/images/pages/features/nbi-barchart-1280x800.jpg +0 -0
  35. data/lib/starter_web/assets/images/pages/features/teaser-banner-1280x600.jpg +0 -0
  36. data/lib/starter_web/assets/images/pages/features/translator-1280x800.jpg +0 -0
  37. data/lib/starter_web/assets/images/sticker/600x600/sticker-new-version.png +0 -0
  38. data/lib/starter_web/assets/images/sticker/scalable/readme +0 -0
  39. data/lib/starter_web/package.json +6 -6
  40. data/lib/starter_web/pages/public/_jupyter/docs/_includes/attributes.asciidoc +67 -0
  41. data/lib/starter_web/pages/public/_jupyter/docs/_includes/documents/j1_docs_example_static.asciidoc +232 -0
  42. data/lib/starter_web/pages/public/_jupyter/docs/binderhub.adoc +631 -0
  43. data/lib/starter_web/pages/public/_jupyter/docs/j1-nbinteract.adoc +638 -0
  44. data/lib/starter_web/pages/public/_jupyter/docs/jupyterhub.adoc +248 -0
  45. data/lib/starter_web/pages/public/_jupyter/docs/nbinteract-widget-manual.adoc +928 -0
  46. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-circular-times-table.adoc +139 -0
  47. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-common-used-widgets.adoc +229 -0
  48. data/lib/starter_web/pages/public/_jupyter/examples/distributed/j1-odes-in-python.adoc +112 -0
  49. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-altair/j1-altair-visualisations.adoc +142 -0
  50. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bokeh-visualisations.adoc +171 -0
  51. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-bokeh/j1-bqplot-eamples.adoc +111 -0
  52. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1-plotly/j1-plotly-visualisations.adoc +94 -0
  53. data/lib/starter_web/pages/public/_jupyter/examples/localized/j1_climate-change-forecast.adoc +106 -0
  54. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +16260 -0
  55. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_bgplot_line_plot-checkpoint.ipynb +247 -0
  56. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-Copy1-checkpoint.ipynb +12382 -0
  57. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-checkpoint.ipynb +12387 -0
  58. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_circular_times_table-short-checkpoint.ipynb +12170 -0
  59. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_climate_change_forecast-checkpoint.ipynb +1058 -0
  60. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_docs_example_dynamic-checkpoint.ipynb +14478 -0
  61. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-Copy1-checkpoint.ipynb +379 -0
  62. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_interactive_widgets-checkpoint.ipynb +442 -0
  63. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets-checkpoint.ipynb +523 -0
  64. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.line_charts-checkpoint.ipynb +84 -0
  65. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets.questions-checkpoint.ipynb +194 -0
  66. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_chart-checkpoint.ipynb +89 -0
  67. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-Copy1-checkpoint.ipynb +164 -0
  68. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts-checkpoint.ipynb +173 -0
  69. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_bar_charts.1-checkpoint.ipynb +256 -0
  70. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_barcharts-checkpoint.ipynb +126 -0
  71. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_hist_chart-checkpoint.ipynb +87 -0
  72. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_chart-checkpoint.ipynb +90 -0
  73. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_line_charts-checkpoint.ipynb +87 -0
  74. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_multiple_choice-checkpoint.ipynb +64 -0
  75. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_question_short_answer-checkpoint.ipynb +122 -0
  76. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_questions-checkpoint.ipynb +181 -0
  77. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_chart-checkpoint.ipynb +89 -0
  78. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_charts-checkpoint.ipynb +175 -0
  79. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_nbi_widgets_scatter_drag_chart-checkpoint.ipynb +87 -0
  80. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_ode_selected-checkpoint.ipynb +14478 -0
  81. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/.ipynb_checkpoints/j1_odes_in_python-checkpoint.ipynb +15227 -0
  82. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/factor_by_factor.mp4 +0 -0
  83. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_circular_times_table.ipynb +12382 -0
  84. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_climate_change_forecast.ipynb +1058 -0
  85. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_docs_example_dynamic.ipynb +14478 -0
  86. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_interactive_widgets.ipynb +442 -0
  87. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets.ipynb +523 -0
  88. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_bar_chart.ipynb +89 -0
  89. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_hist_chart.ipynb +87 -0
  90. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_line_chart.ipynb +90 -0
  91. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_multiple_choice.ipynb +64 -0
  92. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_question_short_answer.ipynb +122 -0
  93. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_chart.ipynb +89 -0
  94. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_nbi_widgets_scatter_drag_chart.ipynb +87 -0
  95. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/j1_odes_in_python.ipynb +15227 -0
  96. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/line_by_line.mp4 +0 -0
  97. data/lib/starter_web/pages/public/_jupyter/notebooks/j1/point_by_point.mp4 +0 -0
  98. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_interactive-checkpoint.ipynb +16296 -0
  99. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/.ipynb_checkpoints/j1_altair_non_interactive-checkpoint.ipynb +15385 -0
  100. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_interactive.ipynb +16296 -0
  101. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-altair-tutorial/j1_altair_non_interactive.ipynb +15385 -0
  102. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/00 - Introduction and Setup-checkpoint.ipynb +717 -0
  103. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/01 - Basic Plotting-checkpoint.ipynb +1381 -0
  104. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/02 - Styling and Theming-checkpoint.ipynb +1440 -0
  105. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/03 - Data Sources and Transformations-checkpoint.ipynb +927 -0
  106. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/04 - Adding Annotations-checkpoint.ipynb +1105 -0
  107. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/05 - Presentation Layouts-checkpoint.ipynb +578 -0
  108. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/06 - Linking and Interactions-checkpoint.ipynb +1196 -0
  109. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/07 - Bar and Categorical Data Plots-checkpoint.ipynb +1681 -0
  110. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/08 - Graph and Network Plots-checkpoint.ipynb +680 -0
  111. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/09 - Geographic Plots-checkpoint.ipynb +693 -0
  112. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/10 - Exporting and Embedding-checkpoint.ipynb +751 -0
  113. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/11 - Running Bokeh Applications-checkpoint.ipynb +770 -0
  114. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/bokeh_tut_00_introduction_and_setup-checkpoint.ipynb +666 -0
  115. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_01_basic_plotting-checkpoint.ipynb +1365 -0
  116. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_02_styling_and_theming-checkpoint.ipynb +1405 -0
  117. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_03_data_sources_and_transformations-checkpoint.ipynb +856 -0
  118. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_04_adding_annotations-checkpoint.ipynb +1167 -0
  119. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_05_presentation_layouts-checkpoint.ipynb +601 -0
  120. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_06_linking_and_interactions-checkpoint.ipynb +1356 -0
  121. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_07_bar_and_categorical_data_plots-checkpoint.ipynb +1742 -0
  122. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_08_graph_and_network_plots-checkpoint.ipynb +625 -0
  123. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_09_geographic_plots-checkpoint.ipynb +685 -0
  124. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.ipynb +726 -0
  125. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding-checkpoint.org +726 -0
  126. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_10_exporting_and_embedding.new-checkpoint.ipynb +560 -0
  127. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/.ipynb_checkpoints/j1_bokeh_11_running_bokeh_applications-checkpoint.ipynb +716 -0
  128. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_01_basic_plotting.ipynb +1365 -0
  129. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_02_styling_and_theming.ipynb +1405 -0
  130. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_03_data_sources_and_transformations.ipynb +856 -0
  131. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_04_adding_annotations.ipynb +1167 -0
  132. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_05_presentation_layouts.ipynb +601 -0
  133. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_06_linking_and_interactions.ipynb +1356 -0
  134. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_07_bar_and_categorical_data_plots.ipynb +1742 -0
  135. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_08_graph_and_network_plots.ipynb +625 -0
  136. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bokeh-tutorial/j1_bokeh_09_geographic_plots.ipynb +685 -0
  137. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/.ipynb_checkpoints/j1_mathplot_vs_bqplot-checkpoint.ipynb +336 -0
  138. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/advanced/Feature_Vector_Distribution-Iris-Digits.ipynb +433 -0
  139. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_bgplot_line_plot.ipynb +244 -0
  140. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_circular_times_table-short.ipynb +12170 -0
  141. data/lib/starter_web/pages/public/_jupyter/notebooks/j1-bqplot/j1_mathplot_vs_bqplot.ipynb +336 -0
  142. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Index-checkpoint.ipynb +163 -0
  143. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/.ipynb_checkpoints/Tutorials-checkpoint.ipynb +51 -0
  144. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Advanced Plotting.ipynb +289 -0
  145. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Animations.ipynb +266 -0
  146. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Axis Properties.ipynb +396 -0
  147. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Advanced Plotting/Plotting Dates.ipynb +318 -0
  148. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/Time Series.ipynb +158 -0
  149. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Equity Index Performance/spx_prices.csv +6799 -0
  150. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Feature_Vector_Distribution-Iris-Digits.ipynb +470 -0
  151. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Index.ipynb +49 -0
  152. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Logs Analytics/Logs Dashboard.ipynb +378 -0
  153. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Mobile Patent Suits.ipynb +123 -0
  154. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Neural Network.ipynb +177 -0
  155. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Outlier Detection.ipynb +311 -0
  156. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Bubble Chart.ipynb +255 -0
  157. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/Choropleth.ipynb +275 -0
  158. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/nations.json +1 -0
  159. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Applications/Wealth Of Nations/world_map_codes.csv +234 -0
  160. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Basic Plotting-checkpoint.ipynb +186 -0
  161. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Pyplot-checkpoint.ipynb +794 -0
  162. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/.ipynb_checkpoints/Untitled-checkpoint.ipynb +323 -0
  163. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Basic Plotting.ipynb +261 -0
  164. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Basic Plotting/Pyplot.ipynb +1489 -0
  165. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Index.ipynb +163 -0
  166. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Interaction Layer.ipynb +966 -0
  167. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Mark Interactions.ipynb +476 -0
  168. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Interactions/Selectors.ipynb +427 -0
  169. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Introduction.ipynb +528 -0
  170. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bars.ipynb +480 -0
  171. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Bins.ipynb +217 -0
  172. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Boxplot.ipynb +253 -0
  173. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Candles.ipynb +225 -0
  174. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/FlexLine.ipynb +123 -0
  175. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Graph.ipynb +357 -0
  176. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/GridHeatMap.ipynb +422 -0
  177. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/HeatMap.ipynb +157 -0
  178. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Hist.ipynb +176 -0
  179. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Image.ipynb +195 -0
  180. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Label.ipynb +189 -0
  181. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Lines.ipynb +565 -0
  182. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Map.ipynb +182 -0
  183. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Market Map.ipynb +315 -0
  184. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Pie.ipynb +465 -0
  185. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Object Model/Scatter.ipynb +835 -0
  186. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bars.ipynb +362 -0
  187. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Bins.ipynb +252 -0
  188. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Boxplot.ipynb +273 -0
  189. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Candles.ipynb +242 -0
  190. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/GridHeatMap.ipynb +417 -0
  191. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/HeatMap.ipynb +155 -0
  192. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Hist.ipynb +238 -0
  193. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Image.ipynb +152 -0
  194. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Label.ipynb +206 -0
  195. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Lines.ipynb +474 -0
  196. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Map.ipynb +181 -0
  197. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Pie.ipynb +310 -0
  198. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Marks/Pyplot/Scatter.ipynb +702 -0
  199. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Scales/Color Scales.ipynb +495 -0
  200. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Feature_Vector_Distribution-Iris-Digits-checkpoint.ipynb +433 -0
  201. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Linking Plots With Widgets-checkpoint.ipynb +326 -0
  202. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-Copy1-checkpoint.ipynb +177 -0
  203. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/.ipynb_checkpoints/Updating Plots-checkpoint.ipynb +177 -0
  204. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Brush Interval Selector.ipynb +154 -0
  205. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Fast Interval Selector.ipynb +152 -0
  206. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density Widget.ipynb +128 -0
  207. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Gaussian Density.ipynb +113 -0
  208. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Linking Plots With Widgets.ipynb +326 -0
  209. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Object Model.ipynb +179 -0
  210. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Pyplot.ipynb +174 -0
  211. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials/Updating Plots.ipynb +177 -0
  212. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/Tutorials.ipynb +51 -0
  213. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/country_codes.csv +213 -0
  214. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/gdp_per_capita.csv +56 -0
  215. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/state_codes.csv +52 -0
  216. data/lib/starter_web/pages/public/_jupyter/notebooks/martin_renou_bqplot/data_files/trees.jpg +0 -0
  217. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_central_limit_theorem-checkpoint.ipynb +247 -0
  218. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_examples_variability_of_the_sample_mean-checkpoint.ipynb +323 -0
  219. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_graphing-checkpoint.ipynb +387 -0
  220. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_interactive_questions-checkpoint.ipynb +185 -0
  221. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_recipes_layout-checkpoint.ipynb +384 -0
  222. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_interact-checkpoint.ipynb +254 -0
  223. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/.ipynb_checkpoints/nbi_docs_tutorial_monty_hall-checkpoint.ipynb +732 -0
  224. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_central_limit_theorem.ipynb +247 -0
  225. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_correlation.ipynb +651 -0
  226. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_empirical_distributions.ipynb +773 -0
  227. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_linear_regression.ipynb +111 -0
  228. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_probability_distribution_plots.ipynb +199 -0
  229. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_sampling_from_a_population.ipynb +421 -0
  230. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_examples_variability_of_the_sample_mean.ipynb +323 -0
  231. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_graphing.ipynb +387 -0
  232. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_interactive_questions.ipynb +185 -0
  233. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_recipes_layout.ipynb +384 -0
  234. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_interact.ipynb +254 -0
  235. data/lib/starter_web/pages/public/_jupyter/notebooks/nbi-docs/nbi_docs_tutorial_monty_hall.ipynb +732 -0
  236. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Advanced Plotting.html +373 -0
  237. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Animations.html +361 -0
  238. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Axis Properties.html +569 -0
  239. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bars.html +487 -0
  240. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Basic Plotting.html +341 -0
  241. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bins.html +259 -0
  242. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Boxplot.html +277 -0
  243. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Brush Interval Selector.html +182 -0
  244. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Bubble Chart.html +299 -0
  245. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Candles.html +252 -0
  246. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Choropleth.html +318 -0
  247. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Color Scales.html +514 -0
  248. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Fast Interval Selector.html +182 -0
  249. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Feature_Vector_Distribution-Iris-Digits.html +479 -0
  250. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/FlexLine.html +128 -0
  251. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density Widget.html +152 -0
  252. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Gaussian Density.html +137 -0
  253. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Graph.html +484 -0
  254. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/GridHeatMap.html +483 -0
  255. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/HeatMap.html +170 -0
  256. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Hist.html +349 -0
  257. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Image.html +177 -0
  258. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Index.html +29 -0
  259. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Interaction Layer.html +1372 -0
  260. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Introduction.html +749 -0
  261. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Label.html +268 -0
  262. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Lines.html +704 -0
  263. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Linking Plots With Widgets.html +389 -0
  264. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Logs Dashboard.html +455 -0
  265. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Map.html +229 -0
  266. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mark Interactions.html +613 -0
  267. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Market Map.html +413 -0
  268. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Mobile Patent Suits.html +131 -0
  269. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Neural Network.html +190 -0
  270. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Object Model.html +193 -0
  271. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Outlier Detection.html +363 -0
  272. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pie.html +367 -0
  273. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Plotting Dates.html +337 -0
  274. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Pyplot.html +196 -0
  275. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Scatter.html +948 -0
  276. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Selectors.html +489 -0
  277. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Time Series.html +173 -0
  278. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Tutorials.html +40 -0
  279. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/Updating Plots.html +228 -0
  280. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_interactive.html +2216 -0
  281. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_altair_non_interactive.html +1170 -0
  282. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bgplot_line_plot.html +318 -0
  283. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_01_basic_plotting.html +1479 -0
  284. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_02_styling_and_theming.html +1524 -0
  285. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_03_data_sources_and_transformations.html +983 -0
  286. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_04_adding_annotations.html +1280 -0
  287. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_05_presentation_layouts.html +660 -0
  288. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_06_linking_and_interactions.html +1563 -0
  289. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_07_bar_and_categorical_data_plots.html +1888 -0
  290. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_08_graph_and_network_plots.html +689 -0
  291. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_bokeh_09_geographic_plots.html +767 -0
  292. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table-short.html +475 -0
  293. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_circular_times_table.html +747 -0
  294. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_climate_change_forecast.html +1250 -0
  295. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_docs_example_dynamic.html +186 -0
  296. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_interactive_widgets.html +512 -0
  297. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_mathplot_vs_bqplot.html +407 -0
  298. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets.html +629 -0
  299. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +95 -0
  300. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +93 -0
  301. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +96 -0
  302. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +70 -0
  303. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +156 -0
  304. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +95 -0
  305. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +93 -0
  306. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/j1_odes_in_python.html +955 -0
  307. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_central_limit_theorem.html +290 -0
  308. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_correlation.html +818 -0
  309. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_empirical_distributions.html +351 -0
  310. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_linear_regression.html +106 -0
  311. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_probability_distribution_plots.html +228 -0
  312. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_sampling_from_a_population.html +518 -0
  313. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_examples_variability_of_the_sample_mean.html +372 -0
  314. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_graphing.html +473 -0
  315. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_interactive_questions.html +242 -0
  316. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_recipes_layout.html +496 -0
  317. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_interact.html +329 -0
  318. data/lib/starter_web/pages/public/_jupyter/notebooks/textbooks/nbi_docs_tutorial_monty_hall.html +866 -0
  319. data/lib/starter_web/pages/public/_jupyter/where_to_go.adoc +270 -0
  320. data/lib/starter_web/pages/public/features/general.adoc +74 -33
  321. data/lib/starter_web/pages/public/features/template.adoc +159 -68
  322. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_interactive_widgets.html +512 -512
  323. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets.html +629 -629
  324. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +95 -95
  325. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +93 -93
  326. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +96 -96
  327. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +70 -70
  328. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +156 -156
  329. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +95 -95
  330. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +93 -93
  331. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_odes_in_python.html +955 -955
  332. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_images.adoc +313 -0
  333. data/lib/starter_web/pages/public/learn/_roundtrip/100_present_videos.adoc +281 -0
  334. data/lib/starter_web/pages/public/learn/_roundtrip/200_typography.adoc +253 -0
  335. data/lib/starter_web/pages/public/learn/_roundtrip/300_icon_fonts.adoc +579 -0
  336. data/lib/starter_web/pages/public/learn/_roundtrip/400_asciidoc_extensions.adoc +718 -0
  337. data/lib/starter_web/pages/public/learn/_roundtrip/410_bs_modals_extentions.adoc +91 -0
  338. data/lib/starter_web/pages/public/learn/_roundtrip/420_responsive_tables_extensions.adoc +420 -0
  339. data/lib/starter_web/pages/public/learn/_roundtrip/500_themes.adoc +250 -0
  340. data/lib/starter_web/pages/public/learn/_roundtrip/600_quicksearch.adoc +425 -0
  341. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/attributes.asciidoc +118 -0
  342. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/100_gistblock.asciidoc +28 -0
  343. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_info.asciidoc +14 -0
  344. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_left_warning.asciidoc +11 -0
  345. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_bottom_right_danger.asciidoc +11 -0
  346. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_central_success.asciidoc +11 -0
  347. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_left_info.asciidoc +11 -0
  348. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_full_height_right_success.asciidoc +11 -0
  349. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_table_bs_modal_examples.asciidoc +47 -0
  350. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_info.asciidoc +11 -0
  351. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_left_info.asciidoc +11 -0
  352. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/410_top_right_success.asciidoc +11 -0
  353. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/419_advanced_modals_demo.asciidoc +337 -0
  354. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/documents/tables/bs_modal_examples.asciidoc +47 -0
  355. data/lib/starter_web/pages/public/learn/_roundtrip/_includes/google-ad.js +130 -0
  356. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +6 -5
  357. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +1 -2
  358. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +4 -2
  359. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +1 -1
  360. data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +1 -1
  361. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  362. data/lib/starter_web/utilsrv/package.json +1 -1
  363. metadata +384 -17
  364. data/lib/starter_web/_includes/_attributes.asciidoc +0 -575
  365. data/lib/starter_web/assets/images/pages/features/bootswatch-themes-1080x800.jpg +0 -0
  366. data/lib/starter_web/assets/images/pages/features/comments-1080x600.jpg +0 -0
  367. data/lib/starter_web/assets/images/pages/features/cookie-consent-1080x800.jpg +0 -0
  368. data/lib/starter_web/assets/images/pages/features/example-content-present-videos-1080x800.jpg +0 -0
  369. data/lib/starter_web/assets/images/pages/features/fab-1080x500.jpg +0 -0
  370. data/lib/starter_web/assets/images/pages/features/full-text-search-1080x800.jpg +0 -0
  371. data/lib/starter_web/assets/images/pages/features/global-mobile-traffic-1920x1080.jpg +0 -0
  372. data/lib/starter_web/assets/images/pages/features/google-lighthouse-1080x300.jpg +0 -0
  373. data/lib/starter_web/assets/images/pages/features/intro-panel-1080x800.jpg +0 -0
  374. data/lib/starter_web/assets/images/pages/features/mobile-navigation-600x800.jpg +0 -0
  375. data/lib/starter_web/assets/images/pages/features/native-speakers-by-language.jpg +0 -0
  376. data/lib/starter_web/assets/images/pages/features/nav-module-1080x300.jpg +0 -0
  377. data/lib/starter_web/assets/images/pages/features/teaser-banner-1080x600.jpg +0 -0
  378. data/lib/starter_web/assets/images/pages/features/translator-1080x800.jpg +0 -0
@@ -0,0 +1,660 @@
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="5.-Presentation-and-Layout">5. Presentation and Layout<a class="anchor-link" href="#5.-Presentation-and-Layout">&#182;</a></h2><p>In the previous chapters we started to learn how to create single plots using differnet kinds of data. But we often want to plot more than one thing. Bokeh plots can be individually embedded in HTML documents, but it's often easier to
12
+ combine multiple plots in one of Bokeh's built-in layouts. We will learn how to do that in this chapter.</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
+
29
+ <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
30
+ </pre></div>
31
+
32
+ </div>
33
+ </div>
34
+ </div>
35
+
36
+ </div>
37
+
38
+
39
+
40
+ <div class="nbinteract-hide_out
41
+ cell border-box-sizing code_cell rendered">
42
+ <div class="input">
43
+
44
+ <div class="inner_cell">
45
+ <div class="input_area">
46
+ <div class=" highlight hl-ipython3"><pre><span></span><span class="c1">#nbi:hide_out</span>
47
+ <span class="c1"># Make all outputs INLINE for default (why a hell this is needed !!!)</span>
48
+ <span class="n">output_notebook</span><span class="p">()</span>
49
+ </pre></div>
50
+
51
+ </div>
52
+ </div>
53
+ </div>
54
+
55
+ <div class="output_wrapper">
56
+ <div class="output">
57
+
58
+
59
+ <div class="output_area">
60
+
61
+
62
+
63
+
64
+ <div class="output_html rendered_html output_subarea ">
65
+ <div class="bk-root">
66
+ <a href="https://bokeh.org" target="_blank" class="bk-logo bk-logo-small bk-logo-notebook"></a>
67
+ <span id="1002">Loading BokehJS ...</span>
68
+ </div>
69
+
70
+ </div>
71
+
72
+ </div>
73
+
74
+ <div class="output_area">
75
+
76
+
77
+
78
+
79
+
80
+
81
+ <div id="64d4af4c-624c-4ac5-9fc2-90d7bb1a88b3"></div>
82
+ <div class="output_subarea output_javascript ">
83
+ <script type="text/javascript">
84
+ var element = $('#64d4af4c-624c-4ac5-9fc2-90d7bb1a88b3');
85
+ (function(root) {
86
+ function now() {
87
+ return new Date();
88
+ }
89
+
90
+ const force = true;
91
+
92
+ if (typeof root._bokeh_onload_callbacks === "undefined" || force === true) {
93
+ root._bokeh_onload_callbacks = [];
94
+ root._bokeh_is_loading = undefined;
95
+ }
96
+
97
+ const JS_MIME_TYPE = 'application/javascript';
98
+ const HTML_MIME_TYPE = 'text/html';
99
+ const EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';
100
+ const CLASS_NAME = 'output_bokeh rendered_html';
101
+
102
+ /**
103
+ * Render data to the DOM node
104
+ */
105
+ function render(props, node) {
106
+ const script = document.createElement("script");
107
+ node.appendChild(script);
108
+ }
109
+
110
+ /**
111
+ * Handle when an output is cleared or removed
112
+ */
113
+ function handleClearOutput(event, handle) {
114
+ const cell = handle.cell;
115
+
116
+ const id = cell.output_area._bokeh_element_id;
117
+ const server_id = cell.output_area._bokeh_server_id;
118
+ // Clean up Bokeh references
119
+ if (id != null && id in Bokeh.index) {
120
+ Bokeh.index[id].model.document.clear();
121
+ delete Bokeh.index[id];
122
+ }
123
+
124
+ if (server_id !== undefined) {
125
+ // Clean up Bokeh references
126
+ const cmd_clean = "from bokeh.io.state import curstate; print(curstate().uuid_to_server['" + server_id + "'].get_sessions()[0].document.roots[0]._id)";
127
+ cell.notebook.kernel.execute(cmd_clean, {
128
+ iopub: {
129
+ output: function(msg) {
130
+ const id = msg.content.text.trim();
131
+ if (id in Bokeh.index) {
132
+ Bokeh.index[id].model.document.clear();
133
+ delete Bokeh.index[id];
134
+ }
135
+ }
136
+ }
137
+ });
138
+ // Destroy server and session
139
+ const cmd_destroy = "import bokeh.io.notebook as ion; ion.destroy_server('" + server_id + "')";
140
+ cell.notebook.kernel.execute(cmd_destroy);
141
+ }
142
+ }
143
+
144
+ /**
145
+ * Handle when a new output is added
146
+ */
147
+ function handleAddOutput(event, handle) {
148
+ const output_area = handle.output_area;
149
+ const output = handle.output;
150
+
151
+ // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only
152
+ if ((output.output_type != "display_data") || (!Object.prototype.hasOwnProperty.call(output.data, EXEC_MIME_TYPE))) {
153
+ return
154
+ }
155
+
156
+ const toinsert = output_area.element.find("." + CLASS_NAME.split(' ')[0]);
157
+
158
+ if (output.metadata[EXEC_MIME_TYPE]["id"] !== undefined) {
159
+ toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];
160
+ // store reference to embed id on output_area
161
+ output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE]["id"];
162
+ }
163
+ if (output.metadata[EXEC_MIME_TYPE]["server_id"] !== undefined) {
164
+ const bk_div = document.createElement("div");
165
+ bk_div.innerHTML = output.data[HTML_MIME_TYPE];
166
+ const script_attrs = bk_div.children[0].attributes;
167
+ for (let i = 0; i < script_attrs.length; i++) {
168
+ toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);
169
+ toinsert[toinsert.length - 1].firstChild.textContent = bk_div.children[0].textContent
170
+ }
171
+ // store reference to server id on output_area
172
+ output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE]["server_id"];
173
+ }
174
+ }
175
+
176
+ function register_renderer(events, OutputArea) {
177
+
178
+ function append_mime(data, metadata, element) {
179
+ // create a DOM node to render to
180
+ const toinsert = this.create_output_subarea(
181
+ metadata,
182
+ CLASS_NAME,
183
+ EXEC_MIME_TYPE
184
+ );
185
+ this.keyboard_manager.register_events(toinsert);
186
+ // Render to node
187
+ const props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};
188
+ render(props, toinsert[toinsert.length - 1]);
189
+ element.append(toinsert);
190
+ return toinsert
191
+ }
192
+
193
+ /* Handle when an output is cleared or removed */
194
+ events.on('clear_output.CodeCell', handleClearOutput);
195
+ events.on('delete.Cell', handleClearOutput);
196
+
197
+ /* Handle when a new output is added */
198
+ events.on('output_added.OutputArea', handleAddOutput);
199
+
200
+ /**
201
+ * Register the mime type and append_mime function with output_area
202
+ */
203
+ OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {
204
+ /* Is output safe? */
205
+ safe: true,
206
+ /* Index of renderer in `output_area.display_order` */
207
+ index: 0
208
+ });
209
+ }
210
+
211
+ // register the mime type if in Jupyter Notebook environment and previously unregistered
212
+ if (root.Jupyter !== undefined) {
213
+ const events = require('base/js/events');
214
+ const OutputArea = require('notebook/js/outputarea').OutputArea;
215
+
216
+ if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {
217
+ register_renderer(events, OutputArea);
218
+ }
219
+ }
220
+ if (typeof (root._bokeh_timeout) === "undefined" || force === true) {
221
+ root._bokeh_timeout = Date.now() + 5000;
222
+ root._bokeh_failed_load = false;
223
+ }
224
+
225
+ const NB_LOAD_WARNING = {'data': {'text/html':
226
+ "<div style='background-color: #fdd'>\n"+
227
+ "<p>\n"+
228
+ "BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \n"+
229
+ "may be due to a slow or bad network connection. Possible fixes:\n"+
230
+ "</p>\n"+
231
+ "<ul>\n"+
232
+ "<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\n"+
233
+ "<li>use INLINE resources instead, as so:</li>\n"+
234
+ "</ul>\n"+
235
+ "<code>\n"+
236
+ "from bokeh.resources import INLINE\n"+
237
+ "output_notebook(resources=INLINE)\n"+
238
+ "</code>\n"+
239
+ "</div>"}};
240
+
241
+ function display_loaded() {
242
+ const el = document.getElementById("1002");
243
+ if (el != null) {
244
+ el.textContent = "BokehJS is loading...";
245
+ }
246
+ if (root.Bokeh !== undefined) {
247
+ if (el != null) {
248
+ el.textContent = "BokehJS " + root.Bokeh.version + " successfully loaded.";
249
+ }
250
+ } else if (Date.now() < root._bokeh_timeout) {
251
+ setTimeout(display_loaded, 100)
252
+ }
253
+ }
254
+
255
+ function run_callbacks() {
256
+ try {
257
+ root._bokeh_onload_callbacks.forEach(function(callback) {
258
+ if (callback != null)
259
+ callback();
260
+ });
261
+ } finally {
262
+ delete root._bokeh_onload_callbacks
263
+ }
264
+ console.debug("Bokeh: all callbacks have finished");
265
+ }
266
+
267
+ function load_libs(css_urls, js_urls, callback) {
268
+ if (css_urls == null) css_urls = [];
269
+ if (js_urls == null) js_urls = [];
270
+
271
+ root._bokeh_onload_callbacks.push(callback);
272
+ if (root._bokeh_is_loading > 0) {
273
+ console.debug("Bokeh: BokehJS is being loaded, scheduling callback at", now());
274
+ return null;
275
+ }
276
+ if (js_urls == null || js_urls.length === 0) {
277
+ run_callbacks();
278
+ return null;
279
+ }
280
+ console.debug("Bokeh: BokehJS not loaded, scheduling load and callback at", now());
281
+ root._bokeh_is_loading = css_urls.length + js_urls.length;
282
+
283
+ function on_load() {
284
+ root._bokeh_is_loading--;
285
+ if (root._bokeh_is_loading === 0) {
286
+ console.debug("Bokeh: all BokehJS libraries/stylesheets loaded");
287
+ run_callbacks()
288
+ }
289
+ }
290
+
291
+ function on_error(url) {
292
+ console.error("failed to load " + url);
293
+ }
294
+
295
+ for (let i = 0; i < css_urls.length; i++) {
296
+ const url = css_urls[i];
297
+ const element = document.createElement("link");
298
+ element.onload = on_load;
299
+ element.onerror = on_error.bind(null, url);
300
+ element.rel = "stylesheet";
301
+ element.type = "text/css";
302
+ element.href = url;
303
+ console.debug("Bokeh: injecting link tag for BokehJS stylesheet: ", url);
304
+ document.body.appendChild(element);
305
+ }
306
+
307
+ for (let i = 0; i < js_urls.length; i++) {
308
+ const url = js_urls[i];
309
+ const element = document.createElement('script');
310
+ element.onload = on_load;
311
+ element.onerror = on_error.bind(null, url);
312
+ element.async = false;
313
+ element.src = url;
314
+ console.debug("Bokeh: injecting script tag for BokehJS library: ", url);
315
+ document.head.appendChild(element);
316
+ }
317
+ };
318
+
319
+ function inject_raw_css(css) {
320
+ const element = document.createElement("style");
321
+ element.appendChild(document.createTextNode(css));
322
+ document.body.appendChild(element);
323
+ }
324
+
325
+ 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"];
326
+ const css_urls = [];
327
+
328
+ const inline_js = [ function(Bokeh) {
329
+ Bokeh.set_log_level("info");
330
+ },
331
+ function(Bokeh) {
332
+ }
333
+ ];
334
+
335
+ function run_inline_js() {
336
+ if (root.Bokeh !== undefined || force === true) {
337
+ for (let i = 0; i < inline_js.length; i++) {
338
+ inline_js[i].call(root, root.Bokeh);
339
+ }
340
+ if (force === true) {
341
+ display_loaded();
342
+ }} else if (Date.now() < root._bokeh_timeout) {
343
+ setTimeout(run_inline_js, 100);
344
+ } else if (!root._bokeh_failed_load) {
345
+ console.log("Bokeh: BokehJS failed to load within specified timeout.");
346
+ root._bokeh_failed_load = true;
347
+ } else if (force !== true) {
348
+ const cell = $(document.getElementById("1002")).parents('.cell').data().cell;
349
+ cell.output_area.append_execute_result(NB_LOAD_WARNING)
350
+ }
351
+ }
352
+
353
+ if (root._bokeh_is_loading === 0) {
354
+ console.debug("Bokeh: BokehJS loaded, going straight to plotting");
355
+ run_inline_js();
356
+ } else {
357
+ load_libs(css_urls, js_urls, function() {
358
+ console.debug("Bokeh: BokehJS plotting callback run at", now());
359
+ run_inline_js();
360
+ });
361
+ }
362
+ }(window));
363
+ </script>
364
+ </div>
365
+
366
+ </div>
367
+
368
+ </div>
369
+ </div>
370
+
371
+ </div>
372
+ <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
373
+ <div class="text_cell_render border-box-sizing rendered_html">
374
+ <p>The cell below defines a few data variables we will use in examples.</p>
375
+
376
+ </div>
377
+ </div>
378
+ </div>
379
+
380
+
381
+
382
+ <div class="
383
+ cell border-box-sizing code_cell rendered">
384
+ <div class="input">
385
+
386
+ <div class="inner_cell">
387
+ <div class="input_area">
388
+ <div class=" highlight hl-ipython3"><pre><span></span><span class="n">x</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="nb">range</span><span class="p">(</span><span class="mi">11</span><span class="p">))</span>
389
+ <span class="n">y0</span><span class="p">,</span> <span class="n">y1</span><span class="p">,</span> <span class="n">y2</span> <span class="o">=</span> <span class="n">x</span><span class="p">,</span> <span class="p">[</span><span class="mi">10</span><span class="o">-</span><span class="n">i</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">x</span><span class="p">],</span> <span class="p">[</span><span class="nb">abs</span><span class="p">(</span><span class="n">i</span><span class="o">-</span><span class="mi">5</span><span class="p">)</span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="n">x</span><span class="p">]</span>
390
+ </pre></div>
391
+
392
+ </div>
393
+ </div>
394
+ </div>
395
+
396
+ </div>
397
+ <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
398
+ <div class="text_cell_render border-box-sizing rendered_html">
399
+ <h3 id="Rows-and-Columns">Rows and Columns<a class="anchor-link" href="#Rows-and-Columns">&#182;</a></h3><p>The <code>bokeh.layouts</code> modules provides the <code>row</code> and <code>column</code> functions to arrange plot objects in vertical or horizontal layouts. Below is an example of three plots arranged in a row.</p>
400
+
401
+ </div>
402
+ </div>
403
+ </div>
404
+
405
+
406
+
407
+ <div class="
408
+ cell border-box-sizing code_cell rendered">
409
+ <div class="input">
410
+
411
+ <div class="inner_cell">
412
+ <div class="input_area">
413
+ <div class=" highlight hl-ipython3"><pre><span></span><span class="kn">from</span> <span class="nn">bokeh.layouts</span> <span class="kn">import</span> <span class="n">row</span>
414
+
415
+ <span class="c1"># create a new plot</span>
416
+ <span class="n">s1</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
417
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
418
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
419
+ <span class="p">)</span>
420
+ <span class="n">s1</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
421
+ <span class="n">x</span><span class="p">,</span>
422
+ <span class="n">y0</span><span class="p">,</span>
423
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
424
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;navy&quot;</span><span class="p">,</span>
425
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
426
+ <span class="p">)</span>
427
+
428
+ <span class="c1"># create a 2nd one</span>
429
+ <span class="n">s2</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
430
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
431
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
432
+ <span class="p">)</span>
433
+ <span class="n">s2</span><span class="o">.</span><span class="n">triangle</span><span class="p">(</span>
434
+ <span class="n">x</span><span class="p">,</span>
435
+ <span class="n">y1</span><span class="p">,</span>
436
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
437
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span>
438
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
439
+ <span class="p">)</span>
440
+
441
+ <span class="c1"># create the 3rd one</span>
442
+ <span class="n">s3</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
443
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
444
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
445
+ <span class="p">)</span>
446
+ <span class="n">s3</span><span class="o">.</span><span class="n">square</span><span class="p">(</span>
447
+ <span class="n">x</span><span class="p">,</span>
448
+ <span class="n">y2</span><span class="p">,</span>
449
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
450
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;olive&quot;</span><span class="p">,</span>
451
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
452
+ <span class="p">)</span>
453
+
454
+ <span class="c1"># show the results in a row</span>
455
+ <span class="n">show</span><span class="p">(</span>
456
+ <span class="n">row</span><span class="p">(</span><span class="n">s1</span><span class="p">,</span> <span class="n">s2</span><span class="p">,</span> <span class="n">s3</span><span class="p">)</span>
457
+ <span class="p">)</span>
458
+ </pre></div>
459
+
460
+ </div>
461
+ </div>
462
+ </div>
463
+
464
+ <div class="output_wrapper">
465
+ <div class="output">
466
+
467
+
468
+ <div class="output_area">
469
+
470
+
471
+
472
+
473
+ <div class="output_html rendered_html output_subarea ">
474
+
475
+ <div class="bk-root" id="0efc0463-8d97-4e66-b8c9-35a25fb6c72e" data-root-id="1114"></div>
476
+
477
+ </div>
478
+
479
+ </div>
480
+
481
+ <div class="output_area">
482
+
483
+
484
+
485
+
486
+
487
+
488
+ <div id="d3569564-03a1-40ab-90df-ffbfb725e507"></div>
489
+ <div class="output_subarea output_javascript ">
490
+ <script type="text/javascript">
491
+ var element = $('#d3569564-03a1-40ab-90df-ffbfb725e507');
492
+ (function(root) {
493
+ function embed_document(root) {
494
+ const docs_json = {"73b434f2-1d2a-4fc7-8663-db76463d36b9":{"defs":[],"roots":{"references":[{"attributes":{"children":[{"id":"1003"},{"id":"1040"},{"id":"1077"}]},"id":"1114","type":"Row"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.2},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.2},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1074","type":"Scatter"},{"attributes":{},"id":"1139","type":"UnionRenderers"},{"attributes":{},"id":"1061","type":"ResetTool"},{"attributes":{},"id":"1094","type":"PanTool"},{"attributes":{},"id":"1062","type":"HelpTool"},{"attributes":{},"id":"1098","type":"ResetTool"},{"attributes":{},"id":"1140","type":"Selection"},{"attributes":{},"id":"1095","type":"WheelZoomTool"},{"attributes":{"coordinates":null,"data_source":{"id":"1108"},"glyph":{"id":"1109"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1111"},"nonselection_glyph":{"id":"1110"},"view":{"id":"1113"}},"id":"1112","type":"GlyphRenderer"},{"attributes":{"overlay":{"id":"1100"}},"id":"1096","type":"BoxZoomTool"},{"attributes":{},"id":"1097","type":"SaveTool"},{"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":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1111","type":"Scatter"},{"attributes":{"coordinates":null,"group":null},"id":"1115","type":"Title"},{"attributes":{},"id":"1142","type":"UnionRenderers"},{"attributes":{"tools":[{"id":"1057"},{"id":"1058"},{"id":"1059"},{"id":"1060"},{"id":"1061"},{"id":"1062"}]},"id":"1064","type":"Toolbar"},{"attributes":{},"id":"1143","type":"Selection"},{"attributes":{},"id":"1099","type":"HelpTool"},{"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":"1063","type":"BoxAnnotation"},{"attributes":{"source":{"id":"1108"}},"id":"1113","type":"CDSView"},{"attributes":{},"id":"1146","type":"Selection"},{"attributes":{"coordinates":null,"data_source":{"id":"1071"},"glyph":{"id":"1072"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1074"},"nonselection_glyph":{"id":"1073"},"view":{"id":"1076"}},"id":"1075","type":"GlyphRenderer"},{"attributes":{"tools":[{"id":"1094"},{"id":"1095"},{"id":"1096"},{"id":"1097"},{"id":"1098"},{"id":"1099"}]},"id":"1101","type":"Toolbar"},{"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":{"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":"1100","type":"BoxAnnotation"},{"attributes":{"source":{"id":"1034"}},"id":"1039","type":"CDSView"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[10,9,8,7,6,5,4,3,2,1,0]},"selected":{"id":"1143"},"selection_policy":{"id":"1142"}},"id":"1071","type":"ColumnDataSource"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"olive"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"olive"},"line_alpha":{"value":0.5},"line_color":{"value":"olive"},"marker":{"value":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1109","type":"Scatter"},{"attributes":{"source":{"id":"1071"}},"id":"1076","type":"CDSView"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.1},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.1},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1036","type":"Circle"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.5},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1035","type":"Circle"},{"attributes":{},"id":"1080","type":"DataRange1d"},{"attributes":{},"id":"1122","type":"BasicTickFormatter"},{"attributes":{},"id":"1078","type":"DataRange1d"},{"attributes":{"axis":{"id":"1049"},"coordinates":null,"group":null,"ticker":null},"id":"1052","type":"Grid"},{"attributes":{},"id":"1125","type":"BasicTickFormatter"},{"attributes":{},"id":"1087","type":"BasicTicker"},{"attributes":{"coordinates":null,"group":null},"id":"1117","type":"Title"},{"attributes":{},"id":"1082","type":"LinearScale"},{"attributes":{"coordinates":null,"group":null},"id":"1119","type":"Title"},{"attributes":{"below":[{"id":"1012"}],"center":[{"id":"1015"},{"id":"1019"}],"height":250,"left":[{"id":"1016"}],"renderers":[{"id":"1038"}],"title":{"id":"1115"},"toolbar":{"id":"1027"},"width":250,"x_range":{"id":"1004"},"x_scale":{"id":"1008"},"y_range":{"id":"1006"},"y_scale":{"id":"1010"}},"id":"1003","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1084","type":"LinearScale"},{"attributes":{},"id":"1126","type":"AllLabels"},{"attributes":{},"id":"1123","type":"AllLabels"},{"attributes":{"coordinates":null,"formatter":{"id":"1137"},"group":null,"major_label_policy":{"id":"1138"},"ticker":{"id":"1087"}},"id":"1086","type":"LinearAxis"},{"attributes":{},"id":"1128","type":"BasicTickFormatter"},{"attributes":{"axis":{"id":"1086"},"coordinates":null,"group":null,"ticker":null},"id":"1089","type":"Grid"},{"attributes":{},"id":"1129","type":"AllLabels"},{"attributes":{},"id":"1131","type":"BasicTickFormatter"},{"attributes":{},"id":"1091","type":"BasicTicker"},{"attributes":{"below":[{"id":"1049"}],"center":[{"id":"1052"},{"id":"1056"}],"height":250,"left":[{"id":"1053"}],"renderers":[{"id":"1075"}],"title":{"id":"1117"},"toolbar":{"id":"1064"},"width":250,"x_range":{"id":"1041"},"x_scale":{"id":"1045"},"y_range":{"id":"1043"},"y_scale":{"id":"1047"}},"id":"1040","subtype":"Figure","type":"Plot"},{"attributes":{"coordinates":null,"formatter":{"id":"1134"},"group":null,"major_label_policy":{"id":"1135"},"ticker":{"id":"1091"}},"id":"1090","type":"LinearAxis"},{"attributes":{},"id":"1006","type":"DataRange1d"},{"attributes":{},"id":"1132","type":"AllLabels"},{"attributes":{},"id":"1135","type":"AllLabels"},{"attributes":{},"id":"1004","type":"DataRange1d"},{"attributes":{},"id":"1010","type":"LinearScale"},{"attributes":{"axis":{"id":"1090"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1093","type":"Grid"},{"attributes":{},"id":"1137","type":"BasicTickFormatter"},{"attributes":{},"id":"1145","type":"UnionRenderers"},{"attributes":{},"id":"1134","type":"BasicTickFormatter"},{"attributes":{"coordinates":null,"formatter":{"id":"1125"},"group":null,"major_label_policy":{"id":"1126"},"ticker":{"id":"1013"}},"id":"1012","type":"LinearAxis"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[5,4,3,2,1,0,1,2,3,4,5]},"selected":{"id":"1146"},"selection_policy":{"id":"1145"}},"id":"1108","type":"ColumnDataSource"},{"attributes":{},"id":"1138","type":"AllLabels"},{"attributes":{},"id":"1008","type":"LinearScale"},{"attributes":{},"id":"1013","type":"BasicTicker"},{"attributes":{"axis":{"id":"1012"},"coordinates":null,"group":null,"ticker":null},"id":"1015","type":"Grid"},{"attributes":{},"id":"1017","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1122"},"group":null,"major_label_policy":{"id":"1123"},"ticker":{"id":"1017"}},"id":"1016","type":"LinearAxis"},{"attributes":{},"id":"1058","type":"WheelZoomTool"},{"attributes":{"axis":{"id":"1016"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1019","type":"Grid"},{"attributes":{"coordinates":null,"formatter":{"id":"1131"},"group":null,"major_label_policy":{"id":"1132"},"ticker":{"id":"1050"}},"id":"1049","type":"LinearAxis"},{"attributes":{},"id":"1047","type":"LinearScale"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.5},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1072","type":"Scatter"},{"attributes":{},"id":"1057","type":"PanTool"},{"attributes":{"tools":[{"id":"1020"},{"id":"1021"},{"id":"1022"},{"id":"1023"},{"id":"1024"},{"id":"1025"}]},"id":"1027","type":"Toolbar"},{"attributes":{"below":[{"id":"1086"}],"center":[{"id":"1089"},{"id":"1093"}],"height":250,"left":[{"id":"1090"}],"renderers":[{"id":"1112"}],"title":{"id":"1119"},"toolbar":{"id":"1101"},"width":250,"x_range":{"id":"1078"},"x_scale":{"id":"1082"},"y_range":{"id":"1080"},"y_scale":{"id":"1084"}},"id":"1077","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1020","type":"PanTool"},{"attributes":{},"id":"1041","type":"DataRange1d"},{"attributes":{},"id":"1024","type":"ResetTool"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[0,1,2,3,4,5,6,7,8,9,10]},"selected":{"id":"1140"},"selection_policy":{"id":"1139"}},"id":"1034","type":"ColumnDataSource"},{"attributes":{},"id":"1021","type":"WheelZoomTool"},{"attributes":{},"id":"1045","type":"LinearScale"},{"attributes":{"overlay":{"id":"1026"}},"id":"1022","type":"BoxZoomTool"},{"attributes":{},"id":"1043","type":"DataRange1d"},{"attributes":{},"id":"1023","type":"SaveTool"},{"attributes":{"overlay":{"id":"1063"}},"id":"1059","type":"BoxZoomTool"},{"attributes":{},"id":"1025","type":"HelpTool"},{"attributes":{"axis":{"id":"1053"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1056","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":"1026","type":"BoxAnnotation"},{"attributes":{},"id":"1054","type":"BasicTicker"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.1},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.1},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1073","type":"Scatter"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.2},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.2},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1037","type":"Circle"},{"attributes":{},"id":"1050","type":"BasicTicker"},{"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":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1110","type":"Scatter"},{"attributes":{},"id":"1060","type":"SaveTool"},{"attributes":{"coordinates":null,"formatter":{"id":"1128"},"group":null,"major_label_policy":{"id":"1129"},"ticker":{"id":"1054"}},"id":"1053","type":"LinearAxis"}],"root_ids":["1114"]},"title":"Bokeh Application","version":"2.4.3"}};
495
+ const render_items = [{"docid":"73b434f2-1d2a-4fc7-8663-db76463d36b9","root_ids":["1114"],"roots":{"1114":"0efc0463-8d97-4e66-b8c9-35a25fb6c72e"}}];
496
+ root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
497
+ }
498
+ if (root.Bokeh !== undefined) {
499
+ embed_document(root);
500
+ } else {
501
+ let attempts = 0;
502
+ const timer = setInterval(function(root) {
503
+ if (root.Bokeh !== undefined) {
504
+ clearInterval(timer);
505
+ embed_document(root);
506
+ } else {
507
+ attempts++;
508
+ if (attempts > 100) {
509
+ clearInterval(timer);
510
+ console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
511
+ }
512
+ }
513
+ }, 10, root)
514
+ }
515
+ })(window);
516
+ </script>
517
+ </div>
518
+
519
+ </div>
520
+
521
+ </div>
522
+ </div>
523
+
524
+ </div>
525
+ <div class="cell border-box-sizing text_cell rendered"><div class="inner_cell">
526
+ <div class="text_cell_render border-box-sizing rendered_html">
527
+ <h3 id="Grid-plots">Grid plots<a class="anchor-link" href="#Grid-plots">&#182;</a></h3><p>Bokeh also provides a <code>gridplot</code> layout in <code>bokeh.layouts</code> for arranging plots in a grid, as show in the example below.</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="kn">from</span> <span class="nn">bokeh.layouts</span> <span class="kn">import</span> <span class="n">gridplot</span>
542
+
543
+ <span class="c1"># create a new plot</span>
544
+ <span class="n">s1</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
545
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
546
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
547
+ <span class="p">)</span>
548
+ <span class="n">s1</span><span class="o">.</span><span class="n">circle</span><span class="p">(</span>
549
+ <span class="n">x</span><span class="p">,</span>
550
+ <span class="n">y0</span><span class="p">,</span>
551
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
552
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;navy&quot;</span><span class="p">,</span>
553
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
554
+ <span class="p">)</span>
555
+
556
+ <span class="c1"># # create a 2nd one</span>
557
+ <span class="n">s2</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
558
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
559
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
560
+ <span class="p">)</span>
561
+ <span class="n">s2</span><span class="o">.</span><span class="n">triangle</span><span class="p">(</span>
562
+ <span class="n">x</span><span class="p">,</span>
563
+ <span class="n">y1</span><span class="p">,</span>
564
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
565
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;firebrick&quot;</span><span class="p">,</span>
566
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
567
+ <span class="p">)</span>
568
+
569
+ <span class="c1"># create the 3rd one</span>
570
+ <span class="n">s3</span> <span class="o">=</span> <span class="n">figure</span><span class="p">(</span>
571
+ <span class="n">width</span><span class="o">=</span><span class="mi">250</span><span class="p">,</span>
572
+ <span class="n">plot_height</span><span class="o">=</span><span class="mi">250</span>
573
+ <span class="p">)</span>
574
+ <span class="n">s3</span><span class="o">.</span><span class="n">square</span><span class="p">(</span>
575
+ <span class="n">x</span><span class="p">,</span>
576
+ <span class="n">y2</span><span class="p">,</span>
577
+ <span class="n">size</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span>
578
+ <span class="n">color</span><span class="o">=</span><span class="s2">&quot;olive&quot;</span><span class="p">,</span>
579
+ <span class="n">alpha</span><span class="o">=</span><span class="mf">0.5</span>
580
+ <span class="p">)</span>
581
+
582
+ <span class="c1"># put all the plots in a gridplot</span>
583
+ <span class="n">p</span> <span class="o">=</span> <span class="n">gridplot</span><span class="p">(</span>
584
+ <span class="p">[</span>
585
+ <span class="p">[</span><span class="n">s1</span><span class="p">,</span> <span class="n">s2</span><span class="p">],</span>
586
+ <span class="p">[</span><span class="n">s3</span><span class="p">,</span> <span class="kc">None</span><span class="p">]</span>
587
+ <span class="p">],</span>
588
+ <span class="n">toolbar_location</span><span class="o">=</span><span class="kc">None</span>
589
+ <span class="p">)</span>
590
+
591
+ <span class="c1"># show the results</span>
592
+ <span class="n">show</span><span class="p">(</span><span class="n">p</span><span class="p">)</span>
593
+ </pre></div>
594
+
595
+ </div>
596
+ </div>
597
+ </div>
598
+
599
+ <div class="output_wrapper">
600
+ <div class="output">
601
+
602
+
603
+ <div class="output_area">
604
+
605
+
606
+
607
+
608
+ <div class="output_html rendered_html output_subarea ">
609
+
610
+ <div class="bk-root" id="e814ddc9-a4d2-4efa-a629-aeb5b5cec2e9" data-root-id="1460"></div>
611
+
612
+ </div>
613
+
614
+ </div>
615
+
616
+ <div class="output_area">
617
+
618
+
619
+
620
+
621
+
622
+
623
+ <div id="4d2ef43a-e6e4-4a50-8fbc-f6dde3b0d4a0"></div>
624
+ <div class="output_subarea output_javascript ">
625
+ <script type="text/javascript">
626
+ var element = $('#4d2ef43a-e6e4-4a50-8fbc-f6dde3b0d4a0');
627
+ (function(root) {
628
+ function embed_document(root) {
629
+ const docs_json = {"d9a8aea8-8b96-465f-bb3c-72e8eff4321c":{"defs":[],"roots":{"references":[{"attributes":{"children":[[{"id":"1313"},0,0],[{"id":"1350"},0,1],[{"id":"1387"},1,0]]},"id":"1460","type":"GridBox"},{"attributes":{},"id":"1409","type":"HelpTool"},{"attributes":{},"id":"1351","type":"DataRange1d"},{"attributes":{},"id":"1408","type":"ResetTool"},{"attributes":{"coordinates":null,"group":null},"id":"1424","type":"Title"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.1},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.1},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1346","type":"Circle"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.5},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1345","type":"Circle"},{"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":"1336","type":"BoxAnnotation"},{"attributes":{},"id":"1428","type":"AllLabels"},{"attributes":{"below":[{"id":"1322"}],"center":[{"id":"1325"},{"id":"1329"}],"height":250,"left":[{"id":"1326"}],"renderers":[{"id":"1348"}],"title":{"id":"1424"},"toolbar":{"id":"1337"},"toolbar_location":null,"width":250,"x_range":{"id":"1314"},"x_scale":{"id":"1318"},"y_range":{"id":"1316"},"y_scale":{"id":"1320"}},"id":"1313","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1353","type":"DataRange1d"},{"attributes":{"coordinates":null,"data_source":{"id":"1344"},"glyph":{"id":"1345"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1347"},"nonselection_glyph":{"id":"1346"},"view":{"id":"1349"}},"id":"1348","type":"GlyphRenderer"},{"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":"1410","type":"BoxAnnotation"},{"attributes":{"below":[{"id":"1396"}],"center":[{"id":"1399"},{"id":"1403"}],"height":250,"left":[{"id":"1400"}],"renderers":[{"id":"1422"}],"title":{"id":"1448"},"toolbar":{"id":"1411"},"toolbar_location":null,"width":250,"x_range":{"id":"1388"},"x_scale":{"id":"1392"},"y_range":{"id":"1390"},"y_scale":{"id":"1394"}},"id":"1387","subtype":"Figure","type":"Plot"},{"attributes":{"tools":[{"id":"1404"},{"id":"1405"},{"id":"1406"},{"id":"1407"},{"id":"1408"},{"id":"1409"}]},"id":"1411","type":"Toolbar"},{"attributes":{},"id":"1316","type":"DataRange1d"},{"attributes":{},"id":"1360","type":"BasicTicker"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"navy"},"hatch_alpha":{"value":0.2},"hatch_color":{"value":"navy"},"line_alpha":{"value":0.2},"line_color":{"value":"navy"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1347","type":"Circle"},{"attributes":{},"id":"1355","type":"LinearScale"},{"attributes":{},"id":"1314","type":"DataRange1d"},{"attributes":{},"id":"1433","type":"Selection"},{"attributes":{},"id":"1357","type":"LinearScale"},{"attributes":{"coordinates":null,"formatter":{"id":"1442"},"group":null,"major_label_policy":{"id":"1443"},"ticker":{"id":"1360"}},"id":"1359","type":"LinearAxis"},{"attributes":{},"id":"1323","type":"BasicTicker"},{"attributes":{},"id":"1430","type":"BasicTickFormatter"},{"attributes":{"axis":{"id":"1359"},"coordinates":null,"group":null,"ticker":null},"id":"1362","type":"Grid"},{"attributes":{},"id":"1432","type":"UnionRenderers"},{"attributes":{},"id":"1318","type":"LinearScale"},{"attributes":{},"id":"1364","type":"BasicTicker"},{"attributes":{"tools":[{"id":"1330"},{"id":"1331"},{"id":"1332"},{"id":"1333"},{"id":"1334"},{"id":"1335"}]},"id":"1337","type":"Toolbar"},{"attributes":{"coordinates":null,"formatter":{"id":"1439"},"group":null,"major_label_policy":{"id":"1440"},"ticker":{"id":"1364"}},"id":"1363","type":"LinearAxis"},{"attributes":{},"id":"1431","type":"AllLabels"},{"attributes":{},"id":"1427","type":"BasicTickFormatter"},{"attributes":{},"id":"1320","type":"LinearScale"},{"attributes":{"coordinates":null,"formatter":{"id":"1430"},"group":null,"major_label_policy":{"id":"1431"},"ticker":{"id":"1323"}},"id":"1322","type":"LinearAxis"},{"attributes":{"coordinates":null,"group":null},"id":"1436","type":"Title"},{"attributes":{"axis":{"id":"1322"},"coordinates":null,"group":null,"ticker":null},"id":"1325","type":"Grid"},{"attributes":{"axis":{"id":"1363"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1366","type":"Grid"},{"attributes":{},"id":"1439","type":"BasicTickFormatter"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.5},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1382","type":"Scatter"},{"attributes":{},"id":"1327","type":"BasicTicker"},{"attributes":{},"id":"1443","type":"AllLabels"},{"attributes":{"coordinates":null,"formatter":{"id":"1427"},"group":null,"major_label_policy":{"id":"1428"},"ticker":{"id":"1327"}},"id":"1326","type":"LinearAxis"},{"attributes":{},"id":"1442","type":"BasicTickFormatter"},{"attributes":{"fill_alpha":{"value":0.2},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.2},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.2},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1384","type":"Scatter"},{"attributes":{},"id":"1440","type":"AllLabels"},{"attributes":{"fill_alpha":{"value":0.1},"fill_color":{"value":"firebrick"},"hatch_alpha":{"value":0.1},"hatch_color":{"value":"firebrick"},"line_alpha":{"value":0.1},"line_color":{"value":"firebrick"},"marker":{"value":"triangle"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1383","type":"Scatter"},{"attributes":{},"id":"1444","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":"1373","type":"BoxAnnotation"},{"attributes":{},"id":"1367","type":"PanTool"},{"attributes":{"axis":{"id":"1326"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1329","type":"Grid"},{"attributes":{},"id":"1371","type":"ResetTool"},{"attributes":{},"id":"1445","type":"Selection"},{"attributes":{},"id":"1368","type":"WheelZoomTool"},{"attributes":{},"id":"1451","type":"BasicTickFormatter"},{"attributes":{"overlay":{"id":"1373"}},"id":"1369","type":"BoxZoomTool"},{"attributes":{"coordinates":null,"group":null},"id":"1448","type":"Title"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[0,1,2,3,4,5,6,7,8,9,10]},"selected":{"id":"1433"},"selection_policy":{"id":"1432"}},"id":"1344","type":"ColumnDataSource"},{"attributes":{},"id":"1370","type":"SaveTool"},{"attributes":{"below":[{"id":"1359"}],"center":[{"id":"1362"},{"id":"1366"}],"height":250,"left":[{"id":"1363"}],"renderers":[{"id":"1385"}],"title":{"id":"1436"},"toolbar":{"id":"1374"},"toolbar_location":null,"width":250,"x_range":{"id":"1351"},"x_scale":{"id":"1355"},"y_range":{"id":"1353"},"y_scale":{"id":"1357"}},"id":"1350","subtype":"Figure","type":"Plot"},{"attributes":{},"id":"1455","type":"AllLabels"},{"attributes":{},"id":"1330","type":"PanTool"},{"attributes":{},"id":"1372","type":"HelpTool"},{"attributes":{},"id":"1454","type":"BasicTickFormatter"},{"attributes":{},"id":"1334","type":"ResetTool"},{"attributes":{},"id":"1452","type":"AllLabels"},{"attributes":{},"id":"1331","type":"WheelZoomTool"},{"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":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1420","type":"Scatter"},{"attributes":{"overlay":{"id":"1336"}},"id":"1332","type":"BoxZoomTool"},{"attributes":{},"id":"1456","type":"UnionRenderers"},{"attributes":{},"id":"1333","type":"SaveTool"},{"attributes":{},"id":"1457","type":"Selection"},{"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":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1421","type":"Scatter"},{"attributes":{},"id":"1335","type":"HelpTool"},{"attributes":{"tools":[{"id":"1367"},{"id":"1368"},{"id":"1369"},{"id":"1370"},{"id":"1371"},{"id":"1372"}]},"id":"1374","type":"Toolbar"},{"attributes":{"source":{"id":"1381"}},"id":"1386","type":"CDSView"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[10,9,8,7,6,5,4,3,2,1,0]},"selected":{"id":"1445"},"selection_policy":{"id":"1444"}},"id":"1381","type":"ColumnDataSource"},{"attributes":{"source":{"id":"1418"}},"id":"1423","type":"CDSView"},{"attributes":{},"id":"1390","type":"DataRange1d"},{"attributes":{"coordinates":null,"data_source":{"id":"1381"},"glyph":{"id":"1382"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1384"},"nonselection_glyph":{"id":"1383"},"view":{"id":"1386"}},"id":"1385","type":"GlyphRenderer"},{"attributes":{},"id":"1388","type":"DataRange1d"},{"attributes":{},"id":"1392","type":"LinearScale"},{"attributes":{},"id":"1394","type":"LinearScale"},{"attributes":{},"id":"1397","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1454"},"group":null,"major_label_policy":{"id":"1455"},"ticker":{"id":"1397"}},"id":"1396","type":"LinearAxis"},{"attributes":{"axis":{"id":"1396"},"coordinates":null,"group":null,"ticker":null},"id":"1399","type":"Grid"},{"attributes":{},"id":"1401","type":"BasicTicker"},{"attributes":{"coordinates":null,"formatter":{"id":"1451"},"group":null,"major_label_policy":{"id":"1452"},"ticker":{"id":"1401"}},"id":"1400","type":"LinearAxis"},{"attributes":{"source":{"id":"1344"}},"id":"1349","type":"CDSView"},{"attributes":{"axis":{"id":"1400"},"coordinates":null,"dimension":1,"group":null,"ticker":null},"id":"1403","type":"Grid"},{"attributes":{"fill_alpha":{"value":0.5},"fill_color":{"value":"olive"},"hatch_alpha":{"value":0.5},"hatch_color":{"value":"olive"},"line_alpha":{"value":0.5},"line_color":{"value":"olive"},"marker":{"value":"square"},"size":{"value":10},"x":{"field":"x"},"y":{"field":"y"}},"id":"1419","type":"Scatter"},{"attributes":{"data":{"x":[0,1,2,3,4,5,6,7,8,9,10],"y":[5,4,3,2,1,0,1,2,3,4,5]},"selected":{"id":"1457"},"selection_policy":{"id":"1456"}},"id":"1418","type":"ColumnDataSource"},{"attributes":{"coordinates":null,"data_source":{"id":"1418"},"glyph":{"id":"1419"},"group":null,"hover_glyph":null,"muted_glyph":{"id":"1421"},"nonselection_glyph":{"id":"1420"},"view":{"id":"1423"}},"id":"1422","type":"GlyphRenderer"},{"attributes":{},"id":"1404","type":"PanTool"},{"attributes":{},"id":"1405","type":"WheelZoomTool"},{"attributes":{"overlay":{"id":"1410"}},"id":"1406","type":"BoxZoomTool"},{"attributes":{},"id":"1407","type":"SaveTool"}],"root_ids":["1460"]},"title":"Bokeh Application","version":"2.4.3"}};
630
+ const render_items = [{"docid":"d9a8aea8-8b96-465f-bb3c-72e8eff4321c","root_ids":["1460"],"roots":{"1460":"e814ddc9-a4d2-4efa-a629-aeb5b5cec2e9"}}];
631
+ root.Bokeh.embed.embed_items_notebook(docs_json, render_items);
632
+ }
633
+ if (root.Bokeh !== undefined) {
634
+ embed_document(root);
635
+ } else {
636
+ let attempts = 0;
637
+ const timer = setInterval(function(root) {
638
+ if (root.Bokeh !== undefined) {
639
+ clearInterval(timer);
640
+ embed_document(root);
641
+ } else {
642
+ attempts++;
643
+ if (attempts > 100) {
644
+ clearInterval(timer);
645
+ console.log("Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing");
646
+ }
647
+ }
648
+ }, 10, root)
649
+ }
650
+ })(window);
651
+ </script>
652
+ </div>
653
+
654
+ </div>
655
+
656
+ </div>
657
+ </div>
658
+
659
+ </div>
660
+