提示
使用st.table的静态表格是显示数据框的最基本方式。对于大多数情况,我们建议使用st.dataframe来显示交互式数据框,并使用st.data_editor让用户编辑数据框。
| 函数签名[source] | |
|---|---|
st.table(data=None) | |
| 参数 | |
data (Anything supported by st.dataframe) | 表格数据。 |
示例
import streamlit as st import pandas as pd import numpy as np df = pd.DataFrame( np.random.randn(10, 5), columns=("col %d" % i for i in range(5)) ) st.table(df)
| 函数签名[source] | |
|---|---|
element.add_rows(data=None, **kwargs) | |
| 参数 | |
data (pandas.DataFrame, pandas.Styler, pyarrow.Table, numpy.ndarray, pyspark.sql.DataFrame, snowflake.snowpark.dataframe.DataFrame, Iterable, dict, or None) | 要连接的表格。可选。 |
**kwargs (pandas.DataFrame, numpy.ndarray, Iterable, dict, or None) | 要连接的有名称的数据集。可选。你只能传入1个数据集(包括在data参数中的那个)。 |
示例
import streamlit as st import pandas as pd import numpy as np df1 = pd.DataFrame( np.random.randn(50, 20), columns=("col %d" % i for i in range(20)) ) my_table = st.table(df1) df2 = pd.DataFrame( np.random.randn(50, 20), columns=("col %d" % i for i in range(20)) ) my_table.add_rows(df2) # Now the table shown in the Streamlit app contains the data for # df1 followed by the data for df2.你可以对图表做同样的事情。例如,如果你想在折线图中添加更多数据:
# Assuming df1 and df2 from the example above still exist... my_chart = st.line_chart(df1) my_chart.add_rows(df2) # Now the chart shown in the Streamlit app contains the data for # df1 followed by the data for df2.对于数据集已命名的图表,您可以使用关键字参数传递数据,其中键是名称:
my_chart = st.vega_lite_chart( { "mark": "line", "encoding": {"x": "a", "y": "b"}, "datasets": { "some_fancy_name": df1, # <-- named dataset }, "data": {"name": "some_fancy_name"}, } ) my_chart.add_rows(some_fancy_name=df2) # <-- name used as keyword
还有问题吗?
我们的 论坛 充满了有用的信息和Streamlit专家。