From cf99f6bde5e41fca4dffc5816a126e1125fc76ab Mon Sep 17 00:00:00 2001 From: Debbie Matthews Date: Fri, 6 Dec 2024 19:04:53 -0800 Subject: [PATCH] Remove versions 1.13 - 1.19 (#1198) --- python/streamlit.json | 23546 ---------------------------------------- 1 file changed, 23546 deletions(-) diff --git a/python/streamlit.json b/python/streamlit.json index 126362f6e..def43f15c 100644 --- a/python/streamlit.json +++ b/python/streamlit.json @@ -3600,23552 +3600,6 @@ "returns": [] } }, - "1.13.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L396" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L229" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0)", - "example": "
\n
\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/media.py#L42" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(50, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L312" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container(*args, **kwargs)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/bokeh_chart.py#L34" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "example": "
\n
\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/button.py#L62" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/runtime/legacy_caching/caching.py#L398" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/camera_input.py#L122" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "example": "
\n
\nst.caption('This is a string that explains something above.')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n

Also note that `unsafe_allow_html` is a temporary measure and may be\nremoved from Streamlit at any time.

\n

If you decide to turn on HTML anyway, we ask you to please tell us your\nexact use case here:\nhttps://discuss.streamlit.io/t/96 .

\n

This will help us come up with safe APIs that allow you to do what you\nwant.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/markdown.py#L118" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False)", - "example": "
\n
\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/checkbox.py#L50" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/markdown.py#L85" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/color_picker.py#L58" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/layouts.py#L74" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L38" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nd = st.date_input(\n    "When's your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/time_widgets.py#L362" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/button.py#L130" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/exception.py#L47" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/layouts.py#L287" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L339" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, persist=None, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None)", - "example": "
\n
\n@st.experimental_memo\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.experimental_memo(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a memoized function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A memoized function's cache can be procedurally cleared:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to memoize function executions.

\n

Memoized data is stored in "pickled" form, which means that the return\nvalue of a memoized function must be pickleable.

\n

Each caller of a memoized function gets its own copy of the cached data.

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to memoize. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "str or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Currently, the only\nvalid value is "disk", which will persist to the local disk.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe cached function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/runtime/caching/memo_decorator.py#L230" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L523" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L370" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n\n
\n", - "example": "
\n
\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L257" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func=None, *, show_spinner=True, suppress_st_warning=False)", - "example": "
\n
\n@st.experimental_singleton\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a singleton function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A singleton function's cache can be procedurally cleared:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to store singleton objects.

\n

Each singleton object is shared across all users connected to the app.\nSingleton objects must be thread-safe, because they can be accessed from\nmultiple threads concurrently.

\n

(If thread-safety is an issue, consider using st.session_state to\nstore per-session singleton objects instead.)

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the singleton. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the singleton is being created.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe singleton function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/runtime/caching/singleton_decorator.py#L152" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/file_uploader.py#L212" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/form.py#L113" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None" - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/form.py#L202" - }, - "streamlit.gather_metrics": { - "name": "gather_metrics", - "signature": "st.gather_metrics(callable)" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/config.py#L90" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nimport graphviz as graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "example": "
\n
\nst.header('This is a header')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/heading.py#L26" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/doc_string.py#L43" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nfrom PIL import Image\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/image.py#L61" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/alert.py#L98" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/json.py#L41" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/markdown.py#L164" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L146" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, numpy.ndarray, Iterable, dict,", - "is_optional": false, - "description": "

or None\nThe data to be plotted. Must have columns called 'lat', 'lon',\n'latitude', or 'longitude'.

\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/map.py#L75" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "example": "
\n
\nst.markdown('Streamlit is **_really_ cool**.')\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n

Also note that ``unsafe_allow_html`` is a temporary measure and may\nbe removed from Streamlit at any time.

\n

If you decide to turn on HTML anyway, we ask you to please tell us\nyour exact use case here:

\n

https://discuss.streamlit.io/t/96

\n

This will help us come up with safe APIs that allow you to do what\nyou want.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None)", - "example": "
\n
\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or Title for the metric

\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/metric.py#L43" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/multiselect.py#L127" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/number_input.py#L72" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:

\n
\nimport streamlit as st\nimport plotly.figure_factory as ff\nimport numpy as np\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/plotly_chart.py#L68" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport time\n\nmy_bar = st.progress(0)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/progress.py#L31" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\ndf = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=df,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=df,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/pyplot.py#L37" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\ngenre = st.radio(\n    "What's your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn't select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/radio.py#L77" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": null - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/select_slider.py#L107" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/selectbox.py#L80" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L217" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/commands/page_config.py#L115" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nfrom datetime import time\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nfrom datetime import datetime\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/slider.py#L178" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L401" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/__init__.py#L503" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "example": "
\n
\nst.subheader('This is a subheader')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/heading.py#L53" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/alert.py#L129" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L112" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The string is used as the name of the tab.\nThe first tab is selected by default.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/layouts.py#L199" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/text_widgets.py#L250" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/text_widgets.py#L70" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/time_widgets.py#L218" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "example": "
\n
\nst.title('This is a title')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/heading.py#L81" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, **kwargs)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(df, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L443" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/media.py#L81" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/alert.py#L68" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nwrite('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression and emoji shortcodes.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n

Also note that `unsafe_allow_html` is a temporary measure and may be\nremoved from Streamlit at any time.

\n

If you decide to turn on HTML anyway, we ask you to please tell us your\nexact use case here:\nhttps://discuss.streamlit.io/t/96 .

\n

This will help us come up with safe APIs that allow you to do what you\nwant.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/write.py#L44" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk memo caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/runtime/caching/memo_decorator.py#L376" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all singleton caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/runtime/caching/singleton_decorator.py#L251" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/components/v1/components.py#L245" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/elements/dataframe_selector.py#L513" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.13.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.14.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L395" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L228" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0)", - "example": "
\n
\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/media.py#L41" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(50, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L311" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container(*args, **kwargs)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "example": "
\n
\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/runtime/legacy_caching/caching.py#L400" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "example": "
\n
\nst.caption('This is a string that explains something above.')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/markdown.py#L107" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False)", - "example": "
\n
\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/checkbox.py#L48" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/markdown.py#L74" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/layouts.py#L74" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L37" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nd = st.date_input(\n    "When's your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/time_widgets.py#L356" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/button.py#L143" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/layouts.py#L287" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, persist=None, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None)", - "example": "
\n
\n@st.experimental_memo\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.experimental_memo(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a memoized function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A memoized function's cache can be procedurally cleared:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to memoize function executions.

\n

Memoized data is stored in "pickled" form, which means that the return\nvalue of a memoized function must be pickleable.

\n

Each caller of a memoized function gets its own copy of the cached data.

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to memoize. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "str or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Currently, the only\nvalid value is "disk", which will persist to the local disk.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe cached function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/runtime/caching/memo_decorator.py#L225" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/commands/execution_control.py#L45" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/commands/query_params.py#L54" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func=None, *, show_spinner=True, suppress_st_warning=False)", - "example": "
\n
\n@st.experimental_singleton\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a singleton function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A singleton function's cache can be procedurally cleared:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to store singleton objects.

\n

Each singleton object is shared across all users connected to the app.\nSingleton objects must be thread-safe, because they can be accessed from\nmultiple threads concurrently.

\n

(If thread-safety is an issue, consider using st.session_state to\nstore per-session singleton objects instead.)

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the singleton. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the singleton is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit functions from within\nthe singleton function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/runtime/caching/singleton_decorator.py#L151" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/form.py#L116" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None" - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/form.py#L205" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/config.py#L129" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "example": "
\n
\nst.header('This is a header')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/heading.py#L27" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nfrom PIL import Image\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/image.py#L66" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/alert.py#L97" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/markdown.py#L143" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L145" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, numpy.ndarray, Iterable, dict,", - "is_optional": false, - "description": "

or None\nThe data to be plotted. Must have columns called 'lat', 'lon',\n'latitude', or 'longitude'.

\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/map.py#L75" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "example": "
\n
\nst.markdown('Streamlit is **_really_ cool**.')\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None)", - "example": "
\n
\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or Title for the metric

\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/metric.py#L44" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:

\n
\nimport streamlit as st\nimport plotly.figure_factory as ff\nimport numpy as np\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/plotly_chart.py#L69" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport time\n\nmy_bar = st.progress(0)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/progress.py#L32" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\ndf = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=df,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=df,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\ngenre = st.radio(\n    "What's your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn't select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": null - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/config.py#L90" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nfrom datetime import time\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nfrom datetime import datetime\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "example": "
\n
\nst.subheader('This is a subheader')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/heading.py#L54" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/alert.py#L127" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L111" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The string is used as the name of the tab.\nThe first tab is selected by default.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/layouts.py#L199" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/text_widgets.py#L249" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nFor accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "example": "
\n
\nst.title('This is a title')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/heading.py#L82" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, **kwargs)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(df, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L442" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/media.py#L80" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/alert.py#L68" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nwrite('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression and emoji shortcodes.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk memo caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/runtime/caching/memo_decorator.py#L378" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all singleton caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/runtime/caching/singleton_decorator.py#L251" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/elements/dataframe_selector.py#L512" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.14.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.15.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False, theme=None)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(chart_data).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L412" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L239" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0, *, sample_rate=None)", - "example": "
\n
\nimport streamlit as st\nimport numpy as np\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n\nsample_rate = 44100  # 44100 samples per second\nseconds = 2  # Note duration of 2 seconds\nfrequency_la = 440  # Our played note will be 440 Hz\n# Generate array with seconds*sample_rate steps, ranging between 0 and seconds\nt = np.linspace(0, seconds, seconds * sample_rate, False)\n# Generate a 440 Hz sine wave\nnote_la = np.sin(frequency_la * t * 2 * np.pi)\n\nst.audio(note_la, sample_rate=sample_rate)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nRaw data formats must include all necessary file headers to match the file\nformat specified via format.\nIf data is a numpy array, it must either be a 1D array of the waveform\nor a 2D array of shape (num_channels, num_samples) with waveforms\nfor all channels. See the default channel order at\nhttp://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx

\n", - "default": "channel" - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "sample_rate", - "type_name": "int or None", - "is_optional": false, - "description": "

The sample rate of the audio data in samples per second. Only required if\ndata is a numpy array.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/media.py#L42" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L325" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container(*args, **kwargs)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(*args, **kwargs)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/beta_util.py#L43" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "example": "
\n
\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/runtime/legacy_caching/caching.py#L401" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "example": "
\n
\nst.caption('This is a string that explains something above.')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/markdown.py#L107" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False)", - "example": "
\n
\nimport streamlit as st\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/checkbox.py#L48" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/markdown.py#L74" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/layouts.py#L74" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L39" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nd = st.date_input(\n    "When's your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/time_widgets.py#L359" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/button.py#L145" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - }, - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write("""\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    """)\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write("""\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n""")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/layouts.py#L290" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, persist=None, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None, experimental_allow_widgets=False)", - "example": "
\n
\n@st.experimental_memo\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.experimental_memo(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a memoized function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A memoized function's cache can be procedurally cleared:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to memoize function executions.

\n

Memoized data is stored in "pickled" form, which means that the return\nvalue of a memoized function must be pickleable.

\n

Each caller of a memoized function gets its own copy of the cached data.

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to memoize. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "str or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Currently, the only\nvalid value is "disk", which will persist to the local disk.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None" - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the memoized function. Defaults to False.

\n", - "default": "False" - }, - { - "name": ".. note", - "type_name": ":", - "is_optional": false, - "description": "

Support for widgets in cached functions is currently experimental.\nTo enable it, set the parameter experimental_allow_widgets=True\nin @st.experimental_memo. Note that this may lead to excessive memory\nuse since the widget value is treated as an additional input parameter\nto the cache. We may remove support for this option at any time without notice.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/runtime/caching/memo_decorator.py#L233" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/commands/execution_control.py#L45" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/commands/query_params.py#L54" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func=None, *, show_spinner=True, suppress_st_warning=False, experimental_allow_widgets=False)", - "example": "
\n
\n@st.experimental_singleton\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a singleton function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A singleton function's cache can be procedurally cleared:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to store singleton objects.

\n

Each singleton object is shared across all users connected to the app.\nSingleton objects must be thread-safe, because they can be accessed from\nmultiple threads concurrently.

\n

(If thread-safety is an issue, consider using st.session_state to\nstore per-session singleton objects instead.)

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the singleton. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the singleton is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe singleton function.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the singleton function. Defaults to False.

\n", - "default": "False" - }, - { - "name": ".. note", - "type_name": ":", - "is_optional": false, - "description": "

Support for widgets in cached functions is currently experimental.\nTo enable it, set the parameter experimental_allow_widgets=True\nin @st.experimental_singleton. Note that this may lead to excessive\nmemory use since the widget value is treated as an additional input\nparameter to the cache. We may remove support for this option at any\ntime without notice.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/runtime/caching/singleton_decorator.py#L162" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/form.py#L116" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None" - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/form.py#L206" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/config.py#L129" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "example": "
\n
\nst.header('This is a header')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/heading.py#L27" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nfrom PIL import Image\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/image.py#L67" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/alert.py#L97" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/markdown.py#L143" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L153" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict,", - "is_optional": false, - "description": "

or None\nThe data to be plotted. Must have columns called 'lat', 'lon',\n'latitude', or 'longitude'.

\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/map.py#L76" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "example": "
\n
\nst.markdown('Streamlit is **_really_ cool**.')\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None)", - "example": "
\n
\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or title for the metric. The label can optionally contain\nMarkdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/metric.py#L44" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", theme=None, **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python::

\n
import numpy as np\nimport plotly.figure_factory as ff\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/plotly_chart.py#L70" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport time\n\nmy_bar = st.progress(0)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/progress.py#L32" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\nimport pandas as pd\nimport numpy as np\nimport pydeck as pdk\n\nchart_data = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=chart_data,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=chart_data,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\ngenre = st.radio(\n    "What's your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn't select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": null - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/config.py#L90" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nfrom datetime import time\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nfrom datetime import datetime\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "example": "
\n
\nst.subheader('This is a subheader')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/heading.py#L54" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/alert.py#L127" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L116" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The first tab is selected by default.\nThe string is used as the name of the tab and can optionally contain Markdown,\nsupporting the following elements: Bold, Italics, Strikethroughs, Inline Code,\nEmojis, and Links.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/layouts.py#L199" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/text_widgets.py#L252" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "example": "
\n
\nst.title('This is a title')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display.

\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/heading.py#L82" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, theme=None, **kwargs)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(chart_data, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L464" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/media.py#L115" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "None", - "is_optional": false, - "description": "

An optional parameter, that adds an emoji to the alert.\nThe default is None.\nThis argument can only be supplied by keyword.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/alert.py#L68" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nwrite('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression and emoji shortcodes.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk memo caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/runtime/caching/memo_decorator.py#L399" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all singleton caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/runtime/caching/singleton_decorator.py#L276" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/elements/dataframe_selector.py#L538" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.15.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.16.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False, theme=\"streamlit\")", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(chart_data).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L413" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L240" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0, *, sample_rate=None)", - "example": "
\n
\nimport streamlit as st\nimport numpy as np\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n\nsample_rate = 44100  # 44100 samples per second\nseconds = 2  # Note duration of 2 seconds\nfrequency_la = 440  # Our played note will be 440 Hz\n# Generate array with seconds*sample_rate steps, ranging between 0 and seconds\nt = np.linspace(0, seconds, seconds * sample_rate, False)\n# Generate a 440 Hz sine wave\nnote_la = np.sin(frequency_la * t * 2 * np.pi)\n\nst.audio(note_la, sample_rate=sample_rate)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nRaw data formats must include all necessary file headers to match the file\nformat specified via format.\nIf data is a numpy array, it must either be a 1D array of the waveform\nor a 2D array of shape (num_channels, num_samples) with waveforms\nfor all channels. See the default channel order at\nhttp://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx

\n", - "default": "channel" - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "sample_rate", - "type_name": "int or None", - "is_optional": false, - "description": "

The sample rate of the audio data in samples per second. Only required if\ndata is a numpy array.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/media.py#L43" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L326" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L73" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L287" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "example": "
\n
\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/runtime/legacy_caching/caching.py#L401" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "examples": "
\n
\nst.caption('This is a string that explains something above.')\nst.caption('A caption with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/markdown.py#L113" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/checkbox.py#L52" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/markdown.py#L80" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L73" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L40" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nd = st.date_input(\n    "When\\'s your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/time_widgets.py#L373" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/button.py#L145" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L287" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, persist=None, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None, experimental_allow_widgets=False)", - "example": "
\n
\n@st.experimental_memo\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.experimental_memo(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a memoized function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A memoized function's cache can be procedurally cleared:

\n
\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to memoize function executions.

\n

Memoized data is stored in "pickled" form, which means that the return\nvalue of a memoized function must be pickleable.

\n

Each caller of a memoized function gets its own copy of the cached data.

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to memoize. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "str or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Currently, the only\nvalid value is "disk", which will persist to the local disk.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None" - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the memoized function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/runtime/caching/memo_decorator.py#L232" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/commands/execution_control.py#L44" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/commands/query_params.py#L54" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func=None, *, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None, experimental_allow_widgets=False)", - "example": "
\n
\n@st.experimental_singleton\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a singleton function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A singleton function's cache can be procedurally cleared:

\n
\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to store singleton objects.

\n

Each singleton object is shared across all users connected to the app.\nSingleton objects must be thread-safe, because they can be accessed from\nmultiple threads concurrently.

\n

(If thread-safety is an issue, consider using st.session_state to\nstore per-session singleton objects instead.)

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the singleton. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the singleton is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe singleton function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the singleton function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/runtime/caching/singleton_decorator.py#L201" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/form.py#L116" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None" - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/form.py#L205" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/config.py#L128" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "examples": "
\n
\nst.header('This is a header')\nst.header('A header with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/heading.py#L27" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nfrom PIL import Image\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/image.py#L67" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/alert.py#L99" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/markdown.py#L165" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L154" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to be plotted. Must have two columns:

\n
    \n
  • latitude called 'lat', 'latitude', 'LAT', 'LATITUDE'
  • \n
  • longitude called 'lon', 'longitude', 'LON', 'LONGITUDE'.
  • \n
\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/map.py#L76" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "examples": "
\n
\nst.markdown('Streamlit is **_really_ cool**.')\nst.markdown(\u201dThis text is :red[colored red], and this is **:blue[colored]** and bold.\u201d)\nst.markdown(":green[$\\sqrt{x^2+y^2}=1$] is a Pythagorean identity. :pencil:")\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None, label_visibility=\"visible\")", - "example": "
\n
\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or title for the metric. The label can optionally contain\nMarkdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/metric.py#L46" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", theme=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:\nimport numpy as np\nimport plotly.figure_factory as ff\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/plotly_chart.py#L81" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport time\n\nmy_bar = st.progress(0)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/progress.py#L32" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\nimport pandas as pd\nimport numpy as np\nimport pydeck as pdk\n\nchart_data = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=chart_data,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=chart_data,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\ngenre = st.radio(\n    "What\\'s your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn\\'t select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": null - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/config.py#L89" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nfrom datetime import time\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nfrom datetime import datetime\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "examples": "
\n
\nst.subheader('This is a subheader')\nst.subheader('A subheader with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/heading.py#L70" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/alert.py#L130" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L117" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The first tab is selected by default.\nThe string is used as the name of the tab and can optionally contain Markdown,\nsupporting the following elements: Bold, Italics, Strikethroughs, Inline Code,\nEmojis, and Links.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/layouts.py#L197" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/text_widgets.py#L266" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "examples": "
\n
\nst.title('This is a title')\nst.title('A title with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/heading.py#L114" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, theme=\"streamlit\", **kwargs)", - "example": "
\n
\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(chart_data, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L465" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/media.py#L116" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/alert.py#L69" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nwrite('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression, emoji shortcodes, and colored text.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk memo caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/runtime/caching/memo_decorator.py#L388" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all singleton caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/runtime/caching/singleton_decorator.py#L326" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/elements/dataframe_selector.py#L539" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.16.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.17.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False, theme=\"streamlit\")", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(chart_data).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L422" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L247" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0, *, sample_rate=None)", - "example": "
\n
\nimport streamlit as st\nimport numpy as np\n\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n\nsample_rate = 44100  # 44100 samples per second\nseconds = 2  # Note duration of 2 seconds\nfrequency_la = 440  # Our played note will be 440 Hz\n# Generate array with seconds*sample_rate steps, ranging between 0 and seconds\nt = np.linspace(0, seconds, seconds * sample_rate, False)\n# Generate a 440 Hz sine wave\nnote_la = np.sin(frequency_la * t * 2 * np.pi)\n\nst.audio(note_la, sample_rate=sample_rate)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nRaw data formats must include all necessary file headers to match the file\nformat specified via format.\nIf data is a numpy array, it must either be a 1D array of the waveform\nor a 2D array of shape (num_channels, num_samples) with waveforms\nfor all channels. See the default channel order at\nhttp://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx

\n", - "default": "channel" - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "sample_rate", - "type_name": "int or None", - "is_optional": false, - "description": "

The sample rate of the audio data in samples per second. Only required if\ndata is a numpy array.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/media.py#L43" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nimport streamlit as st\n\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L334" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L301" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "example": "
\n
\nimport streamlit as st\n\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/runtime/legacy_caching/caching.py#L401" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.caption('This is a string that explains something above.')\nst.caption('A caption with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/markdown.py#L117" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/checkbox.py#L52" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\nimport streamlit as st\n\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/markdown.py#L82" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put columns inside another column.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L40" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nd = st.date_input(\n    "When\\'s your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/time_widgets.py#L376" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\nimport streamlit as st\n\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\nimport streamlit as st\n\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nimport streamlit as st\n\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nimport streamlit as st\n\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/button.py#L147" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nimport streamlit as st\n\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport streamlit as st\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nimport streamlit as st\n\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\nimport streamlit as st\n\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L301" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nimport streamlit as st\n\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, persist=None, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None, experimental_allow_widgets=False)", - "example": "
\n
\nimport streamlit as st\n\n@st.experimental_memo\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\nimport streamlit as st\n\n@st.experimental_memo(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a memoized function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A memoized function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.experimental_memo\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to memoize function executions.

\n

Memoized data is stored in "pickled" form, which means that the return\nvalue of a memoized function must be pickleable.

\n

Each caller of a memoized function gets its own copy of the cached data.

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to memoize. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "str or boolean or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Passing "disk" (or True)\nwill persist the cached data to the local disk. None (or False) will disable\npersistence. The default is None.

\n", - "default": "None" - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None" - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the memoized function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/runtime/caching/memo_decorator.py#L236" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/commands/execution_control.py#L46" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nimport streamlit as st\n\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/commands/query_params.py#L56" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\n\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func=None, *, show_spinner=True, suppress_st_warning=False, max_entries=None, ttl=None, validate=None, experimental_allow_widgets=False)", - "example": "
\n
\nimport streamlit as st\n\n@st.experimental_singleton\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a singleton function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A singleton function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.experimental_singleton\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Function decorator to store singleton objects.

\n

Each singleton object is shared across all users connected to the app.\nSingleton objects must be thread-safe, because they can be accessed from\nmultiple threads concurrently.

\n

(If thread-safety is an issue, consider using st.session_state to\nstore per-session singleton objects instead.)

\n

You can clear a memoized function's cache with f.clear().

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the singleton. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the singleton is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe singleton function.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None" - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None" - }, - { - "name": "validate", - "type_name": "callable or None", - "is_optional": false, - "description": "

An optional validation function for cached data. validate is\ncalled each time the cached value is accessed. It receives\nthe cached value as its only param; and it returns a bool result.\nIf validate returns False, the current cached value is discarded,\nand the decorated function is called to compute a new value.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the singleton function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/runtime/caching/singleton_decorator.py#L220" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nimport streamlit as st\nimport pandas as pd\nfrom io import StringIO\n\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nimport streamlit as st\n\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nimport streamlit as st\n\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/form.py#L116" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None" - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/form.py#L209" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/config.py#L128" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.header('This is a header')\nst.header('A header with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/heading.py#L27" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nimport streamlit as st\nimport pandas\n\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nimport streamlit as st\n\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nimport streamlit as st\nfrom PIL import Image\n\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/image.py#L67" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/alert.py#L103" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nimport streamlit as st\n\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nimport streamlit as st\n\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/markdown.py#L171" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L160" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to be plotted. Must have two columns:

\n
    \n
  • latitude called 'lat', 'latitude', 'LAT', 'LATITUDE'
  • \n
  • longitude called 'lon', 'longitude', 'LON', 'LONGITUDE'.
  • \n
\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/map.py#L76" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.markdown('Streamlit is **_really_ cool**.')\nst.markdown(\u201dThis text is :red[colored red], and this is **:blue[colored]** and bold.\u201d)\nst.markdown(":green[$\\sqrt{x^2+y^2}=1$] is a Pythagorean identity. :pencil:")\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nimport streamlit as st\n\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or title for the metric. The label can optionally contain\nMarkdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/metric.py#L46" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\nimport streamlit as st\n\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", theme=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:

\n
\nimport streamlit as st\nimport numpy as np\nimport plotly.figure_factory as ff\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/plotly_chart.py#L81" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport streamlit as st\nimport time\n\nmy_bar = st.progress(0)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/progress.py#L32" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport pydeck as pdk\n\nchart_data = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=chart_data,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=chart_data,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport streamlit as st\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ngenre = st.radio(\n    "What\\'s your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn\\'t select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False" - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\nimport streamlit as st\n\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nimport streamlit as st\n\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": null - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": null - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/config.py#L89" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nimport streamlit as st\n\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nimport streamlit as st\n\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nimport streamlit as st\nfrom datetime import time\n\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nimport streamlit as st\nfrom datetime import datetime\n\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nimport streamlit as st\n\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nimport time\nimport streamlit as st\n\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nimport streamlit as st\n\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.subheader('This is a subheader')\nst.subheader('A subheader with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/heading.py#L72" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/alert.py#L136" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L122" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\nimport streamlit as st\n\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The first tab is selected by default.\nThe string is used as the name of the tab and can optionally contain Markdown,\nsupporting the following elements: Bold, Italics, Strikethroughs, Inline Code,\nEmojis, and Links.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/layouts.py#L206" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nimport streamlit as st\n\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/text_widgets.py#L268" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.title('This is a title')\nst.title('A title with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/heading.py#L118" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, theme=\"streamlit\", **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(chart_data, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L475" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nimport streamlit as st\n\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/media.py#L117" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/alert.py#L71" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nimport streamlit as st\n\nst.write('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nimport streamlit as st\nimport pandas as pd\n\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nimport streamlit as st\n\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression, emoji shortcodes, and colored text.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk memo caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/runtime/caching/memo_decorator.py#L410" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all singleton caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/runtime/caching/singleton_decorator.py#L361" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150" - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/elements/dataframe_selector.py#L550" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.17.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.18.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False, theme=\"streamlit\")", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(chart_data).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L422" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L247" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0, *, sample_rate=None)", - "example": "
\n
\nimport streamlit as st\nimport numpy as np\n\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n\nsample_rate = 44100  # 44100 samples per second\nseconds = 2  # Note duration of 2 seconds\nfrequency_la = 440  # Our played note will be 440 Hz\n# Generate array with seconds*sample_rate steps, ranging between 0 and seconds\nt = np.linspace(0, seconds, seconds * sample_rate, False)\n# Generate a 440 Hz sine wave\nnote_la = np.sin(frequency_la * t * 2 * np.pi)\n\nst.audio(note_la, sample_rate=sample_rate)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nRaw data formats must include all necessary file headers to match the file\nformat specified via format.\nIf data is a numpy array, it must either be a 1D array of the waveform\nor a 2D array of shape (num_channels, num_samples) with waveforms\nfor all channels. See the default channel order at\nhttp://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx

\n", - "default": "channel" - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "sample_rate", - "type_name": "int or None", - "is_optional": false, - "description": "

The sample rate of the audio data in samples per second. Only required if\ndata is a numpy array.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/media.py#L43" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nimport streamlit as st\n\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L334" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n

Columns can only be placed inside other columns up to one level of nesting.

\n
\n

Warning

\n

Columns cannot be placed inside other columns in the sidebar. This is only possible in the main area of the app.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L306" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\n\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/legacy_caching/caching.py#L486" - }, - "streamlit.cache_data": { - "name": "cache_data", - "signature": "st.cache_data(func=None, *, ttl, max_entries, show_spinner, persist, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\nimport streamlit as st\n\n@st.cache_data(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a cached function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A cached function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return data (e.g. dataframe transforms, database queries, ML inference).

\n

Cached objects are stored in "pickled" form, which means that the return\nvalue of a cached function must be pickleable. Each caller of the cached\nfunction gets its own copy of the cached data.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_data.clear().

\n

To cache global resources, use st.cache_resource instead. Learn more\nabout caching at https://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "persist", - "type_name": "str or boolean or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Passing "disk" (or True)\nwill persist the cached data to the local disk. None (or False) will disable\npersistence. The default is None.

\n", - "default": "None." - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_data_api.py#L274" - }, - "streamlit.cache_resource": { - "name": "cache_resource", - "signature": "st.cache_resource(func, *, ttl, max_entries, show_spinner, validate, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a cache_resource function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A cache_resource function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return global resources (e.g. database connections, ML models).

\n

Cached objects are shared across all users, sessions, and reruns. They\nmust be thread-safe because they can be accessed from multiple threads\nconcurrently. If thread safety is an issue, consider using st.session_state\nto store resources per session instead.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_resource.clear().

\n

To cache data, use st.cache_data instead. Learn more about caching at\nhttps://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the cached resource. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the cached resource is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "validate", - "type_name": "callable or None", - "is_optional": false, - "description": "

An optional validation function for cached data. validate is called\neach time the cached value is accessed. It receives the cached value as\nits only parameter and it must return a boolean. If validate returns\nFalse, the current cached value is discarded, and the decorated function\nis called to compute a new value. This is useful e.g. to check the\nhealth of database connections.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_resource_api.py#L258" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.caption('This is a string that explains something above.')\nst.caption('A caption with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/markdown.py#L119" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/checkbox.py#L52" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\nimport streamlit as st\n\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/markdown.py#L83" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black." - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n

Columns can only be placed inside other columns up to one level of nesting.

\n
\n

Warning

\n

Columns cannot be placed inside other columns in the sidebar. This is only possible in the main area of the app.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L40" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nd = st.date_input(\n    "When\\'s your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/time_widgets.py#L380" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False, use_container_width=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\nimport streamlit as st\n\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\nimport streamlit as st\n\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nimport streamlit as st\n\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nimport streamlit as st\n\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/button.py#L155" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nimport streamlit as st\n\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport streamlit as st\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nimport streamlit as st\n\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\nimport streamlit as st\n\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L306" - }, - "streamlit.experimental_data_editor": { - "name": "experimental_data_editor", - "signature": "st.experimental_data_editor(data, *, width=None, height=None, use_container_width=False, num_rows=\"fixed\", disabled=False, key=None, on_change=None, args=None, kwargs=None)", - "examples": "
\n
\nimport streamlit as st\nimport pandas as pd\n\ndf = pd.DataFrame(\n    [\n       {"command": "st.selectbox", "rating": 4, "is_widget": True},\n       {"command": "st.balloons", "rating": 5, "is_widget": False},\n       {"command": "st.time_input", "rating": 3, "is_widget": True},\n   ]\n)\nedited_df = st.experimental_data_editor(df)\n\nfavorite_command = edited_df.loc[edited_df["rating"].idxmax()]["command"]\nst.markdown(f"Your favorite command is **{favorite_command}** \ud83c\udf88")\n
\n

You can also allow the user to add and delete rows by setting num_rows to "dynamic":

\n
\nimport streamlit as st\nimport pandas as pd\n\ndf = pd.DataFrame(\n    [\n       {"command": "st.selectbox", "rating": 4, "is_widget": True},\n       {"command": "st.balloons", "rating": 5, "is_widget": False},\n       {"command": "st.time_input", "rating": 3, "is_widget": True},\n   ]\n)\nedited_df = st.experimental_data_editor(df, num_rows="dynamic")\n\nfavorite_command = edited_df.loc[edited_df["rating"].idxmax()]["command"]\nst.markdown(f"Your favorite command is **{favorite_command}** \ud83c\udf88")\n
\n
\n", - "description": "

Display a data editor widget.

\n

Display a data editor widget that allows you to edit DataFrames and\nmany other data structures in a table-like UI.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pandas.Index, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.DataFrame, list, set, tuple, dict, or None", - "is_optional": false, - "description": "

The data to edit in the data editor.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the data editor expressed in pixels. If None, the width\nwill be automatically calculated based on the container width.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the data editor expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the data editor width to the width of the parent container.\nThis takes precedence over the width argument. Defaults to False.

\n", - "default": "False." - }, - { - "name": "num_rows", - "type_name": "\"fixed\" or \"dynamic\"", - "is_optional": false, - "description": "

Specifies if the user can add and delete rows in the data editor.\nIf "fixed", the user cannot add or delete rows. If "dynamic", the user can\nadd and delete rows in the data editor, but column sorting is disabled.\nDefaults to "fixed".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean which, if True, disables the data editor and prevents\nany edits. Defaults to False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the unique key for this widget. If this\nis omitted, a key will be generated for the widget based on its\ncontent. Multiple widgets of the same type may not share the same\nkey.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this data_editor's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "pd.DataFrame, pd.Styler, pyarrow.Table, np.ndarray, list, set, tuple, or dict.", - "is_generator": false, - "description": "

The edited data. The edited data is returned in its original data type if\nit corresponds to any of the supported return types. All other data types\nare returned as a pd.DataFrame.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/data_editor.py#L448" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nimport streamlit as st\n\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, ttl, max_entries, show_spinner, persist, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\nimport streamlit as st\n\n@st.cache_data(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a cached function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A cached function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return data (e.g. dataframe transforms, database queries, ML inference).

\n

Cached objects are stored in "pickled" form, which means that the return\nvalue of a cached function must be pickleable. Each caller of the cached\nfunction gets its own copy of the cached data.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_data.clear().

\n

To cache global resources, use st.cache_resource instead. Learn more\nabout caching at https://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "persist", - "type_name": "str or boolean or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Passing "disk" (or True)\nwill persist the cached data to the local disk. None (or False) will disable\npersistence. The default is None.

\n", - "default": "None." - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_data_api.py#L274" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/commands/execution_control.py#L46" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nimport streamlit as st\n\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/commands/query_params.py#L56" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\n\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func, *, ttl, max_entries, show_spinner, validate, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a cache_resource function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A cache_resource function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return global resources (e.g. database connections, ML models).

\n

Cached objects are shared across all users, sessions, and reruns. They\nmust be thread-safe because they can be accessed from multiple threads\nconcurrently. If thread safety is an issue, consider using st.session_state\nto store resources per session instead.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_resource.clear().

\n

To cache data, use st.cache_data instead. Learn more about caching at\nhttps://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the cached resource. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the cached resource is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "validate", - "type_name": "callable or None", - "is_optional": false, - "description": "

An optional validation function for cached data. validate is called\neach time the cached value is accessed. It receives the cached value as\nits only parameter and it must return a boolean. If validate returns\nFalse, the current cached value is discarded, and the decorated function\nis called to compute a new value. This is useful e.g. to check the\nhealth of database connections.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_resource_api.py#L258" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nimport streamlit as st\nimport pandas as pd\nfrom io import StringIO\n\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nimport streamlit as st\n\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nimport streamlit as st\n\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/form.py#L118" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False, use_container_width=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None." - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/form.py#L211" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/config.py#L128" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.header('This is a header')\nst.header('A header with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/heading.py#L31" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nimport streamlit as st\nimport pandas\n\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nimport streamlit as st\n\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nimport streamlit as st\nfrom PIL import Image\n\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/image.py#L67" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/alert.py#L103" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nimport streamlit as st\n\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nimport streamlit as st\n\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/markdown.py#L174" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L160" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to be plotted. Must have two columns:

\n
    \n
  • latitude called 'lat', 'latitude', 'LAT', 'LATITUDE'
  • \n
  • longitude called 'lon', 'longitude', 'LON', 'LONGITUDE'.
  • \n
\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/map.py#L76" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.markdown('Streamlit is **_really_ cool**.')\nst.markdown(\u201dThis text is :red[colored red], and this is **:blue[colored]** and bold.\u201d)\nst.markdown(":green[$\\sqrt{x^2+y^2}=1$] is a Pythagorean identity. :pencil:")\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nimport streamlit as st\n\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or title for the metric. The label can optionally contain\nMarkdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/metric.py#L46" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\nimport streamlit as st\n\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values." - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", theme=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:

\n
\nimport streamlit as st\nimport numpy as np\nimport plotly.figure_factory as ff\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/plotly_chart.py#L81" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value, text=None)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport streamlit as st\nimport time\n\nprogress_text = "Operation in progress. Please wait."\nmy_bar = st.progress(0, text=progress_text)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1, text=progress_text)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - }, - { - "name": "text", - "type_name": "str or None", - "is_optional": false, - "description": "

A message to display above the progress bar. The text can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/progress.py#L66" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport pydeck as pdk\n\nchart_data = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=chart_data,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=chart_data,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport streamlit as st\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ngenre = st.radio(\n    "What\\'s your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn\\'t select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\nimport streamlit as st\n\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nimport streamlit as st\n\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": "." - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/config.py#L89" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nimport streamlit as st\n\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nimport streamlit as st\n\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nimport streamlit as st\nfrom datetime import time\n\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nimport streamlit as st\nfrom datetime import datetime\n\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value." - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nimport streamlit as st\n\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nimport time\nimport streamlit as st\n\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nimport streamlit as st\n\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.subheader('This is a subheader')\nst.subheader('A subheader with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/heading.py#L76" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/alert.py#L136" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L122" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\nimport streamlit as st\n\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The first tab is selected by default.\nThe string is used as the name of the tab and can optionally contain Markdown,\nsupporting the following elements: Bold, Italics, Strikethroughs, Inline Code,\nEmojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": "." - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/layouts.py#L208" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nimport streamlit as st\n\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/text_widgets.py#L272" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.title('This is a title')\nst.title('A title with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/heading.py#L122" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, theme=\"streamlit\", **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(chart_data, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L475" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nimport streamlit as st\n\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/media.py#L117" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/alert.py#L71" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nimport streamlit as st\n\nst.write('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nimport streamlit as st\nimport pandas as pd\n\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nimport streamlit as st\n\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression, emoji shortcodes, and colored text.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk data caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_data_api.py#L445" - }, - "streamlit.cache_data.clear": { - "name": "cache_data.clear", - "signature": "st.cache_data.clear(self)", - "description": "Clear all in-memory and on-disk data caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_data_api.py#L445" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all cache_resource caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_resource_api.py#L396" - }, - "streamlit.cache_resource.clear": { - "name": "cache_resource.clear", - "signature": "st.cache_resource.clear(self)", - "description": "Clear all cache_resource caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/runtime/caching/cache_resource_api.py#L396" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150." - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150." - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/elements/dataframe_selector.py#L550" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.18.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, - "1.19.0": { - "streamlit.altair_chart": { - "name": "altair_chart", - "signature": "st.altair_chart(altair_chart, use_container_width=False, theme=\"streamlit\")", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(chart_data).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.altair_chart(c, use_container_width=True)\n
\n

Examples of Altair charts can be found at\nhttps://altair-viz.github.io/gallery/.

\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a chart using the Altair library.", - "args": [ - { - "name": "altair_chart", - "type_name": "altair.vegalite.v2.api.Chart", - "is_optional": false, - "description": "

The Altair chart object to display.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Altair's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L422" - }, - "streamlit.area_chart": { - "name": "area_chart", - "signature": "st.area_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.area_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an area chart.

\n

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

\n

If st.area_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L247" - }, - "streamlit.audio": { - "name": "audio", - "signature": "st.audio(data, format=\"audio/wav\", start_time=0, *, sample_rate=None)", - "example": "
\n
\nimport streamlit as st\nimport numpy as np\n\naudio_file = open('myaudio.ogg', 'rb')\naudio_bytes = audio_file.read()\n\nst.audio(audio_bytes, format='audio/ogg')\n\nsample_rate = 44100  # 44100 samples per second\nseconds = 2  # Note duration of 2 seconds\nfrequency_la = 440  # Our played note will be 440 Hz\n# Generate array with seconds*sample_rate steps, ranging between 0 and seconds\nt = np.linspace(0, seconds, seconds * sample_rate, False)\n# Generate a 440 Hz sine wave\nnote_la = np.sin(frequency_la * t * 2 * np.pi)\n\nst.audio(note_la, sample_rate=sample_rate)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an audio player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw audio data, filename, or a URL pointing to the file to load.\nRaw data formats must include all necessary file headers to match the file\nformat specified via format.\nIf data is a numpy array, it must either be a 1D array of the waveform\nor a 2D array of shape (num_channels, num_samples) with waveforms\nfor all channels. See the default channel order at\nhttp://msdn.microsoft.com/en-us/library/windows/hardware/dn653308(v=vs.85).aspx

\n", - "default": "channel" - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the audio file. Defaults to 'audio/wav'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - }, - { - "name": "sample_rate", - "type_name": "int or None", - "is_optional": false, - "description": "

The sample rate of the audio data in samples per second. Only required if\ndata is a numpy array.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/media.py#L43" - }, - "streamlit.balloons": { - "name": "balloons", - "signature": "st.balloons()", - "example": "
\n
\nimport streamlit as st\n\nst.balloons()\n
\n

...then watch your app and get ready for a celebration!

\n
\n", - "description": "Draw celebratory balloons.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/balloons.py#L25" - }, - "streamlit.bar_chart": { - "name": "bar_chart", - "signature": "st.bar_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=["a", "b", "c"])\n\nst.bar_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a bar chart.

\n

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

\n

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

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, or dict", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L334" - }, - "streamlit.beta_columns": { - "name": "beta_columns", - "signature": "st.beta_columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n

Columns can only be placed inside other columns up to one level of nesting.

\n
\n

Warning

\n

Columns cannot be placed inside other columns in the sidebar. This is only possible in the main area of the app.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.beta_container": { - "name": "beta_container", - "signature": "st.beta_container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.beta_expander": { - "name": "beta_expander", - "signature": "st.beta_expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L306" - }, - "streamlit.bokeh_chart": { - "name": "bokeh_chart", - "signature": "st.bokeh_chart(figure, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nfrom bokeh.plotting import figure\n\nx = [1, 2, 3, 4, 5]\ny = [6, 7, 2, 4, 5]\n\np = figure(\n    title='simple line example',\n    x_axis_label='x',\n    y_axis_label='y')\n\np.line(x, y, legend_label='Trend', line_width=2)\n\nst.bokeh_chart(p, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Bokeh chart.

\n

Bokeh is a charting library for Python. The arguments to this function\nclosely follow the ones for Bokeh's show function. You can find\nmore about Bokeh at https://bokeh.pydata.org.

\n

To show Bokeh charts in Streamlit, call st.bokeh_chart\nwherever you would call Bokeh's show.

\n", - "args": [ - { - "name": "figure", - "type_name": "bokeh.plotting.figure.Figure", - "is_optional": false, - "description": "

A Bokeh figure to plot.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Bokeh's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/bokeh_chart.py#L36" - }, - "streamlit.button": { - "name": "button", - "signature": "st.button(label, key=None, help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\n\nif st.button('Say hello'):\n    st.write('Why hello there')\nelse:\n    st.write('Goodbye')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/button.py#L61" - }, - "streamlit.cache": { - "name": "cache", - "signature": "st.cache(func=None, persist=False, allow_output_mutation=False, show_spinner=True, suppress_st_warning=False, hash_funcs=None, max_entries=None, ttl=None)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\n@st.cache(persist=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To disable hashing return values, set the allow_output_mutation parameter to True:

\n
\n@st.cache(allow_output_mutation=True)\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

To override the default hashing behavior, pass a custom hash function.\nYou can do that by mapping a type (e.g. MongoClient) to a hash function (id) like this:

\n
\n@st.cache(hash_funcs={MongoClient: id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n

Alternatively, you can map the type's fully-qualified name\n(e.g. "pymongo.mongo_client.MongoClient") to the hash function instead:

\n
\n@st.cache(hash_funcs={"pymongo.mongo_client.MongoClient": id})\ndef connect_to_database(url):\n    return MongoClient(url)\n
\n
\n", - "description": "Function decorator to memoize function executions.", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function and dependent code.

\n", - "default": null - }, - { - "name": "persist", - "type_name": "boolean", - "is_optional": false, - "description": "

Whether to persist the cache on disk.

\n", - "default": null - }, - { - "name": "allow_output_mutation", - "type_name": "boolean", - "is_optional": false, - "description": "

Streamlit shows a warning when return values are mutated, as that\ncan have unintended consequences. This is done by hashing the return value internally.

\n

If you know what you're doing and would like to override this warning, set this to True.

\n", - "default": null - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "suppress_st_warning", - "type_name": "boolean", - "is_optional": false, - "description": "

Suppress warnings about calling Streamlit commands from within\nthe cached function.

\n", - "default": null - }, - { - "name": "hash_funcs", - "type_name": "dict or None", - "is_optional": false, - "description": "

Mapping of types or fully qualified names to hash functions. This is used to override\nthe behavior of the hasher inside Streamlit's caching mechanism: when the hasher\nencounters an object, it will first check to see if its type matches a key in this\ndict and, if so, will use the provided function to generate a hash for it. See below\nfor an example of how this can be used.

\n", - "default": null - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "ttl", - "type_name": "float or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/legacy_caching/caching.py#L486" - }, - "streamlit.cache_data": { - "name": "cache_data", - "signature": "st.cache_data(func=None, *, ttl, max_entries, show_spinner, persist, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\nimport streamlit as st\n\n@st.cache_data(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a cached function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A cached function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return data (e.g. dataframe transforms, database queries, ML inference).

\n

Cached objects are stored in "pickled" form, which means that the return\nvalue of a cached function must be pickleable. Each caller of the cached\nfunction gets its own copy of the cached data.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_data.clear().

\n

To cache global resources, use st.cache_resource instead. Learn more\nabout caching at https://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "persist", - "type_name": "str or boolean or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Passing "disk" (or True)\nwill persist the cached data to the local disk. None (or False) will disable\npersistence. The default is None.

\n", - "default": "None." - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_data_api.py#L274" - }, - "streamlit.cache_resource": { - "name": "cache_resource", - "signature": "st.cache_resource(func, *, ttl, max_entries, show_spinner, validate, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a cache_resource function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A cache_resource function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return global resources (e.g. database connections, ML models).

\n

Cached objects are shared across all users, sessions, and reruns. They\nmust be thread-safe because they can be accessed from multiple threads\nconcurrently. If thread safety is an issue, consider using st.session_state\nto store resources per session instead.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_resource.clear().

\n

To cache data, use st.cache_data instead. Learn more about caching at\nhttps://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the cached resource. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the cached resource is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "validate", - "type_name": "callable or None", - "is_optional": false, - "description": "

An optional validation function for cached data. validate is called\neach time the cached value is accessed. It receives the cached value as\nits only parameter and it must return a boolean. If validate returns\nFalse, the current cached value is discarded, and the decorated function\nis called to compute a new value. This is useful e.g. to check the\nhealth of database connections.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_resource_api.py#L258" - }, - "streamlit.camera_input": { - "name": "camera_input", - "signature": "st.camera_input(label, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\npicture = st.camera_input("Take a picture")\n\nif picture:\n    st.image(picture)\n
\n
\n", - "description": "Display a widget that returns pictures from the user's webcam.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this widget is used for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the camera input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this camera_input's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the camera input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile", - "is_generator": false, - "description": "

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/camera_input.py#L109" - }, - "streamlit.caption": { - "name": "caption", - "signature": "st.caption(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.caption('This is a string that explains something above.')\nst.caption('A caption with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in small font.

\n

This should be used for captions, asides, footnotes, sidenotes, and\nother explanatory text.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/markdown.py#L119" - }, - "streamlit.checkbox": { - "name": "checkbox", - "signature": "st.checkbox(label, value=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nagree = st.checkbox('I agree')\n\nif agree:\n    st.write('Great!')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a checkbox widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this checkbox is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "value", - "type_name": "bool", - "is_optional": false, - "description": "

Preselect the checkbox when it first renders. This will be\ncast to bool internally.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the checkbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this checkbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the checkbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

Whether or not the checkbox is checked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/checkbox.py#L52" - }, - "streamlit.code": { - "name": "code", - "signature": "st.code(body, language=\"python\")", - "example": "
\n
\nimport streamlit as st\n\ncode = '''def hello():\n    print("Hello, Streamlit!")'''\nst.code(code, language='python')\n
\n
\n", - "description": "

Display a code block with optional syntax highlighting.

\n

(This is a convenience wrapper around st.markdown())

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as code.

\n", - "default": null - }, - { - "name": "language", - "type_name": "str or None", - "is_optional": false, - "description": "

The language that the code is written in, for syntax highlighting.\nIf None, the code will be unstyled. Defaults to "python".

\n

For a list of available language values, see:

\n

https://github.com/react-syntax-highlighter/react-syntax-highlighter/blob/master/AVAILABLE_LANGUAGES_PRISM.MD

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/markdown.py#L83" - }, - "streamlit.color_picker": { - "name": "color_picker", - "signature": "st.color_picker(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ncolor = st.color_picker('Pick A Color', '#00f900')\nst.write('The current color is', color)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a color picker widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "str", - "is_optional": false, - "description": "

The hex value of this widget when it first renders. If None,\ndefaults to black.

\n", - "default": "black." - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the color picker.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this color_picker's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the color picker if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn\u2019t show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The selected color as a hex string.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/color_picker.py#L52" - }, - "streamlit.columns": { - "name": "columns", - "signature": "st.columns(spec, *, gap=\"small\")", - "examples": "
\n

You can use with notation to insert any element into a column:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\n\nwith col1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg")\n\nwith col2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg")\n\nwith col3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ncol1, col2 = st.columns([3, 1])\ndata = np.random.randn(10, 1)\n\ncol1.subheader("A wide column with a chart")\ncol1.line_chart(data)\n\ncol2.subheader("A narrow column with the data")\ncol2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers laid out as side-by-side columns.

\n

Inserts a number of multi-element containers laid out side-by-side and\nreturns a list of container objects.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n

Columns can only be placed inside other columns up to one level of nesting.

\n
\n

Warning

\n

Columns cannot be placed inside other columns in the sidebar. This is only possible in the main area of the app.

\n
\n", - "args": [ - { - "name": "spec", - "type_name": "int or list of numbers", - "is_optional": false, - "description": "
\n
If an int
\n
Specifies the number of columns to insert, and all columns\nhave equal width.
\n
If a list of numbers
\n

Creates a column for each number, and each\ncolumn's width is proportional to the number provided. Numbers can\nbe ints or floats, but they must be positive.

\n

For example, st.columns([3, 1, 2]) creates 3 columns where\nthe first column is 3 times the width of the second, and the last\ncolumn is 2 times that width.

\n
\n
\n", - "default": null - }, - { - "name": "gap", - "type_name": "string (\"small\", \"medium\", or \"large\")", - "is_optional": false, - "description": "

An optional string, which indicates the size of the gap between each column.\nThe default is a small gap between columns. This argument can only be supplied by\nkeyword.

\n", - "default": "a" - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L77" - }, - "streamlit.container": { - "name": "container", - "signature": "st.container()", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.container():\n   st.write("This is inside the container")\n\n   # You can call any Streamlit command, including custom components:\n   st.bar_chart(np.random.randn(50, 3))\n\nst.write("This is outside the container")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Inserting elements out of order:

\n
\nimport streamlit as st\n\ncontainer = st.container()\ncontainer.write("This is inside the container")\nst.write("This is outside the container")\n\n# Now insert some more in the container\ncontainer.write("This is inside too")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container.

\n

Inserts an invisible container into your app that can be used to hold\nmultiple elements. This allows you to, for example, insert multiple\nelements into your app out of order.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L29" - }, - "streamlit.dataframe": { - "name": "dataframe", - "signature": "st.dataframe(data=None, width=None, height=None, *, use_container_width=False)", - "examples": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df)  # Same as st.write(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\nst.dataframe(df, 200, 100)\n
\n

You can also pass a Pandas Styler object to change the style of\nthe rendered DataFrame:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 20),\n   columns=('col %d' % i for i in range(20)))\n\nst.dataframe(df.style.highlight_max(axis=0))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a dataframe as an interactive table.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to display.

\n

If 'data' is a pandas.Styler, it will be used to style its\nunderlying DataFrame. Streamlit supports custom cell\nvalues and colors. (It does not support some of the more exotic\npandas styling features, like bar charts, hovering, and captions.)\nStyler support is experimental!\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the dataframe expressed in pixels. If None, the width\nwill be automatically calculated based on the column content.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the dataframe expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the dataframe width to the width of the parent container.\nThis takes precedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L40" - }, - "streamlit.date_input": { - "name": "date_input", - "signature": "st.date_input(label, value=None, min_value=None, max_value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nd = st.date_input(\n    "When\\'s your birthday",\n    datetime.date(2019, 7, 6))\nst.write('Your birthday is:', d)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a date input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this date input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.date or datetime.datetime or list/tuple of datetime.date or datetime.datetime or None", - "is_optional": false, - "description": "

The value of this widget when it first renders. If a list/tuple with\n0 to 2 date/datetime values is provided, the datepicker will allow\nusers to provide a range. Defaults to today as a single-date picker.

\n", - "default": "today" - }, - { - "name": "min_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The minimum selectable date. If value is a date, defaults to value - 10 years.\nIf value is the interval [start, end], defaults to start - 10 years.

\n", - "default": "value" - }, - { - "name": "max_value", - "type_name": "datetime.date or datetime.datetime", - "is_optional": false, - "description": "

The maximum selectable date. If value is a date, defaults to value + 10 years.\nIf value is the interval [start, end], defaults to end + 10 years.

\n", - "default": "value" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this date_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the date input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.date or a tuple with 0-2 dates", - "is_generator": false, - "description": "

The current value of the date input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/time_widgets.py#L380" - }, - "streamlit.download_button": { - "name": "download_button", - "signature": "st.download_button(label, data, file_name=None, mime=None, key=None, help=None, on_click=None, args=None, kwargs=None, *, disabled=False, use_container_width=False)", - "examples": "
\n

Download a large DataFrame as a CSV:

\n
\nimport streamlit as st\n\n@st.cache\ndef convert_df(df):\n    # IMPORTANT: Cache the conversion to prevent computation on every rerun\n    return df.to_csv().encode('utf-8')\n\ncsv = convert_df(my_large_df)\n\nst.download_button(\n    label="Download data as CSV",\n    data=csv,\n    file_name='large_df.csv',\n    mime='text/csv',\n)\n
\n

Download a string as a file:

\n
\nimport streamlit as st\n\ntext_contents = '''This is some text'''\nst.download_button('Download some text', text_contents)\n
\n

Download a binary file:

\n
\nimport streamlit as st\n\nbinary_contents = b'example content'\n# Defaults to 'application/octet-stream'\nst.download_button('Download binary file', binary_contents)\n
\n

Download an image:

\n
\nimport streamlit as st\n\nwith open("flower.png", "rb") as file:\n    btn = st.download_button(\n            label="Download image",\n            data=file,\n            file_name="flower.png",\n            mime="image/png"\n          )\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a download button widget.

\n

This is useful when you would like to provide a way for your users\nto download a file directly from your app.

\n

Note that the data to be downloaded is stored in-memory while the\nuser is connected, so it's a good idea to keep file sizes under a\ncouple hundred megabytes to conserve memory.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, and Emojis.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "data", - "type_name": "str or bytes or file", - "is_optional": false, - "description": "

The contents of the file to be downloaded. See example below for\ncaching techniques to avoid recomputing this data unnecessarily.

\n", - "default": null - }, - { - "name": "file_name", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the name of the file to be downloaded,\nsuch as 'my_file.csv'. If not specified, the name will be\nautomatically generated.

\n", - "default": null - }, - { - "name": "mime", - "type_name": "str or None", - "is_optional": false, - "description": "

The MIME type of the data. If None, defaults to "text/plain"\n(if data is of type str or is a textual file) or\n"application/octet-stream" (if data is of type bytes or is a\nbinary file).

\n", - "default": "s" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed when the button is\nhovered over.

\n", - "default": null - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the download button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked on the last run of the app,\nFalse otherwise.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/button.py#L155" - }, - "streamlit.echo": { - "name": "echo", - "signature": "st.echo(code_location=\"above\")", - "example": "
\n
\nimport streamlit as st\n\nwith st.echo():\n    st.write('This code will be printed')\n
\n
\n", - "description": "Use in a `with` block to draw some code on the app, then execute it.", - "args": [ - { - "name": "code_location", - "type_name": "\"above\" or \"below\"", - "is_optional": false, - "description": "

Whether to show the echoed code before or after the results of the\nexecuted code block.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/echo.py#L27" - }, - "streamlit.empty": { - "name": "empty", - "signature": "st.empty()", - "examples": "
\n

Overwriting elements in-place using "with" notation:

\n
\nimport streamlit as st\nimport time\n\nwith st.empty():\n    for seconds in range(60):\n        st.write(f"\u23f3 {seconds} seconds have passed")\n        time.sleep(1)\n    st.write("\u2714\ufe0f 1 minute over!")\n
\n

Replacing several elements, then clearing them:

\n
\nimport streamlit as st\n\nplaceholder = st.empty()\n\n# Replace the placeholder with some text:\nplaceholder.text("Hello")\n\n# Replace the text with a chart:\nplaceholder.line_chart({"data": [1, 5, 2, 6]})\n\n# Replace the chart with several elements:\nwith placeholder.container():\n    st.write("This is one element")\n    st.write("This is another")\n\n# Clear all those elements:\nplaceholder.empty()\n
\n
\n", - "description": "

Insert a single-element container.

\n

Inserts a container into your app that can be used to hold a single element.\nThis allows you to, for example, remove elements at any point, or replace\nseveral elements at once (using a child multi-element container).

\n

To insert/replace/clear an element on the returned container, you can\nuse "with" notation or just call methods directly on the returned object.\nSee examples below.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/empty.py#L24" - }, - "streamlit.error": { - "name": "error", - "signature": "st.error(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.error('This is an error', icon="\ud83d\udea8")\n
\n
\n", - "description": "Display error message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The error text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/alert.py#L39" - }, - "streamlit.exception": { - "name": "exception", - "signature": "st.exception(exception)", - "example": "
\n
\nimport streamlit as st\n\ne = RuntimeError('This is an exception of type RuntimeError')\nst.exception(e)\n
\n
\n", - "description": "Display an exception.", - "args": [ - { - "name": "exception", - "type_name": "Exception", - "is_optional": false, - "description": "

The exception to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/exception.py#L50" - }, - "streamlit.expander": { - "name": "expander", - "signature": "st.expander(label, expanded=False)", - "examples": "
\n

You can use with notation to insert any element into an expander

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nwith st.expander("See explanation"):\n    st.write(\\"\\"\\"\n        The chart above shows some numbers I picked for you.\n        I rolled actual dice for these, so they're *guaranteed* to\n        be random.\n    \\"\\"\\")\n    st.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\n\nst.bar_chart({"data": [1, 5, 2, 6, 2, 1]})\n\nexpander = st.expander("See explanation")\nexpander.write(\\"\\"\\"\n    The chart above shows some numbers I picked for you.\n    I rolled actual dice for these, so they're *guaranteed* to\n    be random.\n\\"\\"\\")\nexpander.image("https://static.streamlit.io/examples/dice.jpg")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert a multi-element container that can be expanded/collapsed.

\n

Inserts a container into your app that can be used to hold multiple elements\nand can be expanded or collapsed by the user. When collapsed, all that is\nvisible is the provided label.

\n

To add elements to the returned container, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

Currently, you may not put expanders inside another expander.

\n
\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A string to use as the header for the expander. The label can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

If True, initializes the expander in "expanded" state. Defaults to\nFalse (collapsed).

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L306" - }, - "streamlit.experimental_data_editor": { - "name": "experimental_data_editor", - "signature": "st.experimental_data_editor(data, *, width=None, height=None, use_container_width=False, num_rows=\"fixed\", disabled=False, key=None, on_change=None, args=None, kwargs=None)", - "examples": "
\n
\nimport streamlit as st\nimport pandas as pd\n\ndf = pd.DataFrame(\n    [\n       {"command": "st.selectbox", "rating": 4, "is_widget": True},\n       {"command": "st.balloons", "rating": 5, "is_widget": False},\n       {"command": "st.time_input", "rating": 3, "is_widget": True},\n   ]\n)\nedited_df = st.experimental_data_editor(df)\n\nfavorite_command = edited_df.loc[edited_df["rating"].idxmax()]["command"]\nst.markdown(f"Your favorite command is **{favorite_command}** \ud83c\udf88")\n
\n\n \n \n (view standalone Streamlit app)\n \n

You can also allow the user to add and delete rows by setting num_rows to "dynamic":

\n
\nimport streamlit as st\nimport pandas as pd\n\ndf = pd.DataFrame(\n    [\n       {"command": "st.selectbox", "rating": 4, "is_widget": True},\n       {"command": "st.balloons", "rating": 5, "is_widget": False},\n       {"command": "st.time_input", "rating": 3, "is_widget": True},\n   ]\n)\nedited_df = st.experimental_data_editor(df, num_rows="dynamic")\n\nfavorite_command = edited_df.loc[edited_df["rating"].idxmax()]["command"]\nst.markdown(f"Your favorite command is **{favorite_command}** \ud83c\udf88")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a data editor widget.

\n

Display a data editor widget that allows you to edit DataFrames and\nmany other data structures in a table-like UI.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pandas.Index, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.DataFrame, list, set, tuple, dict, or None", - "is_optional": false, - "description": "

The data to edit in the data editor.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired width of the data editor expressed in pixels. If None, the width will\nbe automatically determined.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the data editor expressed in pixels. If None, the height will\nbe automatically determined.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the data editor width to the width of the parent container.\nThis takes precedence over the width argument. Defaults to False.

\n", - "default": "False." - }, - { - "name": "num_rows", - "type_name": "\"fixed\" or \"dynamic\"", - "is_optional": false, - "description": "

Specifies if the user can add and delete rows in the data editor.\nIf "fixed", the user cannot add or delete rows. If "dynamic", the user can\nadd and delete rows in the data editor, but column sorting is disabled.\nDefaults to "fixed".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean which, if True, disables the data editor and prevents\nany edits. Defaults to False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

An optional string to use as the unique key for this widget. If this\nis omitted, a key will be generated for the widget based on its\ncontent. Multiple widgets of the same type may not share the same\nkey.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this data_editor's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "pd.DataFrame, pd.Styler, pyarrow.Table, np.ndarray, list, set, tuple, or dict.", - "is_generator": false, - "description": "

The edited data. The edited data is returned in its original data type if\nit corresponds to any of the supported return types. All other data types\nare returned as a pd.DataFrame.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/data_editor.py#L448" - }, - "streamlit.experimental_get_query_params": { - "name": "experimental_get_query_params", - "signature": "st.experimental_get_query_params()", - "example": "
\n

Let's say the user's web browser is at\nhttp://localhost:8501/?show_map=True&selected=asia&selected=america.\nThen, you can get the query parameters using the following:

\n
\nimport streamlit as st\n\nst.experimental_get_query_params()\n{"show_map": ["True"], "selected": ["asia", "america"]}\n
\n

Note that the values in the returned dict are always lists. This is\nbecause we internally use Python's urllib.parse.parse_qs(), which behaves\nthis way. And this behavior makes sense when you consider that every item\nin a query string is potentially a 1-element array.

\n
\n", - "description": "Return the query parameters that is currently showing in the browser's URL bar.", - "args": [], - "returns": [ - { - "type_name": "dict", - "is_generator": false, - "description": "

The current query parameters as a dict. "Query parameters" are the part of the URL that comes\nafter the first "?".

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/commands/query_params.py#L23" - }, - "streamlit.experimental_memo": { - "name": "experimental_memo", - "signature": "st.experimental_memo(func=None, *, ttl, max_entries, show_spinner, persist, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n\nd1 = fetch_and_clean_data(DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nd2 = fetch_and_clean_data(DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the data in d1 is the same as in d2.\n\nd3 = fetch_and_clean_data(DATA_URL_2)\n# This is a different URL, so the function executes.\n
\n

To set the persist parameter, use this command as follows:

\n
\nimport streamlit as st\n\n@st.cache_data(persist="disk")\ndef fetch_and_clean_data(url):\n    # Fetch data from URL here, and then clean it up.\n    return data\n
\n

By default, all parameters to a cached function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nconnection = make_database_connection()\nd1 = fetch_and_clean_data(connection, num_rows=10)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\nanother_connection = make_database_connection()\nd2 = fetch_and_clean_data(another_connection, num_rows=10)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _database_connection parameter was different\n# in both calls.\n
\n

A cached function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_data\ndef fetch_and_clean_data(_db_connection, num_rows):\n    # Fetch data from _db_connection here, and then clean it up.\n    return data\n\nfetch_and_clean_data.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return data (e.g. dataframe transforms, database queries, ML inference).

\n

Cached objects are stored in "pickled" form, which means that the return\nvalue of a cached function must be pickleable. Each caller of the cached\nfunction gets its own copy of the cached data.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_data.clear().

\n

To cache global resources, use st.cache_resource instead. Learn more\nabout caching at https://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function to cache. Streamlit hashes the function's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.\nNote that ttl is incompatible with persist="disk" - ttl will be\nignored if persist is specified.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na cache miss.

\n", - "default": "True" - }, - { - "name": "persist", - "type_name": "str or boolean or None", - "is_optional": false, - "description": "

Optional location to persist cached data to. Passing "disk" (or True)\nwill persist the cached data to the local disk. None (or False) will disable\npersistence. The default is None.

\n", - "default": "None." - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_data_api.py#L274" - }, - "streamlit.experimental_rerun": { - "name": "experimental_rerun", - "signature": "st.experimental_rerun()", - "description": "

Rerun the script immediately.

\n

When st.experimental_rerun() is called, the script is halted - no\nmore statements will be run, and the script will be queued to re-run\nfrom the top.

\n

If this function is called outside of Streamlit, it will raise an\nException.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/commands/execution_control.py#L46" - }, - "streamlit.experimental_set_query_params": { - "name": "experimental_set_query_params", - "signature": "st.experimental_set_query_params(**query_params)", - "example": "
\n

To point the user's web browser to something like\n"http://localhost:8501/?show_map=True&selected=asia&selected=america",\nyou would do the following:

\n
\nimport streamlit as st\n\nst.experimental_set_query_params(\n    show_map=True,\n    selected=["asia", "america"],\n)\n
\n
\n", - "description": "Set the query parameters that are shown in the browser's URL bar.", - "args": [ - { - "name": "**query_params", - "type_name": "dict", - "is_optional": false, - "description": "

The query parameters to set, as key-value pairs.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/commands/query_params.py#L56" - }, - "streamlit.experimental_show": { - "name": "experimental_show", - "signature": "st.experimental_show(*args)", - "notes": "
\n

This is an experimental feature with usage limitations:

\n
    \n
  • The method must be called with the name show.
  • \n
  • Must be called in one line of code, and only once per line.
  • \n
  • \n
    When passing multiple arguments the inclusion of , or ) in a string
    \n
    argument may cause an error.
    \n
    \n
  • \n
\n
\n", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\n\ndataframe = pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n})\nst.experimental_show(dataframe)\n
\n
\n", - "description": "

Write arguments and argument names to your app for debugging purposes.

\n

Show() has similar properties to write():

\n
\n
    \n
  1. You can pass in multiple arguments, all of which will be debugged.
  2. \n
  3. It returns None, so it's "slot" in the app cannot be reused.
  4. \n
\n
\n

Note: This is an experimental feature. See\nhttps://docs.streamlit.io/library/advanced-features/prerelease#experimental for more information.

\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to debug in the App.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/show.py#L23" - }, - "streamlit.experimental_singleton": { - "name": "experimental_singleton", - "signature": "st.experimental_singleton(func, *, ttl, max_entries, show_spinner, validate, experimental_allow_widgets)", - "example": "
\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(url):\n    # Create a database session object that points to the URL.\n    return session\n\ns1 = get_database_session(SESSION_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(SESSION_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value. This means that now the connection object in s1 is the same as in s2.\n\ns3 = get_database_session(SESSION_URL_2)\n# This is a different URL, so the function executes.\n
\n

By default, all parameters to a cache_resource function must be hashable.\nAny parameter whose name begins with _ will not be hashed. You can use\nthis as an "escape hatch" for parameters that are not hashable:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\ns1 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Actually executes the function, since this is the first time it was\n# encountered.\n\ns2 = get_database_session(create_sessionmaker(), DATA_URL_1)\n# Does not execute the function. Instead, returns its previously computed\n# value - even though the _sessionmaker parameter was different\n# in both calls.\n
\n

A cache_resource function's cache can be procedurally cleared:

\n
\nimport streamlit as st\n\n@st.cache_resource\ndef get_database_session(_sessionmaker, url):\n    # Create a database connection object that points to the URL.\n    return connection\n\nget_database_session.clear()\n# Clear all cached entries for this function.\n
\n
\n", - "description": "

Decorator to cache functions that return global resources (e.g. database connections, ML models).

\n

Cached objects are shared across all users, sessions, and reruns. They\nmust be thread-safe because they can be accessed from multiple threads\nconcurrently. If thread safety is an issue, consider using st.session_state\nto store resources per session instead.

\n

You can clear a function's cache with func.clear() or clear the entire\ncache with st.cache_resource.clear().

\n

To cache data, use st.cache_data instead. Learn more about caching at\nhttps://docs.streamlit.io/library/advanced-features/caching.

\n", - "args": [ - { - "name": "func", - "type_name": "callable", - "is_optional": false, - "description": "

The function that creates the cached resource. Streamlit hashes the\nfunction's source code.

\n", - "default": null - }, - { - "name": "ttl", - "type_name": "float or timedelta or None", - "is_optional": false, - "description": "

The maximum number of seconds to keep an entry in the cache, or\nNone if cache entries should not expire. The default is None.

\n", - "default": "None." - }, - { - "name": "max_entries", - "type_name": "int or None", - "is_optional": false, - "description": "

The maximum number of entries to keep in the cache, or None\nfor an unbounded cache. (When a new entry is added to a full cache,\nthe oldest cached entry will be removed.) The default is None.

\n", - "default": "None." - }, - { - "name": "show_spinner", - "type_name": "boolean or string", - "is_optional": false, - "description": "

Enable the spinner. Default is True to show a spinner when there is\na "cache miss" and the cached resource is being created. If string,\nvalue of show_spinner param will be used for spinner text.

\n", - "default": "True" - }, - { - "name": "validate", - "type_name": "callable or None", - "is_optional": false, - "description": "

An optional validation function for cached data. validate is called\neach time the cached value is accessed. It receives the cached value as\nits only parameter and it must return a boolean. If validate returns\nFalse, the current cached value is discarded, and the decorated function\nis called to compute a new value. This is useful e.g. to check the\nhealth of database connections.

\n", - "default": null - }, - { - "name": "experimental_allow_widgets", - "type_name": "boolean", - "is_optional": false, - "description": "

Allow widgets to be used in the cached function. Defaults to False.\nSupport for widgets in cached functions is currently experimental.\nSetting this parameter to True may lead to excessive memory use since the\nwidget value is treated as an additional input parameter to the cache.\nWe may remove support for this option at any time without notice.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_resource_api.py#L258" - }, - "streamlit.file_uploader": { - "name": "file_uploader", - "signature": "st.file_uploader(label, type=None, accept_multiple_files=False, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n

Insert a file uploader that accepts a single file at a time:

\n
\nimport streamlit as st\nimport pandas as pd\nfrom io import StringIO\n\nuploaded_file = st.file_uploader("Choose a file")\nif uploaded_file is not None:\n    # To read file as bytes:\n    bytes_data = uploaded_file.getvalue()\n    st.write(bytes_data)\n\n    # To convert to a string based IO:\n    stringio = StringIO(uploaded_file.getvalue().decode("utf-8"))\n    st.write(stringio)\n\n    # To read file as string:\n    string_data = stringio.read()\n    st.write(string_data)\n\n    # Can be used wherever a "file-like" object is accepted:\n    dataframe = pd.read_csv(uploaded_file)\n    st.write(dataframe)\n
\n

Insert a file uploader that accepts multiple files at a time:

\n
\nimport streamlit as st\n\nuploaded_files = st.file_uploader("Choose a CSV file", accept_multiple_files=True)\nfor uploaded_file in uploaded_files:\n    bytes_data = uploaded_file.read()\n    st.write("filename:", uploaded_file.name)\n    st.write(bytes_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a file uploader widget.

\n

By default, uploaded files are limited to 200MB. You can configure\nthis using the server.maxUploadSize config option. For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this file uploader is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str or list of str or None", - "is_optional": false, - "description": "

Array of allowed extensions. ['png', 'jpg']\nThe default is None, which means all extensions are allowed.

\n", - "default": "None" - }, - { - "name": "accept_multiple_files", - "type_name": "bool", - "is_optional": false, - "description": "

If True, allows the user to upload multiple files at the same time,\nin which case the return value will be a list of files.\nDefault: False

\n", - "default": "False" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

A tooltip that gets displayed next to the file uploader.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this file_uploader's value\nchanges.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the file uploader if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "None or UploadedFile or list of UploadedFile", - "is_generator": false, - "description": "
    \n
  • If accept_multiple_files is False, returns either None or\nan UploadedFile object.
  • \n
  • If accept_multiple_files is True, returns a list with the\nuploaded files as UploadedFile objects. If no files were\nuploaded, returns an empty list.
  • \n
\n

The UploadedFile class is a subclass of BytesIO, and therefore\nit is "file-like". This means you can pass them anywhere where\na file is expected.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/file_uploader.py#L205" - }, - "streamlit.form": { - "name": "form", - "signature": "st.form(key, clear_on_submit=False)", - "examples": "
\n

Inserting elements using "with" notation:

\n
\nimport streamlit as st\n\nwith st.form("my_form"):\n   st.write("Inside the form")\n   slider_val = st.slider("Form slider")\n   checkbox_val = st.checkbox("Form checkbox")\n\n   # Every form must have a submit button.\n   submitted = st.form_submit_button("Submit")\n   if submitted:\n       st.write("slider", slider_val, "checkbox", checkbox_val)\n\nst.write("Outside the form")\n
\n

Inserting elements out of order:

\n
\nimport streamlit as st\n\nform = st.form("my_form")\nform.slider("Inside the form")\nst.slider("Outside the form")\n\n# Now add a submit button to the form:\nform.form_submit_button("Submit")\n
\n
\n", - "description": "

Create a form that batches elements together with a "Submit" button.

\n

A form is a container that visually groups other elements and\nwidgets together, and contains a Submit button. When the form's\nSubmit button is pressed, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

To add elements to a form object, you can use "with" notation\n(preferred) or just call methods directly on the form. See\nexamples below.

\n

Forms have a few constraints:

\n
    \n
  • Every form must contain a st.form_submit_button.
  • \n
  • st.button and st.download_button cannot be added to a form.
  • \n
  • Forms can appear anywhere in your app (sidebar, columns, etc),\nbut they cannot be embedded inside other forms.
  • \n
\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

A string that identifies the form. Each form must have its own\nkey. (This key is not displayed to the user in the interface.)

\n", - "default": null - }, - { - "name": "clear_on_submit", - "type_name": "bool", - "is_optional": false, - "description": "

If True, all widgets inside the form will be reset to their default\nvalues after the user presses the Submit button. Defaults to False.\n(Note that Custom Components are unaffected by this flag, and\nwill not be reset to their defaults on form submission.)

\n", - "default": "values" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/form.py#L118" - }, - "streamlit.form_submit_button": { - "name": "form_submit_button", - "signature": "st.form_submit_button(label=\"Submit\", help=None, on_click=None, args=None, kwargs=None, *, type=\"secondary\", disabled=False, use_container_width=False)", - "description": "

Display a form submit button.

\n

When this button is clicked, all widget values inside the form will be\nsent to Streamlit in a batch.

\n

Every form must have a form_submit_button. A form_submit_button\ncannot exist outside a form.

\n

For more information about forms, check out our\nblog post.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this button is for.\nDefaults to "Submit".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str or None", - "is_optional": false, - "description": "

A tooltip that gets displayed when the button is hovered over.\nDefaults to None.

\n", - "default": "None." - }, - { - "name": "on_click", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this button is clicked.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "type", - "type_name": "\"secondary\" or \"primary\"", - "is_optional": false, - "description": "

An optional string that specifies the button type. Can be "primary" for a\nbutton with additional emphasis or "secondary" for a normal button. This\nargument can only be supplied by keyword. Defaults to "secondary".

\n", - "default": "s" - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the button if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which makes the button stretch its width to match the parent container.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "bool", - "is_generator": false, - "description": "

True if the button was clicked.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/form.py#L211" - }, - "streamlit.get_option": { - "name": "get_option", - "signature": "st.get_option(key)", - "description": "

Return the current value of a given Streamlit config option.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/config.py#L128" - }, - "streamlit.graphviz_chart": { - "name": "graphviz_chart", - "signature": "st.graphviz_chart(figure_or_dot, use_container_width=False)", - "example": "
\n
\nimport streamlit as st\nimport graphviz\n\n# Create a graphlib graph object\ngraph = graphviz.Digraph()\ngraph.edge('run', 'intr')\ngraph.edge('intr', 'runbl')\ngraph.edge('runbl', 'run')\ngraph.edge('run', 'kernel')\ngraph.edge('kernel', 'zombie')\ngraph.edge('kernel', 'sleep')\ngraph.edge('kernel', 'runmem')\ngraph.edge('sleep', 'swap')\ngraph.edge('swap', 'runswap')\ngraph.edge('runswap', 'new')\ngraph.edge('runswap', 'runmem')\ngraph.edge('new', 'runmem')\ngraph.edge('sleep', 'runmem')\n\nst.graphviz_chart(graph)\n
\n

Or you can render the chart from the graph using GraphViz's Dot\nlanguage:

\n
\nst.graphviz_chart('''\n    digraph {\n        run -> intr\n        intr -> runbl\n        runbl -> run\n        run -> kernel\n        kernel -> zombie\n        kernel -> sleep\n        kernel -> runmem\n        sleep -> swap\n        swap -> runswap\n        runswap -> new\n        runswap -> runmem\n        new -> runmem\n        sleep -> runmem\n    }\n''')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a graph using the dagre-d3 library.", - "args": [ - { - "name": "figure_or_dot", - "type_name": "graphviz.dot.Graph, graphviz.dot.Digraph, str", - "is_optional": false, - "description": "

The Graphlib graph object or dot string to display

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/graphviz_chart.py#L39" - }, - "streamlit.header": { - "name": "header", - "signature": "st.header(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.header('This is a header')\nst.header('A header with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in header formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/heading.py#L31" - }, - "streamlit.help": { - "name": "help", - "signature": "st.help(obj)", - "example": "
\n

Don't remember how to initialize a dataframe? Try this:

\n
\nimport streamlit as st\nimport pandas\n\nst.help(pandas.DataFrame)\n
\n

Want to quickly check what datatype is output by a certain function?\nTry:

\n
\nimport streamlit as st\n\nx = my_poorly_documented_function()\nst.help(x)\n
\n
\n", - "description": "

Display object's doc string, nicely formatted.

\n

Displays the doc string for this object.

\n", - "args": [ - { - "name": "obj", - "type_name": "Object", - "is_optional": false, - "description": "

The object whose docstring should be displayed.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/doc_string.py#L44" - }, - "streamlit.image": { - "name": "image", - "signature": "st.image(image, caption=None, width=None, use_column_width=None, clamp=False, channels=\"RGB\", output_format=\"auto\")", - "example": "
\n
\nimport streamlit as st\nfrom PIL import Image\n\nimage = Image.open('sunrise.jpg')\n\nst.image(image, caption='Sunrise by the mountains')\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display an image or list of images.", - "args": [ - { - "name": "image", - "type_name": "numpy.ndarray, [numpy.ndarray], BytesIO, str, or [str]", - "is_optional": false, - "description": "

Monochrome image of shape (w,h) or (w,h,1)\nOR a color image of shape (w,h,3)\nOR an RGBA image of shape (w,h,4)\nOR a URL to fetch the image from\nOR a path of a local image file\nOR an SVG XML string like <svg xmlns=...</svg>\nOR a list of one of the above, to display multiple images.

\n", - "default": null - }, - { - "name": "caption", - "type_name": "str or list of str", - "is_optional": false, - "description": "

Image caption. If displaying multiple images, caption should be a\nlist of captions (one for each image).

\n", - "default": null - }, - { - "name": "width", - "type_name": "int or None", - "is_optional": false, - "description": "

Image width. None means use the image width,\nbut do not exceed the width of the column.\nShould be set for SVG images, as they have no default image width.

\n", - "default": "image" - }, - { - "name": "use_column_width", - "type_name": "'auto' or 'always' or 'never' or bool", - "is_optional": false, - "description": "

If 'auto', set the image's width to its natural size,\nbut do not exceed the width of the column.\nIf 'always' or True, set the image's width to the column width.\nIf 'never' or False, set the image's width to its natural size.\nNote: if set, use_column_width takes precedence over the width parameter.

\n", - "default": null - }, - { - "name": "clamp", - "type_name": "bool", - "is_optional": false, - "description": "

Clamp image pixel values to a valid range ([0-255] per channel).\nThis is only meaningful for byte array images; the parameter is\nignored for image URLs. If this is not set, and an image has an\nout-of-range value, an error will be thrown.

\n", - "default": null - }, - { - "name": "channels", - "type_name": "'RGB' or 'BGR'", - "is_optional": false, - "description": "

If image is an nd.array, this parameter denotes the format used to\nrepresent color information. Defaults to 'RGB', meaning\nimage[:, :, 0] is the red channel, image[:, :, 1] is green, and\nimage[:, :, 2] is blue. For images coming from libraries like\nOpenCV you should set this to 'BGR', instead.

\n", - "default": "s" - }, - { - "name": "output_format", - "type_name": "'JPEG', 'PNG', or 'auto'", - "is_optional": false, - "description": "

This parameter specifies the format to use when transferring the\nimage data. Photos should use the JPEG format for lossy compression\nwhile diagrams should use the PNG format for lossless compression.\nDefaults to 'auto' which identifies the compression type based\non the type and format of the image argument.

\n", - "default": "s" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/image.py#L67" - }, - "streamlit.info": { - "name": "info", - "signature": "st.info(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.info('This is a purely informational message', icon="\u2139\ufe0f")\n
\n
\n", - "description": "Display an informational message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The info text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/alert.py#L103" - }, - "streamlit.json": { - "name": "json", - "signature": "st.json(body, *, expanded=True)", - "example": "
\n
\nimport streamlit as st\n\nst.json({\n    'foo': 'bar',\n    'baz': 'boz',\n    'stuff': [\n        'stuff 1',\n        'stuff 2',\n        'stuff 3',\n        'stuff 5',\n    ],\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display object or string as a pretty-printed JSON string.", - "args": [ - { - "name": "body", - "type_name": "object or str", - "is_optional": false, - "description": "

The object to print as JSON. All referenced objects should be\nserializable to JSON as well. If object is a string, we assume it\ncontains serialized JSON.

\n", - "default": null - }, - { - "name": "expanded", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean that allows the user to set whether the initial\nstate of this json element should be expanded. Defaults to True.\nThis argument can only be supplied by keyword.

\n", - "default": "True." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/json.py#L35" - }, - "streamlit.latex": { - "name": "latex", - "signature": "st.latex(body)", - "example": "
\n
\nimport streamlit as st\n\nst.latex(r'''\n    a + ar + a r^2 + a r^3 + \\cdots + a r^{n-1} =\n    \\sum_{k=0}^{n-1} ar^k =\n    a \\left(\\frac{1-r^{n}}{1-r}\\right)\n    ''')\n
\n
\n", - "description": "

Display mathematical expressions formatted as LaTeX.

\n

Supported LaTeX functions are listed at\nhttps://katex.org/docs/supported.html.

\n", - "args": [ - { - "name": "body", - "type_name": "str or SymPy expression", - "is_optional": false, - "description": "

The string or SymPy expression to display as LaTeX. If str, it's\na good idea to use raw Python strings since LaTeX uses backslashes\na lot.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/markdown.py#L174" - }, - "streamlit.line_chart": { - "name": "line_chart", - "signature": "st.line_chart(data=None, *, x=None, y=None, width=0, height=0, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(20, 3),\n    columns=['a', 'b', 'c'])\n\nst.line_chart(chart_data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a line chart.

\n

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

\n

If st.line_chart does not guess the data specification\ncorrectly, try specifying your desired chart using st.altair_chart.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict or None", - "is_optional": false, - "description": "

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

\n", - "default": null - }, - { - "name": "x", - "type_name": "str or None", - "is_optional": false, - "description": "

Column name to use for the x-axis. If None, uses the data index for the x-axis.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "y", - "type_name": "str, sequence of str, or None", - "is_optional": false, - "description": "

Column name(s) to use for the y-axis. If a sequence of strings, draws several series\non the same chart by melting your wide-format table into a long-format table behind\nthe scenes. If None, draws the data of all remaining columns as data series.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The chart width in pixels. If 0, selects the width automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The chart height in pixels. If 0, selects the height automatically.\nThis argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the width argument.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L160" - }, - "streamlit.map": { - "name": "map", - "signature": "st.map(data=None, zoom=None, use_container_width=True)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n    np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n    columns=['lat', 'lon'])\n\nst.map(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a map with points on it.

\n

This is a wrapper around st.pydeck_chart to quickly create scatterplot\ncharts on top of a map, with auto-centering and auto-zoom.

\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more\ninfo on how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The data to be plotted. Must have two columns:

\n
    \n
  • latitude called 'lat', 'latitude', 'LAT', 'LATITUDE'
  • \n
  • longitude called 'lon', 'longitude', 'LON', 'LONGITUDE'.
  • \n
\n", - "default": null - }, - { - "name": "zoom", - "type_name": "int", - "is_optional": false, - "description": "

Zoom level as specified in\nhttps://wiki.openstreetmap.org/wiki/Zoom_levels

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/map.py#L76" - }, - "streamlit.markdown": { - "name": "markdown", - "signature": "st.markdown(body, unsafe_allow_html=False)", - "examples": "
\n
\nimport streamlit as st\n\nst.markdown('Streamlit is **_really_ cool**.')\nst.markdown(\u201dThis text is :red[colored red], and this is **:blue[colored]** and bold.\u201d)\nst.markdown(":green[$\\sqrt{x^2+y^2}=1$] is a Pythagorean identity. :pencil:")\n
\n
\n", - "description": "Display string formatted as Markdown.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

By default, any HTML tags found in the body will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write\nsecure HTML, so by using this argument you may be compromising your\nusers' security. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/markdown.py#L29" - }, - "streamlit.metric": { - "name": "metric", - "signature": "st.metric(label, value, delta=None, delta_color=\"normal\", help=None, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nst.metric(label="Temperature", value="70 \u00b0F", delta="1.2 \u00b0F")\n
\n\n \n \n (view standalone Streamlit app)\n \n

st.metric looks especially nice in combination with st.columns:

\n
\nimport streamlit as st\n\ncol1, col2, col3 = st.columns(3)\ncol1.metric("Temperature", "70 \u00b0F", "1.2 \u00b0F")\ncol2.metric("Wind", "9 mph", "-8%")\ncol3.metric("Humidity", "86%", "4%")\n
\n\n \n \n (view standalone Streamlit app)\n \n

The delta indicator color can also be inverted or turned off:

\n
\nimport streamlit as st\n\nst.metric(label="Gas price", value=4, delta=-0.5,\n    delta_color="inverse")\n\nst.metric(label="Active developers", value=123, delta=123,\n    delta_color="off")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a metric in big bold font, with an optional indicator of how the metric changed.

\n

Tip: If you want to display a large number, it may be a good idea to\nshorten it using packages like millify\nor numerize. E.g. 1234 can be\ndisplayed as 1.2k using st.metric("Short number", millify(1234)).

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

The header or title for the metric. The label can optionally contain\nMarkdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Value of the metric. None is rendered as a long dash.

\n", - "default": null - }, - { - "name": "delta", - "type_name": "int, float, str, or None", - "is_optional": false, - "description": "

Indicator of how the metric changed, rendered with an arrow below\nthe metric. If delta is negative (int/float) or starts with a minus\nsign (str), the arrow points down and the text is red; else the\narrow points up and the text is green. If None (default), no delta\nindicator is shown.

\n", - "default": null - }, - { - "name": "delta_color", - "type_name": "str", - "is_optional": false, - "description": "

If "normal" (default), the delta indicator is shown as described\nabove. If "inverse", it is red when positive and green when\nnegative. This is useful when a negative change is considered\ngood, e.g. if cost decreased. If "off", delta is shown in gray\nregardless of its value.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the metric label.

\n", - "default": null - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/metric.py#L46" - }, - "streamlit.multiselect": { - "name": "multiselect", - "signature": "st.multiselect(label, options, default=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\", max_selections=None)", - "example": "
\n
\nimport streamlit as st\n\noptions = st.multiselect(\n    'What are your favorite colors',\n    ['Green', 'Yellow', 'Red', 'Blue'],\n    ['Yellow', 'Red'])\n\nst.write('You selected:', options)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a multiselect widget.

\n

The multiselect widget starts as empty.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence[V], numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "default", - "type_name": "[V], V, or None", - "is_optional": false, - "description": "

List of default values. Can also be a single value.

\n", - "default": "values." - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of selectbox options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe multiselect.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the multiselect.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this multiselect's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the multiselect widget if set\nto True. The default is False. This argument can only be supplied\nby keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - }, - { - "name": "max_selections", - "type_name": "int", - "is_optional": false, - "description": "

The max selections that can be selected at a time.\nThis argument can only be supplied by keyword.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "list", - "is_generator": false, - "description": "

A list with the selected options

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/multiselect.py#L145" - }, - "streamlit.number_input": { - "name": "number_input", - "signature": "st.number_input(label, min_value=None, max_value=None, value=, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\nnumber = st.number_input('Insert a number')\nst.write('The current number is ', number)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a numeric input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The minimum permitted value.\nIf None, there will be no minimum.

\n", - "default": null - }, - { - "name": "max_value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The maximum permitted value.\nIf None, there will be no maximum.

\n", - "default": null - }, - { - "name": "value", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The value of this widget when it first renders.\nDefaults to min_value, or 0.0 if min_value is None

\n", - "default": "min_value" - }, - { - "name": "step", - "type_name": "int or float or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 otherwise.\nIf the value is not specified, the format parameter will be used.

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. Output must be purely numeric. This does not impact\nthe return value. Valid formatters: %d %e %f %g %i %u

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this number_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the number input if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int or float", - "is_generator": false, - "description": "

The current value of the numeric input widget. The return type\nwill match the data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/number_input.py#L66" - }, - "streamlit.plotly_chart": { - "name": "plotly_chart", - "signature": "st.plotly_chart(figure_or_data, use_container_width=False, sharing=\"streamlit\", theme=\"streamlit\", **kwargs)", - "example": "
\n

The example below comes straight from the examples at\nhttps://plot.ly/python:

\n
\nimport streamlit as st\nimport numpy as np\nimport plotly.figure_factory as ff\n\n# Add histogram data\nx1 = np.random.randn(200) - 2\nx2 = np.random.randn(200)\nx3 = np.random.randn(200) + 2\n\n# Group data together\nhist_data = [x1, x2, x3]\n\ngroup_labels = ['Group 1', 'Group 2', 'Group 3']\n\n# Create distplot with custom bin_size\nfig = ff.create_distplot(\n        hist_data, group_labels, bin_size=[.1, .25, .5])\n\n# Plot!\nst.plotly_chart(fig, use_container_width=True)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display an interactive Plotly chart.

\n

Plotly is a charting library for Python. The arguments to this function\nclosely follow the ones for Plotly's plot() function. You can find\nmore about Plotly at https://plot.ly/python.

\n

To show Plotly charts in Streamlit, call st.plotly_chart wherever you\nwould call Plotly's py.plot or py.iplot.

\n", - "args": [ - { - "name": "figure_or_data", - "type_name": "plotly.graph_objs.Figure, plotly.graph_objs.Data,", - "is_optional": false, - "description": "

dict/list of plotly.graph_objs.Figure/Data

\n

See https://plot.ly/python/ for examples of graph descriptions.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over the figure's native width value.

\n", - "default": null - }, - { - "name": "sharing", - "type_name": "{'streamlit', 'private', 'secret', 'public'}", - "is_optional": false, - "description": "

Use 'streamlit' to insert the plot and all its dependencies\ndirectly in the Streamlit app using plotly's offline mode (default).\nUse any other sharing mode to send the chart to Plotly chart studio, which\nrequires an account. See https://plot.ly/python/chart-studio/ for more information.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": null, - "is_optional": null, - "description": "

Any argument accepted by Plotly's plot() function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/plotly_chart.py#L81" - }, - "streamlit.progress": { - "name": "progress", - "signature": "st.progress(value, text=None)", - "example": "
\n

Here is an example of a progress bar increasing over time:

\n
\nimport streamlit as st\nimport time\n\nprogress_text = "Operation in progress. Please wait."\nmy_bar = st.progress(0, text=progress_text)\n\nfor percent_complete in range(100):\n    time.sleep(0.1)\n    my_bar.progress(percent_complete + 1, text=progress_text)\n
\n
\n", - "description": "Display a progress bar.", - "args": [ - { - "name": "value", - "type_name": "int or float", - "is_optional": false, - "description": "

0 <= value <= 100 for int

\n

0.0 <= value <= 1.0 for float

\n", - "default": null - }, - { - "name": "text", - "type_name": "str or None", - "is_optional": false, - "description": "

A message to display above the progress bar. The text can optionally\ncontain Markdown and supports the following elements: Bold, Italics,\nStrikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/progress.py#L66" - }, - "streamlit.pydeck_chart": { - "name": "pydeck_chart", - "signature": "st.pydeck_chart(pydeck_obj=None, use_container_width=False)", - "example": "
\n

Here's a chart using a HexagonLayer and a ScatterplotLayer. It uses either the\nlight or dark map style, based on which Streamlit theme is currently active:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport pydeck as pdk\n\nchart_data = pd.DataFrame(\n   np.random.randn(1000, 2) / [50, 50] + [37.76, -122.4],\n   columns=['lat', 'lon'])\n\nst.pydeck_chart(pdk.Deck(\n    map_style=None,\n    initial_view_state=pdk.ViewState(\n        latitude=37.76,\n        longitude=-122.4,\n        zoom=11,\n        pitch=50,\n    ),\n    layers=[\n        pdk.Layer(\n           'HexagonLayer',\n           data=chart_data,\n           get_position='[lon, lat]',\n           radius=200,\n           elevation_scale=4,\n           elevation_range=[0, 1000],\n           pickable=True,\n           extruded=True,\n        ),\n        pdk.Layer(\n            'ScatterplotLayer',\n            data=chart_data,\n            get_position='[lon, lat]',\n            get_color='[200, 30, 0, 160]',\n            get_radius=200,\n        ),\n    ],\n))\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

To make the PyDeck chart's style consistent with Streamlit's theme,\nyou can set map_style=None in the pydeck.Deck object.

\n
\n
\n", - "description": "

Draw a chart using the PyDeck library.

\n

This supports 3D maps, point clouds, and more! More info about PyDeck\nat https://deckgl.readthedocs.io/en/latest/.

\n

These docs are also quite useful:

\n\n

When using this command, we advise all users to use a personal Mapbox\ntoken. This ensures the map tiles used in this chart are more\nrobust. You can do this with the mapbox.token config option.

\n

To get a token for yourself, create an account at\nhttps://mapbox.com. It's free! (for moderate usage levels). For more info\non how to set config options, see\nhttps://docs.streamlit.io/library/advanced-features/configuration#set-configuration-options

\n", - "args": [ - { - "name": "pydeck_obj", - "type_name": "pydeck.Deck or None", - "is_optional": false, - "description": "

Object specifying the PyDeck chart to draw.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/deck_gl_json_chart.py#L36" - }, - "streamlit.pyplot": { - "name": "pyplot", - "signature": "st.pyplot(fig=None, clear_figure=None, **kwargs)", - "notes": "
\n
\n

Note

\n

Deprecation warning. After December 1st, 2020, we will remove the ability\nto specify no arguments in st.pyplot(), as that requires the use of\nMatplotlib's global figure object, which is not thread-safe. So\nplease always pass a figure object as shown in the example section\nabove.

\n
\n

Matplotlib supports several types of "backends". If you're getting an\nerror using Matplotlib with Streamlit, try setting your backend to "TkAgg":

\n
\necho "backend: TkAgg" >> ~/.matplotlib/matplotlibrc\n
\n

For more information, see https://matplotlib.org/faq/usage_faq.html.

\n
\n", - "example": "
\n
\nimport streamlit as st\nimport matplotlib.pyplot as plt\nimport numpy as np\n\narr = np.random.normal(1, 1, size=100)\nfig, ax = plt.subplots()\nax.hist(arr, bins=20)\n\nst.pyplot(fig)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a matplotlib.pyplot figure.", - "args": [ - { - "name": "fig", - "type_name": "Matplotlib Figure", - "is_optional": false, - "description": "

The figure to plot. When this argument isn't specified, this\nfunction will render the global figure (but this is deprecated,\nas described below)

\n", - "default": null - }, - { - "name": "clear_figure", - "type_name": "bool", - "is_optional": false, - "description": "

If True, the figure will be cleared after being rendered.\nIf False, the figure will not be cleared after being rendered.\nIf left unspecified, we pick a default based on the value of fig.

\n
    \n
  • If fig is set, defaults to False.
  • \n
  • If fig is not set, defaults to True. This simulates Jupyter's\napproach to matplotlib rendering.
  • \n
\n", - "default": "based" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Arguments to pass to Matplotlib's savefig function.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/pyplot.py#L38" - }, - "streamlit.radio": { - "name": "radio", - "signature": "st.radio(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, horizontal=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ngenre = st.radio(\n    "What\\'s your favorite movie genre",\n    ('Comedy', 'Drama', 'Documentary'))\n\nif genre == 'Comedy':\n    st.write('You selected comedy.')\nelse:\n    st.write("You didn\\'t select comedy.")\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a radio button widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this radio group is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the radio options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of radio options. It receives\nthe raw option as an argument and should output the label to be\nshown for that option. This has no impact on the return value of\nthe radio.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the radio.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this radio's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the radio button if set to\nTrue. The default is False. This argument can only be supplied by\nkeyword.

\n", - "default": "False." - }, - { - "name": "horizontal", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which orients the radio group horizontally.\nThe default is false (vertical buttons). This argument can only\nbe supplied by keyword.

\n", - "default": "false" - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/radio.py#L75" - }, - "streamlit.select_slider": { - "name": "select_slider", - "signature": "st.select_slider(label, options=(), value=None, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\nimport streamlit as st\n\ncolor = st.select_slider(\n    'Select a color of the rainbow',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'])\nst.write('My favorite color is', color)\n
\n

And here's an example of a range select slider:

\n
\nimport streamlit as st\n\nstart_color, end_color = st.select_slider(\n    'Select a range of color wavelength',\n    options=['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'],\n    value=('red', 'blue'))\nst.write('You selected wavelengths between', start_color, 'and', end_color)\n
\n\n \n \n (view standalone Streamlit app)\n \n ", - "description": "

Display a slider widget to select items from a list.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.select_slider and st.slider is that\nselect_slider accepts any datatype and takes an iterable set of\noptions, while slider only accepts numerical or date/time data and\ntakes a range as input.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the slider options. All options will be cast to str\ninternally by default. For pandas.DataFrame, the first column is\nselected.

\n", - "default": "." - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to first option.

\n", - "default": "first" - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels from the options.\nargument. It receives the option as an argument and its output\nwill be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the select slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this select_slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the select slider if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any value or tuple of any value", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/select_slider.py#L106" - }, - "streamlit.selectbox": { - "name": "selectbox", - "signature": "st.selectbox(label, options, index=0, format_func=special_internal_function, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\noption = st.selectbox(\n    'How would you like to be contacted?',\n    ('Email', 'Home phone', 'Mobile phone'))\n\nst.write('You selected:', option)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a select widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this select widget is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "options", - "type_name": "Sequence, numpy.ndarray, pandas.Series, pandas.DataFrame, or pandas.Index", - "is_optional": false, - "description": "

Labels for the select options. This will be cast to str internally\nby default. For pandas.DataFrame, the first column is selected.

\n", - "default": "." - }, - { - "name": "index", - "type_name": "int", - "is_optional": false, - "description": "

The index of the preselected option on first render.

\n", - "default": null - }, - { - "name": "format_func", - "type_name": "function", - "is_optional": false, - "description": "

Function to modify the display of the labels. It receives the option\nas an argument and its output will be cast to str.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the selectbox.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this selectbox's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the selectbox if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "any", - "is_generator": false, - "description": "

The selected option

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/selectbox.py#L71" - }, - "streamlit.set_option": { - "name": "set_option", - "signature": "st.set_option(key, value)", - "description": "

Set config option.

\n
\n
Currently, only the following config options can be set within the script itself:
\n
    \n
  • client.caching
  • \n
  • client.displayEnabled
  • \n
  • deprecation.*
  • \n
\n
\n
\n

Calling with any other options will raise StreamlitAPIException.

\n

Run streamlit config show in the terminal to see all available options.

\n", - "args": [ - { - "name": "key", - "type_name": "str", - "is_optional": false, - "description": "

The config option key of the form "section.optionName". To see all\navailable options, run streamlit config show on a terminal.

\n", - "default": null - }, - { - "name": "value", - "type_name": null, - "is_optional": null, - "description": "

The new value to assign to this config option.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/config.py#L89" - }, - "streamlit.set_page_config": { - "name": "set_page_config", - "signature": "st.set_page_config(page_title=None, page_icon=None, layout=\"centered\", initial_sidebar_state=\"auto\", menu_items=None)", - "example": "
\nimport streamlit as st\n\nst.set_page_config(\n    page_title="Ex-stream-ly Cool App",\n    page_icon="\ud83e\uddca",\n    layout="wide",\n    initial_sidebar_state="expanded",\n    menu_items={\n        'Get Help': 'https://www.extremelycoolapp.com/help',\n        'Report a bug': "https://www.extremelycoolapp.com/bug",\n        'About': "# This is a header. This is an *extremely* cool app!"\n    }\n)\n
\n", - "description": "

Configures the default settings of the page.

\n
\n

Note

\n

This must be the first Streamlit command used in your app, and must only\nbe set once.

\n
\n", - "args": [ - { - "name": "page_title", - "type_name": "str or None", - "is_optional": false, - "description": "

The page title, shown in the browser tab. If None, defaults to the\nfilename of the script ("app.py" would show "app \u2022 Streamlit").

\n", - "default": "the" - }, - { - "name": "page_icon", - "type_name": "Anything supported by st.image or str or None", - "is_optional": false, - "description": "

The page favicon.\nBesides the types supported by st.image (like URLs or numpy arrays),\nyou can pass in an emoji as a string ("\ud83e\udd88") or a shortcode (":shark:").\nIf you're feeling lucky, try "random" for a random emoji!\nEmoji icons are courtesy of Twemoji and loaded from MaxCDN.

\n", - "default": null - }, - { - "name": "layout", - "type_name": "\"centered\" or \"wide\"", - "is_optional": false, - "description": "

How the page content should be laid out. Defaults to "centered",\nwhich constrains the elements into a centered column of fixed width;\n"wide" uses the entire screen.

\n", - "default": "s" - }, - { - "name": "initial_sidebar_state", - "type_name": "\"auto\" or \"expanded\" or \"collapsed\"", - "is_optional": false, - "description": "

How the sidebar should start out. Defaults to "auto",\nwhich hides the sidebar on mobile-sized devices, and shows it otherwise.\n"expanded" shows the sidebar initially; "collapsed" hides it.

\n", - "default": "s" - }, - { - "name": "menu_items", - "type_name": "dict", - "is_optional": false, - "description": "

Configure the menu that appears on the top-right side of this app.\nThe keys in this dict denote the menu item you'd like to configure:

\n
    \n
  • \n
    "Get help": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "Report a Bug": str or None
    \n
    The URL this menu item should point to.\nIf None, hides this menu item.
    \n
    \n
  • \n
  • \n
    "About": str or None
    \n
    A markdown string to show in the About dialog.\nIf None, only shows Streamlit's default About text.
    \n
    \n
  • \n
\n

The URL may also refer to an email address e.g. mailto:john@example.com.

\n", - "default": "About" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/commands/page_config.py#L114" - }, - "streamlit.slider": { - "name": "slider", - "signature": "st.slider(label, min_value=None, max_value=None, value=None, step=None, format=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "examples": "
\n
\nimport streamlit as st\n\nage = st.slider('How old are you?', 0, 130, 25)\nst.write("I'm ", age, 'years old')\n
\n

And here's an example of a range slider:

\n
\nimport streamlit as st\n\nvalues = st.slider(\n    'Select a range of values',\n    0.0, 100.0, (25.0, 75.0))\nst.write('Values:', values)\n
\n

This is a range time slider:

\n
\nimport streamlit as st\nfrom datetime import time\n\nappointment = st.slider(\n    "Schedule your appointment:",\n    value=(time(11, 30), time(12, 45)))\nst.write("You're scheduled for:", appointment)\n
\n

Finally, a datetime slider:

\n
\nimport streamlit as st\nfrom datetime import datetime\n\nstart_time = st.slider(\n    "When do you start?",\n    value=datetime(2020, 1, 1, 9, 30),\n    format="MM/DD/YY - hh:mm")\nst.write("Start time:", start_time)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a slider widget.

\n

This supports int, float, date, time, and datetime types.

\n

This also allows you to render a range slider by passing a two-element\ntuple or list as the value.

\n

The difference between st.slider and st.select_slider is that\nslider only accepts numerical or date/time data and takes a range as\ninput, while select_slider accepts any datatype and takes an iterable\nset of options.

\n", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this slider is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "min_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The minimum permitted value.\nDefaults to 0 if the value is an int, 0.0 if a float,\nvalue - timedelta(days=14) if a date/datetime, time.min if a time

\n", - "default": "0" - }, - { - "name": "max_value", - "type_name": "a supported type or None", - "is_optional": false, - "description": "

The maximum permitted value.\nDefaults to 100 if the value is an int, 1.0 if a float,\nvalue + timedelta(days=14) if a date/datetime, time.max if a time

\n", - "default": "100" - }, - { - "name": "value", - "type_name": "a supported type or a tuple/list of supported types or None", - "is_optional": false, - "description": "

The value of the slider when it first renders. If a tuple/list\nof two values is passed here, then a range slider with those lower\nand upper bounds is rendered. For example, if set to (1, 10) the\nslider will have a selectable range between 1 and 10.\nDefaults to min_value.

\n", - "default": "min_value." - }, - { - "name": "step", - "type_name": "int/float/timedelta or None", - "is_optional": false, - "description": "

The stepping interval.\nDefaults to 1 if the value is an int, 0.01 if a float,\ntimedelta(days=1) if a date/datetime, timedelta(minutes=15) if a time\n(or if max_value - min_value < 1 day)

\n", - "default": "1" - }, - { - "name": "format", - "type_name": "str or None", - "is_optional": false, - "description": "

A printf-style format string controlling how the interface should\ndisplay numbers. This does not impact the return value.\nFormatter for int/float supports: %d %e %f %g %i\nFormatter for date/time/datetime uses Moment.js notation:\nhttps://momentjs.com/docs/#/displaying/format/

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the slider.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this slider's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the slider if set to True. The\ndefault is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "int/float/date/time/datetime or tuple of int/float/date/time/datetime", - "is_generator": false, - "description": "

The current value of the slider widget. The return type will match\nthe data type of the value parameter.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/slider.py#L171" - }, - "streamlit.snow": { - "name": "snow", - "signature": "st.snow()", - "example": "
\n
\nimport streamlit as st\n\nst.snow()\n
\n

...then watch your app and get ready for a cool celebration!

\n
\n", - "description": "Draw celebratory snowfall.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/snow.py#L25" - }, - "streamlit.spinner": { - "name": "spinner", - "signature": "st.spinner(text=\"In progress...\")", - "example": "
\n
\nimport time\nimport streamlit as st\n\nwith st.spinner('Wait for it...'):\n    time.sleep(5)\nst.success('Done!')\n
\n
\n", - "description": "Temporarily displays a message while executing a block of code.", - "args": [ - { - "name": "text", - "type_name": "str", - "is_optional": false, - "description": "

A message to display while executing that block

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/spinner.py#L23" - }, - "streamlit.stop": { - "name": "stop", - "signature": "st.stop()", - "example": "
\n
\nimport streamlit as st\n\nname = st.text_input('Name')\nif not name:\n  st.warning('Please input a name.')\n  st.stop()\nst.success('Thank you for inputting a name.')\n
\n
\n", - "description": "

Stops execution immediately.

\n

Streamlit will not run any statements after st.stop().\nWe recommend rendering a message to explain why the script has stopped.\nWhen run outside of Streamlit, this will raise an Exception.

\n", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/commands/execution_control.py#L25" - }, - "streamlit.subheader": { - "name": "subheader", - "signature": "st.subheader(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.subheader('This is a subheader')\nst.subheader('A subheader with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "Display text in subheader formatting.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/heading.py#L76" - }, - "streamlit.success": { - "name": "success", - "signature": "st.success(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.success('This is a success message!', icon="\u2705")\n
\n
\n", - "description": "Display a success message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The success text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/alert.py#L136" - }, - "streamlit.table": { - "name": "table", - "signature": "st.table(data=None)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf = pd.DataFrame(\n   np.random.randn(10, 5),\n   columns=('col %d' % i for i in range(5)))\n\nst.table(df)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Display a static table.

\n

This differs from st.dataframe in that the table in this case is\nstatic: its entire contents are laid out directly on the page.

\n", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, snowflake.snowpark.table.Table, Iterable, dict, or None", - "is_optional": false, - "description": "

The table data.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L122" - }, - "streamlit.tabs": { - "name": "tabs", - "signature": "st.tabs(tabs)", - "examples": "
\n

You can use with notation to insert any element into a tab:

\n
\nimport streamlit as st\n\ntab1, tab2, tab3 = st.tabs(["Cat", "Dog", "Owl"])\n\nwith tab1:\n   st.header("A cat")\n   st.image("https://static.streamlit.io/examples/cat.jpg", width=200)\n\nwith tab2:\n   st.header("A dog")\n   st.image("https://static.streamlit.io/examples/dog.jpg", width=200)\n\nwith tab3:\n   st.header("An owl")\n   st.image("https://static.streamlit.io/examples/owl.jpg", width=200)\n
\n\n \n \n (view standalone Streamlit app)\n \n

Or you can just call methods directly in the returned objects:

\n
\nimport streamlit as st\nimport numpy as np\n\ntab1, tab2 = st.tabs(["\ud83d\udcc8 Chart", "\ud83d\uddc3 Data"])\ndata = np.random.randn(10, 1)\n\ntab1.subheader("A tab with a chart")\ntab1.line_chart(data)\n\ntab2.subheader("A tab with the data")\ntab2.write(data)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Insert containers separated into tabs.

\n

Inserts a number of multi-element containers as tabs.\nTabs are a navigational element that allows users to easily\nmove between groups of related content.

\n

To add elements to the returned containers, you can use "with" notation\n(preferred) or just call methods directly on the returned object. See\nexamples below.

\n
\n

Warning

\n

All the content of every tab is always sent to and rendered on the frontend.\nConditional rendering is currently not supported.

\n
\n", - "args": [ - { - "name": "tabs", - "type_name": "list of strings", - "is_optional": false, - "description": "

Creates a tab for each string in the list. The first tab is selected by default.\nThe string is used as the name of the tab and can optionally contain Markdown,\nsupporting the following elements: Bold, Italics, Strikethroughs, Inline Code,\nEmojis, and Links.

\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n", - "default": "." - } - ], - "returns": [ - { - "type_name": "list of containers", - "is_generator": false, - "description": "

A list of container objects.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/layouts.py#L208" - }, - "streamlit.text": { - "name": "text", - "signature": "st.text(body)", - "example": "
\n
\nimport streamlit as st\n\nst.text('This is some text.')\n
\n
\n", - "description": "Write fixed-width and preformatted text.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The string to display.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/text.py#L27" - }, - "streamlit.text_area": { - "name": "text_area", - "signature": "st.text_area(label, value=\"\", height=None, max_chars=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntxt = st.text_area('Text to analyze', '''\n    It was the best of times, it was the worst of times, it was\n    the age of wisdom, it was the age of foolishness, it was\n    the epoch of belief, it was the epoch of incredulity, it\n    was the season of Light, it was the season of Darkness, it\n    was the spring of hope, it was the winter of despair, (...)\n    ''')\nst.write('Sentiment:', run_sentiment_analysis(txt))\n
\n
\n", - "description": "Display a multi-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "height", - "type_name": "int or None", - "is_optional": false, - "description": "

Desired height of the UI element expressed in pixels. If None, a\ndefault height is used.

\n", - "default": "height" - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Maximum number of characters allowed in text area.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the textarea.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_area's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text area is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text area if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/text_widgets.py#L272" - }, - "streamlit.text_input": { - "name": "text_input", - "signature": "st.text_input(label, value=\"\", max_chars=None, key=None, type=\"default\", help=None, autocomplete=None, on_change=None, args=None, kwargs=None, *, placeholder=None, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport streamlit as st\n\ntitle = st.text_input('Movie title', 'Life of Brian')\nst.write('The current movie title is', title)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a single-line text input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "object", - "is_optional": false, - "description": "

The text value of this widget when it first renders. This will be\ncast to str internally.

\n", - "default": null - }, - { - "name": "max_chars", - "type_name": "int or None", - "is_optional": false, - "description": "

Max number of characters allowed in text input.

\n", - "default": null - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "type", - "type_name": "str", - "is_optional": false, - "description": "

The type of the text input. This can be either "default" (for\na regular text input), or "password" (for a text input that\nmasks the user's typed value). Defaults to "default".

\n", - "default": "s" - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "autocomplete", - "type_name": "str", - "is_optional": false, - "description": "

An optional value that will be passed to the <input> element's\nautocomplete property. If unspecified, this value will be set to\n"new-password" for "password" inputs, and the empty string for\n"default" inputs. For more details, see https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this text_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "placeholder", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional string displayed when the text input is empty. If None,\nno text is displayed. This argument can only be supplied by keyword.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the text input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "str", - "is_generator": false, - "description": "

The current value of the text input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/text_widgets.py#L69" - }, - "streamlit.time_input": { - "name": "time_input", - "signature": "st.time_input(label, value=None, key=None, help=None, on_change=None, args=None, kwargs=None, *, disabled=False, label_visibility=\"visible\")", - "example": "
\n
\nimport datetime\nimport streamlit as st\n\nt = st.time_input('Set an alarm for', datetime.time(8, 45))\nst.write('Alarm is set for', t)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "Display a time input widget.", - "args": [ - { - "name": "label", - "type_name": "str", - "is_optional": false, - "description": "

A short label explaining to the user what this time input is for.\nThe label can optionally contain Markdown and supports the following\nelements: Bold, Italics, Strikethroughs, Inline Code, Emojis, and Links.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n

Unsupported elements are not displayed. Display unsupported elements\nas literal characters by backslash-escaping them. E.g.\n1\\. Not an ordered list.

\n

For accessibility reasons, you should never set an empty label (label="")\nbut hide it with label_visibility if needed. In the future, we may disallow\nempty labels by raising an exception.

\n", - "default": null - }, - { - "name": "value", - "type_name": "datetime.time/datetime.datetime", - "is_optional": false, - "description": "

The value of this widget when it first renders. This will be\ncast to str internally. Defaults to the current time.

\n", - "default": "the" - }, - { - "name": "key", - "type_name": "str or int", - "is_optional": false, - "description": "

An optional string or integer to use as the unique key for the widget.\nIf this is omitted, a key will be generated for the widget\nbased on its content. Multiple widgets of the same type may\nnot share the same key.

\n", - "default": null - }, - { - "name": "help", - "type_name": "str", - "is_optional": false, - "description": "

An optional tooltip that gets displayed next to the input.

\n", - "default": null - }, - { - "name": "on_change", - "type_name": "callable", - "is_optional": false, - "description": "

An optional callback invoked when this time_input's value changes.

\n", - "default": null - }, - { - "name": "args", - "type_name": "tuple", - "is_optional": false, - "description": "

An optional tuple of args to pass to the callback.

\n", - "default": null - }, - { - "name": "kwargs", - "type_name": "dict", - "is_optional": false, - "description": "

An optional dict of kwargs to pass to the callback.

\n", - "default": null - }, - { - "name": "disabled", - "type_name": "bool", - "is_optional": false, - "description": "

An optional boolean, which disables the time input if set to True.\nThe default is False. This argument can only be supplied by keyword.

\n", - "default": "False." - }, - { - "name": "label_visibility", - "type_name": "\"visible\" or \"hidden\" or \"collapsed\"", - "is_optional": false, - "description": "

The visibility of the label. If "hidden", the label doesn't show but there\nis still empty space for it above the widget (equivalent to label="").\nIf "collapsed", both the label and the space are removed. Default is\n"visible". This argument can only be supplied by keyword.

\n", - "default": "is" - } - ], - "returns": [ - { - "type_name": "datetime.time", - "is_generator": false, - "description": "

The current value of the time input widget.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/time_widgets.py#L212" - }, - "streamlit.title": { - "name": "title", - "signature": "st.title(body, anchor=None)", - "examples": "
\n
\nimport streamlit as st\n\nst.title('This is a title')\nst.title('A title with _italics_ :blue[colors] and emojis :sunglasses:')\n
\n
\n", - "description": "

Display text in title formatting.

\n

Each document should have a single st.title(), although this is not\nenforced.

\n", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The text to display as Github-flavored Markdown. Syntax\ninformation can be found at: https://github.github.com/gfm.

\n

This also supports:

\n
    \n
  • Emoji shortcodes, such as :+1: and :sunglasses:.\nFor a list of all supported codes,\nsee https://share.streamlit.io/streamlit/emoji-shortcodes.
  • \n
  • LaTeX expressions, by wrapping them in "$" or "$$" (the "$$"\nmust be on their own lines). Supported LaTeX functions are listed\nat https://katex.org/docs/supported.html.
  • \n
  • Colored text, using the syntax :color[text to be colored],\nwhere color needs to be replaced with any of the following\nsupported colors: blue, green, orange, red, violet.
  • \n
\n", - "default": null - }, - { - "name": "anchor", - "type_name": "str", - "is_optional": false, - "description": "

The anchor name of the header that can be accessed with #anchor\nin the URL. If omitted, it generates an anchor using the body.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/heading.py#L122" - }, - "streamlit.vega_lite_chart": { - "name": "vega_lite_chart", - "signature": "st.vega_lite_chart(data=None, spec=None, use_container_width=False, theme=\"streamlit\", **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\nchart_data = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nst.vega_lite_chart(chart_data, {\n    'mark': {'type': 'circle', 'tooltip': True},\n    'encoding': {\n        'x': {'field': 'a', 'type': 'quantitative'},\n        'y': {'field': 'b', 'type': 'quantitative'},\n        'size': {'field': 'c', 'type': 'quantitative'},\n        'color': {'field': 'c', 'type': 'quantitative'},\n    },\n})\n
\n\n \n \n (view standalone Streamlit app)\n \n

Examples of Vega-Lite usage without Streamlit can be found at\nhttps://vega.github.io/vega-lite/examples/. Most of those can be easily\ntranslated to the syntax shown above.

\n
\n", - "description": "Display a chart using the Vega-Lite library.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

Either the data to be plotted or a Vega-Lite spec containing the\ndata (which more closely follows the Vega-Lite API).\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "spec", - "type_name": "dict or None", - "is_optional": false, - "description": "

The Vega-Lite spec for the chart. If the spec was already passed in\nthe previous argument, this must be set to None. See\nhttps://vega.github.io/vega-lite/docs/ for more info.

\n", - "default": null - }, - { - "name": "use_container_width", - "type_name": "bool", - "is_optional": false, - "description": "

If True, set the chart width to the column width. This takes\nprecedence over Vega-Lite's native width value.

\n", - "default": null - }, - { - "name": "theme", - "type_name": "\"streamlit\" or None", - "is_optional": false, - "description": "

The theme of the chart. Currently, we only support "streamlit" for the Streamlit\ndefined design or None to fallback to the default behavior of the library.

\n", - "default": "behavior" - }, - { - "name": "**kwargs", - "type_name": "any", - "is_optional": false, - "description": "

Same as spec, but as keywords.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L475" - }, - "streamlit.video": { - "name": "video", - "signature": "st.video(data, format=\"video/mp4\", start_time=0)", - "example": "
\n
\nimport streamlit as st\n\nvideo_file = open('myvideo.mp4', 'rb')\nvideo_bytes = video_file.read()\n\nst.video(video_bytes)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n

Note

\n

Some videos may not display if they are encoded using MP4V (which is an export option in OpenCV), as this codec is\nnot widely supported by browsers. Converting your video to H.264 will allow the video to be displayed in Streamlit.\nSee this StackOverflow post or this\nStreamlit forum post\nfor more information.

\n
\n
\n", - "description": "Display a video player.", - "args": [ - { - "name": "data", - "type_name": "str, bytes, BytesIO, numpy.ndarray, or file opened with", - "is_optional": false, - "description": "

io.open().\nRaw video data, filename, or URL pointing to a video to load.\nIncludes support for YouTube URLs.\nNumpy arrays and raw data formats must include all necessary file\nheaders to match specified file format.

\n", - "default": null - }, - { - "name": "format", - "type_name": "str", - "is_optional": false, - "description": "

The mime type for the video file. Defaults to 'video/mp4'.\nSee https://tools.ietf.org/html/rfc4281 for more info.

\n", - "default": "s" - }, - { - "name": "start_time", - "type_name": "int", - "is_optional": false, - "description": "

The time from which this element should start playing.

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/media.py#L117" - }, - "streamlit.warning": { - "name": "warning", - "signature": "st.warning(body, *, icon=None)", - "example": "
\n
\nimport streamlit as st\n\nst.warning('This is a warning', icon="\u26a0\ufe0f")\n
\n
\n", - "description": "Display warning message.", - "args": [ - { - "name": "body", - "type_name": "str", - "is_optional": false, - "description": "

The warning text to display.

\n", - "default": null - }, - { - "name": "icon", - "type_name": "str or None", - "is_optional": false, - "description": "

An optional, keyword-only argument that specifies an emoji to use as\nthe icon for the alert. Shortcodes are not allowed, please use a\nsingle character instead. E.g. "\ud83d\udea8", "\ud83d\udd25", "\ud83e\udd16", etc.\nDefaults to None, which means no icon is displayed.

\n", - "default": "None" - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/alert.py#L71" - }, - "streamlit.write": { - "name": "write", - "signature": "st.write(*args, unsafe_allow_html=False, **kwargs)", - "example": "
\n

Its basic use case is to draw Markdown-formatted text, whenever the\ninput is a string:

\n
\nimport streamlit as st\n\nst.write('Hello, *World!* :sunglasses:')\n
\n\n \n \n (view standalone Streamlit app)\n \n

As mentioned earlier, st.write() also accepts other data formats, such as\nnumbers, data frames, styled data frames, and assorted objects:

\n
\nimport streamlit as st\nimport pandas as pd\n\nst.write(1234)\nst.write(pd.DataFrame({\n    'first column': [1, 2, 3, 4],\n    'second column': [10, 20, 30, 40],\n}))\n
\n\n \n \n (view standalone Streamlit app)\n \n

Finally, you can pass in multiple arguments to do things like:

\n
\nimport streamlit as st\n\nst.write('1 + 1 = ', 2)\nst.write('Below is a DataFrame:', data_frame, 'Above is a dataframe.')\n
\n\n \n \n (view standalone Streamlit app)\n \n

Oh, one more thing: st.write accepts chart objects too! For example:

\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\nimport altair as alt\n\ndf = pd.DataFrame(\n    np.random.randn(200, 3),\n    columns=['a', 'b', 'c'])\n\nc = alt.Chart(df).mark_circle().encode(\n    x='a', y='b', size='c', color='c', tooltip=['a', 'b', 'c'])\n\nst.write(c)\n
\n\n \n \n (view standalone Streamlit app)\n \n
\n", - "description": "

Write arguments to the app.

\n

This is the Swiss Army knife of Streamlit commands: it does different\nthings depending on what you throw at it. Unlike other Streamlit commands,\nwrite() has some unique properties:

\n
    \n
  1. You can pass in multiple arguments, all of which will be written.
  2. \n
  3. Its behavior depends on the input types as follows.
  4. \n
  5. It returns None, so its "slot" in the App cannot be reused.
  6. \n
\n", - "args": [ - { - "name": "*args", - "type_name": "any", - "is_optional": false, - "description": "

One or many objects to print to the App.

\n

Arguments are handled as follows:

\n
    \n
  • \n
    write(string) : Prints the formatted Markdown string, with
    \n
    support for LaTeX expression, emoji shortcodes, and colored text.\nSee docs for st.markdown for more.
    \n
    \n
  • \n
  • write(data_frame) : Displays the DataFrame as a table.
  • \n
  • write(error) : Prints an exception specially.
  • \n
  • write(func) : Displays information about a function.
  • \n
  • write(module) : Displays information about the module.
  • \n
  • write(dict) : Displays dict in an interactive widget.
  • \n
  • write(mpl_fig) : Displays a Matplotlib figure.
  • \n
  • write(altair) : Displays an Altair chart.
  • \n
  • write(keras) : Displays a Keras model.
  • \n
  • write(graphviz) : Displays a Graphviz graph.
  • \n
  • write(plotly_fig) : Displays a Plotly figure.
  • \n
  • write(bokeh_fig) : Displays a Bokeh figure.
  • \n
  • write(sympy_expr) : Prints SymPy expression using LaTeX.
  • \n
  • write(htmlable) : Prints _repr_html_() for the object if available.
  • \n
  • write(obj) : Prints str(obj) if otherwise unknown.
  • \n
\n", - "default": null - }, - { - "name": "unsafe_allow_html", - "type_name": "bool", - "is_optional": false, - "description": "

This is a keyword-only argument that defaults to False.

\n

By default, any HTML tags found in strings will be escaped and\ntherefore treated as pure text. This behavior may be turned off by\nsetting this argument to True.

\n

That said, we strongly advise against it. It is hard to write secure\nHTML, so by using this argument you may be compromising your users'\nsecurity. For more information, see:

\n

https://github.com/streamlit/streamlit/issues/152

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/write.py#L47" - }, - "streamlit.experimental_memo.clear": { - "name": "experimental_memo.clear", - "signature": "st.experimental_memo.clear()", - "description": "Clear all in-memory and on-disk data caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_data_api.py#L445" - }, - "streamlit.cache_data.clear": { - "name": "cache_data.clear", - "signature": "st.cache_data.clear(self)", - "description": "Clear all in-memory and on-disk data caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_data_api.py#L445" - }, - "streamlit.experimental_singleton.clear": { - "name": "experimental_singleton.clear", - "signature": "st.experimental_singleton.clear()", - "description": "Clear all cache_resource caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_resource_api.py#L396" - }, - "streamlit.cache_resource.clear": { - "name": "cache_resource.clear", - "signature": "st.cache_resource.clear(self)", - "description": "Clear all cache_resource caches.", - "args": [], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/runtime/caching/cache_resource_api.py#L396" - }, - "streamlit.components.v1.declare_component": { - "name": "declare_component", - "signature": "st.components.v1.declare_component(name, path=None, url=None)", - "description": "Create and register a custom component.", - "args": [ - { - "name": "name", - "type_name": "str", - "is_optional": false, - "description": "

A short, descriptive name for the component. Like, "slider".

\n", - "default": null - }, - { - "name": "path", - "type_name": "str or None", - "is_optional": false, - "description": "

The path to serve the component's frontend files from. Either\npath or url must be specified, but not both.

\n", - "default": null - }, - { - "name": "url", - "type_name": "str or None", - "is_optional": false, - "description": "

The URL that the component is served from. Either path or url\nmust be specified, but not both.

\n", - "default": null - } - ], - "returns": [ - { - "type_name": "CustomComponent", - "is_generator": false, - "description": "

A CustomComponent that can be called like a function.\nCalling the component will create a new instance of the component\nin the Streamlit app.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/components/v1/components.py#L246" - }, - "streamlit.components.v1.html": { - "name": "html", - "signature": "st.components.v1.html(html, width=None, height=None, scrolling=False)", - "description": "Display an HTML string in an iframe.", - "args": [ - { - "name": "html", - "type_name": "str", - "is_optional": false, - "description": "

The HTML string to embed in the iframe.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150." - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/iframe.py#L59" - }, - "streamlit.components.v1.iframe": { - "name": "iframe", - "signature": "st.components.v1.iframe(src, width=None, height=None, scrolling=False)", - "description": "Load a remote URL in an iframe.", - "args": [ - { - "name": "src", - "type_name": "str", - "is_optional": false, - "description": "

The URL of the page to embed.

\n", - "default": null - }, - { - "name": "width", - "type_name": "int", - "is_optional": false, - "description": "

The width of the frame in CSS pixels. Defaults to the app's\ndefault element width.

\n", - "default": "the" - }, - { - "name": "height", - "type_name": "int", - "is_optional": false, - "description": "

The height of the frame in CSS pixels. Defaults to 150.

\n", - "default": "150." - }, - { - "name": "scrolling", - "type_name": "bool", - "is_optional": false, - "description": "

If True, show a scrollbar when the content is larger than the iframe.\nOtherwise, do not show a scrollbar. Defaults to False.

\n", - "default": "False." - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/iframe.py#L25" - }, - "DeltaGenerator.add_rows": { - "name": "add_rows", - "signature": "element.add_rows(self, data=None, **kwargs)", - "example": "
\n
\nimport streamlit as st\nimport pandas as pd\nimport numpy as np\n\ndf1 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table = st.table(df1)\n\ndf2 = pd.DataFrame(\n   np.random.randn(50, 20),\n   columns=('col %d' % i for i in range(20)))\n\nmy_table.add_rows(df2)\n# Now the table shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

You can do the same thing with plots. For example, if you want to add\nmore data to a line chart:

\n
\n# Assuming df1 and df2 from the example above still exist...\nmy_chart = st.line_chart(df1)\nmy_chart.add_rows(df2)\n# Now the chart shown in the Streamlit app contains the data for\n# df1 followed by the data for df2.\n
\n

And for plots whose datasets are named, you can pass the data with a\nkeyword argument where the key is the name:

\n
\nmy_chart = st.vega_lite_chart({\n    'mark': 'line',\n    'encoding': {'x': 'a', 'y': 'b'},\n    'datasets': {\n      'some_fancy_name': df1,  # <-- named dataset\n     },\n    'data': {'name': 'some_fancy_name'},\n}),\nmy_chart.add_rows(some_fancy_name=df2)  # <-- name used as keyword\n
\n
\n", - "description": "Concatenate a dataframe to the bottom of the current one.", - "args": [ - { - "name": "data", - "type_name": "pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None", - "is_optional": false, - "description": "

Table to concat. Optional.\nPyarrow tables are not supported by Streamlit's legacy DataFrame serialization\n(i.e. with config.dataFrameSerialization = "legacy").\nTo use pyarrow tables, please enable pyarrow by changing the config setting,\nconfig.dataFrameSerialization = "arrow".

\n", - "default": null - }, - { - "name": "**kwargs", - "type_name": "pandas.DataFrame, numpy.ndarray, Iterable, dict, or None", - "is_optional": false, - "description": "

The named dataset to concat. Optional. You can only pass in 1\ndataset (including the one in the data parameter).

\n", - "default": null - } - ], - "returns": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/elements/dataframe_selector.py#L550" - }, - "streamlit.experimental_user.to_dict": { - "name": "to_dict", - "signature": "st.experimental_user.to_dict()", - "description": "

Get user info as a dictionary.

\n

This method primarily exists for internal use and is not needed for\nmost cases. st.experimental_user returns an object that inherits from\ndict by default.

\n", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/user_info.py#L54" - }, - "streamlit.experimental_user": { - "name": "experimental_user", - "signature": "st.experimental_user()", - "is_class": true, - "methods": [ - { - "name": "to_dict", - "signature": "st.to_dict.to_dict()", - "description": "

Get user info as a dictionary.

", - "args": [], - "returns": [ - { - "type_name": "Dict[str,str]", - "is_generator": false, - "description": "

A dictionary of the current user's information.

\n", - "return_name": null - } - ], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/user_info.py#L54" - } - ], - "properties": [], - "source": "https://github.com/streamlit/streamlit/blob/1.19.0/lib/streamlit/user_info.py#L30", - "description": "

A read-only, dict-like object for accessing information about current user.

\n

st.experimental_user is dependant on the host platform running the\nStreamlit app. If the host platform has not configured the function, it\nwill behave as it does in a locally running app.

\n

Properties can by accessed via key or attribute notation. For example,\nst.experimental_user["email"] or st.experimental_user.email.

\n", - "args": [ - { - "name": "email", - "type_name": "str", - "is_optional": false, - "description": "

If running locally, this property returns the string literal\n"test@example.com".

\n

If running on Streamlit Community Cloud, this\nproperty returns one of two values:

\n
    \n
  • None if the user is not logged in or not a member of the app's workspace. Such users appear under anonymous pseudonyms in the app's analytics.
  • \n
  • The user's email if the the user is logged in and a member of the app's workspace. Such users are identified by their email in the app's analytics.
  • \n
\n", - "default": null - } - ], - "returns": [] - } - }, "1.20.0": { "streamlit.altair_chart": { "name": "altair_chart",