如何在 Streamlit 中更改 pandas 数据框中行的颜色?

How to change the color of the rows in a pandas dataframe in Streamlit?

如何在 Streamlit 中更改 pandas 数据框中行的颜色?

我正在使用浅色背景,我想将黑色作为行颜色。

import pandas as pd
import numpy as np
      
# Seeding random data from numpy
np.random.seed(24)
      
# Making the DatFrame
df = pd.DataFrame({'A': np.linspace(1, 10, 10)})
df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4), 
                                 columns=list('BCDE'))], axis=1)

# DataFrame without any styling
print("Original DataFrame:\n")
print(df)
print("\nModified Stlying DataFrame:")
df.style.set_properties(**{'background-color': 'black',
                           'color': 'green'})

通过这段代码,您可以将数据框的背景颜色设置为黑色,文本颜色设置为绿色

我花了 HOURS 试图给数据集中的一个该死的词上色,但没有任何结果。 然后我发现可以在 streamlit 页面中插入 CSS ! 因此,您只需要检查如何获得您想要的结果,查看源代码以找到您需要的 类。

要为我的流线型页面中的一行背景着色,我可以这样做:

st.markdown('<style>.ReactVirtualized__Grid__innerScrollContainer div[class^="row"], .ReactVirtualized__Grid__innerScrollContainer div[class^="data row"]{ background:black; } </style>', unsafe_allow_html=True)

应该与您的网页相似

在我的例子中,我只想为包含 OKKO 的字段着色,所以我使用了以下代码,因为 pandas 报告 title 属性

中每个字段的值
st.markdown('<style>div[title="OK"] { color: green; } div[title="KO"] { color: red; } .data:hover{ background:rgb(243 246 255)}</style>', unsafe_allow_html=True)