diff --git a/notebooks/06_data_sources.ipynb b/notebooks/06_data_sources.ipynb index 9b6de1f..e1fdeb7 100644 --- a/notebooks/06_data_sources.ipynb +++ b/notebooks/06_data_sources.ipynb @@ -295,34 +295,33 @@ "source": [ "from bokeh.plotting import figure, show\n", "from bokeh.models import ColumnDataSource\n", + "from bokeh.palettes import HighContrast3\n", "\n", "# create ColumnDataSource based on DataFrame from the demo data set\n", "source = ColumnDataSource(monthly_values_df)\n", "\n", "# set up the figure\n", "p = figure(\n", - " height=300,\n", " x_range=source.data[\"month_name\"], # use the sequence of strings from the \"month_name\" column as categories\n", + " width=750,\n", ")\n", "\n", - "# create a line renderer with data from the \"freight\" column\n", - "p.vbar(\n", - " x=\"month_name\", # use the sequence of strings from the \"month_name\" column as categories\n", - " top=\"freight\", # use the sequence of values from the \"freight\" column as values\n", - " width=0.9,\n", - " source=source,\n", - ")\n", + "# plot values from these columns\n", + "columns = [\"freight\", \"passengers\", \"mail\"]\n", "\n", - "# create a second line renderer with data from a different column\n", - "p.vbar(\n", - " x=\"month_name\", # use the sequence of strings from the \"month_name\" column as categories\n", - " top=\"passengers\", # use the sequence of values from the \"passengers\" column as values\n", - " # top=\"mail\", # 🔁 use this line instead of the one above to use data from the \"mail\" column\n", + "# use vbar_stack that stacks multiple vbar renderers\n", + "p.vbar_stack(\n", + " columns,\n", + " x=\"month_name\",\n", " width=0.9,\n", - " color=\"tomato\",\n", " source=source,\n", + " color=HighContrast3, # use the HighContrast color palette\n", + " legend_label=columns,\n", ")\n", "\n", + "# move legend to left, to avoid overlap with bars\n", + "p.legend.location = \"top_left\"\n", + "\n", "show(p)" ] },