Display a bar chart.

This is just syntax-sugar around st.altair_chart. The main difference is this command uses the data's own column and indices to figure out the chart's spec. As a result this is easier to use for many "just plot this" scenarios, while being less customizable.

If st.bar_chart does not guess the data specification correctly, try specifying your desired chart using st.altair_chart.

Function signature

st.bar_chart(data=None, width=0, height=0, use_container_width=True)


data (pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, or dict)

Data to be plotted. Pyarrow tables are not supported by Streamlit's legacy DataFrame serialization (i.e. with config.dataFrameSerialization = "legacy"). To use pyarrow tables, please enable pyarrow by changing the config setting, config.dataFrameSerialization = "arrow".

width (int)

The chart width in pixels. If 0, selects the width automatically.

height (int)

The chart height in pixels. If 0, selects the height automatically.

use_container_width (bool)

If True, set the chart width to the column width. This takes precedence over the width argument.

Was this page helpful?

editSuggest edits

Still have questions?

Our forums are full of helpful information and Streamlit experts.