pandas.io.formats.style.Styler#

class pandas.io.formats.style.Styler(data, precision=None, table_styles=None, uuid=None, caption=None, table_attributes=None, cell_ids=True, na_rep=None, uuid_len=5, decimal=None, thousands=None, escape=None, formatter=None)[源代码]#

使用 HTML 和 CSS 根据数据帮助样式化 DataFrame 或 Series。

Parameters:
dataSeries 或 DataFrame

要样式化的数据 - Series 或 DataFrame。

precisionint, optional

用于聚类浮点数的精度。如果未给出,则默认为 pandas.options.styler.format.precision

在 1.4.0 版本发生变更.

table_styleslist-like, default None

{selector: (attr, value)} 字典列表;请参阅 Notes。

uuidstr,默认 None

一个唯一的标识符,用于避免 CSS 冲突;自动生成。

captionstr, tuple, default None

附加到表格的字符串标题。元组仅用于 LaTeX 双标题。

table_attributesstr,默认 None

除了自动生成的(默认)id 之外,出现在开头 <table> 标签中的项目。

cell_idsbool, default True

如果为 True,则每个单元格的 HTML 标签中都将有一个 id 属性。id 的形式为 T_<uuid>_row<num_row>_col<num_col>,其中 <uuid> 是唯一标识符,<num_row> 是行号,<num_col> 是列号。

na_repbool, default False

缺失值的表示。如果 na_rep 为 None,则不应用特殊格式,并回退到 pandas.options.styler.format.na_rep

uuid_lenint,默认 5

如果未指定 uuid,则为随机生成的 uuid 指定其长度(以十六进制字符表示),范围为 [0, 32]。

decimalbool, default False

用作浮点数、复数和整数的小数分隔符的字符。如果未给出,则使用 pandas.options.styler.format.decimal

在 1.3.0 版本加入.

thousandsstr, optional, default None

用作浮点数、复数和整数的千位分隔符的字符。如果未给出,则使用 pandas.options.styler.format.thousands

在 1.3.0 版本加入.

escapebool, default False

使用 ‘html’ 将单元格显示字符串中的字符 &<>'" 替换为 HTML 安全的序列。使用 ‘latex’ 将单元格显示字符串中的字符 &%$#_{}~^\ 替换为 LaTeX 安全的序列。使用 ‘latex-math’ 以与 ‘latex’ 模式相同的方式替换字符,除了数学子字符串,它们要么被两个字符 $ 包围,要么以字符 \( 开头并以 \) 结尾。如果未给出,则使用 pandas.options.styler.format.escape

在 1.3.0 版本加入.

formatterstr, callable, dict, optional

定义值如何显示的类。请参阅 Styler.format。如果未给出,则使用 pandas.options.styler.format.formatter

在 1.4.0 版本加入.

参见

DataFrame.style

返回一个 Styler 对象,其中包含用于构建 DataFrame 的样式化 HTML 表示形式的方法。

Notes

大多数样式设置将通过将样式函数传入 Styler.applyStyler.map 来完成。样式函数应返回包含 CSS 'attr: value' 的字符串的值,这些值将被应用于指定的单元格。

如果在 Jupyter notebook 中使用,Styler 已定义 _repr_html_ 以自动渲染自身。否则,请调用 Styler.to_html 来获取生成的 HTML。

CSS 类会附加到生成的 HTML 中

  • 索引名和列名包括 index_namelevel<k>,其中 k 是它在 MultiIndex 中的级别

  • 索引标签单元格包括:

    • row_heading

    • row<n>,其中 n 是行的数字位置

    • level<k>,其中 k 是在 MultiIndex 中的级别

  • 列标签单元格包括 * col_heading * col<n>,其中 n 是列的数字位置 * level<k>,其中 k 是在 MultiIndex 中的级别

  • 空白单元格包括 blank

  • 数据单元格包括 data

  • 修剪过的单元格包括 col_trimrow_trim

可以使用 Styler.set_table_classes 中的 css_class_names 参数来重命名这些类中的任何一个、所有或部分类,例如 {“row”: “MY_ROW_CLASS”, “col_trim”: “”, “row_trim”: “”}

Examples

>>> df = pd.DataFrame([[1.0, 2.0, 3.0], [4, 5, 6]], index=['a', 'b'],
...                   columns=['A', 'B', 'C'])
>>> pd.io.formats.style.Styler(df, precision=2,
...                            caption="My table")  

有关更多示例,请参阅:Table Visualization

Attributes

env

(Jinja2 jinja2.Environment)

template_html

(Jinja2 Template)

template_html_table

(Jinja2 Template)

template_html_style

(Jinja2 Template)

template_latex

(Jinja2 Template)

loader

(Jinja2 Loader)

Attributes

Methods

apply (func[, axis, subset])

按列、按行或按表应用 CSS 样式函数。

apply_index (func[, axis, level])

按级别将 CSS 样式函数应用于索引或列标题。

applymap (func[, subset])

(已弃用) 对元素应用 CSS 样式函数。

applymap_index (func[, axis, level])

(已弃用) 按元素将 CSS 样式函数应用于索引或列标题。

background_gradient ([cmap, low, high, axis, ...])

在背景中应用渐变样式。

bar ([subset, axis, color, cmap, width, ...])

在单元格背景中绘制条形图。

clear ()

重置 Styler,移除先前应用的所有样式。

concat (other)

附加另一个 Styler 以将输出合并为单个表格。

export ()

导出应用于当前 Styler 的样式。

format ([formatter, subset, na_rep, ...])

设置单元格的文本显示值格式。

format_index ([formatter, axis, level, ...])

设置索引标签或列标题的文本显示值格式。

from_custom_template (searchpath[, ...])

用于创建 Styler 子类的工厂函数。

hide ([subset, axis, level, names])

隐藏整个索引/列标题,或从显示中隐藏特定行/列。

highlight_between ([subset, color, axis, ...])

使用样式高亮显示定义的范围。

highlight_max ([subset, color, axis, props])

使用样式高亮显示最大值。

highlight_min ([subset, color, axis, props])

使用样式高亮显示最小值。

highlight_null ([color, subset, props])

使用样式高亮显示缺失值。

highlight_quantile ([subset, color, axis, ...])

使用样式高亮显示由分位数定义的值。

map (func[, subset])

逐元素应用 CSS 样式函数。

map_index (func[, axis, level])

逐元素应用 CSS 样式函数到索引或列标题。

pipe (func, *args, **kwargs)

应用 func(self, *args, **kwargs),并返回结果。

relabel_index (labels[, axis, level])

重命名索引或列标题的键,以显示一组指定的值。

set_caption (caption)

设置添加到 <caption> HTML 元素的文本。

set_properties ([subset])

为给定子集设置定义的 CSS 属性到每个 <td> HTML 元素。

set_sticky ([axis, pixel_size, levels])

添加 CSS 使索引或列标题在滚动框架中永久显示。

set_table_attributes (attributes)

设置添加到 <table> HTML 元素的表格属性。

set_table_styles ([table_styles, axis, ...])

设置包含在 <style> HTML 元素中的表格样式。

set_td_classes (classes)

设置 <td> HTML 元素的 class 属性。

set_tooltips (ttips[, props, css_class])

设置 Styler 上的字符串 DataFrame,生成 :hover 工具提示。

set_uuid (uuid)

设置应用于 HTML 元素 id 属性的 uuid。

text_gradient ([cmap, low, high, axis, ...])

用渐变样式为文本着色。

to_excel (excel_writer[, sheet_name, na_rep, ...])

将 Styler 写入 Excel 工作表。

to_html ([buf, table_uuid, table_attributes, ...])

将 Styler 以 HTML-CSS 格式写入文件、缓冲区或字符串。

to_latex ([buf, column_format, position, ...])

将 Styler 以 LaTeX 格式写入文件、缓冲区或字符串。

to_string ([buf, encoding, sparse_index, ...])

将 Styler 以文本格式写入文件、缓冲区或字符串。

use (styles)

为当前的 Styler 设置样式。