liveBook · Manning

St.column_config

As explained in Build Python Web Apps with Streamlit

st.column_config is Streamlit's API for configuring the behavior and presentation of columns in data editor and dataframe views.

st.column_config controls how columns behave and appear in Streamlit data editors and dataframes. It turns free-form cells into useful controls such as required selection lists, checkboxes, date/time pickers, links, charts, lists, or progress bars. section 9.7.1 section 9.8

Add controlled settings to a data editor

Pass a column_config mapping to st.data_editor. Each SelectboxColumn limits users to approved choices and required=True prevents an empty value: st.data_editor( default_settings, column_config={ "Quizmaster": st.column_config.SelectboxColumn( options=["Alex Trebek", "Eminem", "Gollum"], required=True ), "Difficulty": st.column_config.SelectboxColumn( options=["Easy", "Medium", "Hard"], required=True ) }, num_rows="fixed", key="settings_editor" ) The resulting settings editor presents dropdowns instead of requiring users to type values. Other configurations include CheckboxColumn, DatetimeColumn, LinkColumn, AreaChartColumn, BarChartColumn, ListColumn, and ProgressColumn. section 9.7.1

How Build Python Web Apps with Streamlit covers it

How deep it goes
Explains configuration through a working select-box example, required fields, fixed rows, and a catalog of column types.
Examples
Uses Quizmaster and Difficulty settings with approved options, required selections, fixed rows, and a settings popover.
What it assumes
Assumes familiarity with Streamlit data editors and dataframes while demonstrating column configuration through a complete beginner-oriented settings example.
What you can do after
Apply it via st.data_editor to build constrained settings tables with selectable, required column values.
How it connects
Connects st.column_config with st.data_editor, st.dataframe, SelectboxColumn, CheckboxColumn, DatetimeColumn, LinkColumn, and chart columns.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Build Python Web Apps with Streamlit. The section links point to the parts of the book it draws on.