pandas set_table_styles 不适用于表标签

问题描述 投票:0回答:1

我使用以下代码为表格设置边框,并为标题列设置一些格式。标题列的样式工作正常,但代码不会渲染表格的边框。

styled_df = df.style.applymap(colorize).set_table_styles([
        {'selector': 'table',
         'props': 'border: 1; border-collapse: collapse; font-size: 13px;'
         },
        {'selector': 'thead',
         'props': 'background-color : #3176B5; color: white; padding: 4px;'
         }
    ])```
python pandas dataframe css-selectors
1个回答
0
投票

您可能会发现它违反直觉,但您无法使用

table
选择器应用外边框。

解决方案之一是使用

""
又名,无选择器)并添加边框的颜色/样式:

def colorize(v):
    return "background-color: orange" if v>.9 else ""

st = df.style.map(colorize).set_table_styles(
    [
        {
            'selector': '',
            'props': 'border: 1px solid black;'
            'border-collapse: collapse; font-size: 13px;'
         },
        {
            'selector': 'thead',
            'props': 'background-color : #3176B5; color: white; padding: 4px;'
        }
    ]
)

输出:

使用的输入:

import pandas as pd
import numpy as np

np.random.seed(0)

df = pd.DataFrame(
    np.random.rand(10, 10),
    columns=[*ascii_uppercase[:10]]
)
© www.soinside.com 2019 - 2024. All rights reserved.