首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Streamlit dataframe中突出显示特定行

在Streamlit dataframe中突出显示特定行
EN

Stack Overflow用户
提问于 2022-10-03 19:48:54
回答 1查看 336关注 0票数 0

我希望无论谁读了这篇文章,一切都会好起来。

这是我在StackOverflow上的第一个问题。多年来,我一直在玩编码,但几个月前我才真正开始使用它;但我仍然在学习,承认它并不丢脸。我觉得有点像%^&*$,因为我发现这个lol有问题。

我正在做一个小项目,需要在我在Streamlit中显示的CSV文件的特定行中突出显示/着色。我一直在网上浏览,我看到了很多类似的例子,但没有什么是完全匹配的。我知道我将不得不使用Pandas风格的功能。但如何实现这一点是我遇到的问题。

代码

这就是我目前正在使用的代码智慧。和潘达斯一起读CSV的基本内容。

在这里输入图像描述

我只是试图用索引号突出显示/填充整行的颜色,比如第0行、第4行和第12行。

我希望有人能很好的参考一下该做什么?就像我说的,我看到一堆很接近的东西在网上浏览,但是没有什么是完全一样的;而且我对我如何实现它的理解也有问题。

感谢所有的帮助,非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2022-10-05 19:24:48

示例数据

代码语言:javascript
运行
复制
df = pd.DataFrame({"col1": [1, 2, 3], "col2": [4, 5, 6]})
st.dataframe(df)

函数突出显示第一列中有数字2的行。

代码语言:javascript
运行
复制
def color_coding(row):
    return ['background-color:red'] * len(
        row) if row.col1 == 2 else ['background-color:green'] * len(row)

为了达到突出显示特定行的目的(不确定是否意味着每4行),最简单的解决方案可能是在dataframe中添加另一列,该列指定应该突出显示哪些行。然后,下面函数中的if语句将变得非常简单。

在流光中设计df

代码语言:javascript
运行
复制
st.dataframe(df.style.apply(color_coding, axis=1))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73940163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档