pandas.io.formats.style.Styler.set_table_styles#
- Styler.set_table_styles(table_styles=None, axis=0, overwrite=True, css_class_names=None)[源代码]#
设置包含在
<style>HTML 元素中的表格样式。此函数可用于设置整个表、列、行或特定 HTML 选择器的样式。
- Parameters:
- table_styleslist 或 dict
如果提供列表,每个单独的 table_style 都应是一个包含
selector和props键的字典。selector应是一个 CSS 选择器,样式将应用于该选择器(自动加上表的 UUID 前缀),props应是包含(attribute, value)元组的列表。如果提供字典,则字典键应对应于列名或索引值,具体取决于指定的 axis 参数。这些将被映射到行或列 CSS 选择器。MultiIndex 值作为字典键应为其各自的元组形式。字典值应为通过 CSS 选择器和将应用于指定行或列的 props 指定的列表。- axis{0 或 ‘index’, 1 或 ‘columns’, None},默认 0
应用于每一列(
axis=0或'index'),应用于每一行(axis=1或'columns')。仅在 table_styles 是字典时使用。- overwritebool, default True
如果为
True,则替换样式;如果为False,则扩展样式。 CSS 规则得以保留,因此如果选择器相交,最近设置的样式将占主导地位。- css_class_namesdict, 可选
一个用于替换以下默认 CSS 类的字符串字典。
在 1.4.0 版本加入.
- Returns:
- Styler
参见
Styler.set_td_classes设置将为
<td>HTML 元素设置的 ‘class’ 属性的字符串 DataFrame。Styler.set_table_attributes设置添加到
<table>HTML 元素的表格属性。
Notes
可以替换的默认 CSS 类字典如下:
css_class_names = {"row_heading": "row_heading", "col_heading": "col_heading", "index_name": "index_name", "col": "col", "row": "row", "col_trim": "col_trim", "row_trim": "row_trim", "level": "level", "data": "data", "blank": "blank", "foot": "foot"}
Examples
>>> df = pd.DataFrame(np.random.randn(10, 4), ... columns=['A', 'B', 'C', 'D']) >>> df.style.set_table_styles( ... [{'selector': 'tr:hover', ... 'props': [('background-color', 'yellow')]}] ... )
或使用 CSS 字符串
>>> df.style.set_table_styles( ... [{'selector': 'tr:hover', ... 'props': 'background-color: yellow; font-size: 1em;'}] ... )
按名称添加列样式
>>> df.style.set_table_styles({ ... 'A': [{'selector': '', ... 'props': [('color', 'red')]}], ... 'B': [{'selector': 'td', ... 'props': 'color: blue;'}] ... }, overwrite=False)
添加行样式
>>> df.style.set_table_styles({ ... 0: [{'selector': 'td:hover', ... 'props': [('font-size', '25px')]}] ... }, axis=1, overwrite=False)
更多详情请参阅 Table Visualization 用户指南。