You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整Streamlit中st.dataframe与st.write输出的DataFrame字体大小?

调整Streamlit中st.dataframe和st.write展示DataFrame的字体大小

要解决st.dataframe字体过小且保留排序功能的问题,可以通过注入自定义CSS修改组件样式,该方法同样适用于st.write输出的DataFrame。

实现代码

直接在脚本中添加CSS注入逻辑,针对Streamlit的DataFrame组件调整字体:

import pandas as pd
import streamlit as st

# 注入自定义CSS,修改DataFrame的表头和单元格字体大小
st.markdown("""
<style>
/* 定位st.dataframe和st.write生成的DataFrame组件 */
div[data-testid="stDataFrame"] td,
div[data-testid="stDataFrame"] th {
    font-size: 16px; /* 可按需调整字号,比如14px、18px */
}
</style>
""", unsafe_allow_html=True)

# 读取并展示数据
df = pd.read_csv('data/AUDCAD_1h.csv', index_col=0)
st.dataframe(df, use_container_width=True)
st.write(df)  # 此样式同样作用于st.write输出的DataFrame

关键说明

  • CSS选择器精准匹配Streamlit的DataFrame组件,同时修改表头(th)和数据单元格(td)的字体大小
  • 调整font-size数值即可自定义字号,不影响st.dataframe的排序、筛选等原生功能
  • 该方案同时覆盖st.write输出的DataFrame,因为两者底层使用同一组件实现

内容的提问来源于stack exchange,提问作者dbmtbm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 06:29:57