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。
- 参数:
- 数据Series 或 DataFrame
要样式化的数据 - 可以是 Series 或 DataFrame。
- 精度int, 可选
要舍入浮点数的精度。如果未指定,则默认为
pandas.options.styler.format.precision
。在 1.4.0 版本发生变更.
- table_styles类似列表,默认为 None
列表为 {selector: (attr, value)} 字典;见注释。
- uuidstr, 默认为 None
一个唯一的标识符以避免CSS冲突;自动生成。
- 标题str, tuple, 默认 None
附加到表格的字符串标题。仅用于LaTeX双标题的元组。
- table_attributesstr, 默认为 None
在
<table>
标签中显示的项目,除了自动(默认)id之外。- cell_ids布尔值, 默认为 True
如果为真,每个单元格在其HTML标签中将有一个
id
属性。id
的形式为T_<uuid>_row<num_row>_col<num_col>
,其中<uuid>
是唯一标识符,<num_row>
是行号,<num_col>
是列号。- na_repstr, 可选
缺失值的表示。如果
na_rep
为 None,则不应用特殊格式,并回退到pandas.options.styler.format.na_rep
。- uuid_lenint, 默认 5
如果
uuid
未指定,则要随机生成的uuid
的长度以十六进制字符表示,范围为 [0, 32]。- decimalstr, 可选
用于浮点数、复数和整数的十进制分隔符。如果未指定,则使用
pandas.options.styler.format.decimal
。Added in version 1.3.0.
- thousandsstr, 可选, 默认 None
用于浮点数、复数和整数千位分隔符的字符。如果未指定,则使用
pandas.options.styler.format.thousands
。Added in version 1.3.0.
- escapestr, 可选
使用 ‘html’ 将单元格显示字符串中的字符
&
,<
,>
,'
, 和"
替换为 HTML 安全的序列。使用 ‘latex’ 将单元格显示字符串中的字符
&
,%
,$
,#
,_
,{
,}
,~
,^
, 和\
替换为 LaTeX 安全序列。使用 ‘latex-math’ 以与 ‘latex’ 模式相同的方式替换字符,除了数学子字符串,这些子字符串要么被两个字符$
包围,要么以字符\(
开始并以\)
结束。如果未给出,则使用pandas.options.styler.format.escape
。Added in version 1.3.0.
- formatterstr, 可调用, dict, 可选
对象用于定义值的显示方式。参见
Styler.format
。如果未指定,则使用pandas.options.styler.format.formatter
。Added in version 1.4.0.
属性
env
(Jinja2 jinja2.Environment)
template_html
(Jinja2 模板)
template_html_table
(Jinja2 模板)
template_html_style
(Jinja2 模板)
template_latex
(Jinja2 模板)
加载器
(Jinja2 加载器)
参见
DataFrame.style
返回一个包含用于构建 DataFrame 样式 HTML 表示方法的 Styler 对象。
备注
警告
Styler
主要用于在你控制的安全输入上使用。当使用Styler
处理不受信任的用户提供输入以提供 HTML 时,你应该设置escape="html"
以防止安全漏洞。更多信息请参见 Jinja2 文档中关于转义 HTML 的部分。大多数样式将通过将样式函数传递给
Styler.apply
或Styler.map
来完成。样式函数应返回包含 CSS'attr: value'
的字符串,这些字符串将应用于指示的单元格。如果在 Jupyter notebook 中使用,Styler 已经定义了一个
_repr_html_
来自动渲染自身。否则调用 Styler.to_html 来获取生成的 HTML。CSS 类被附加到生成的 HTML 中
索引和列名包括
index_name
和level<k>
其中 k 是其在 MultiIndex 中的层级。索引标签单元格包括
row_heading
row<n>
其中 n 是行的数字位置level<k>
其中 k 是 MultiIndex 中的层级
列标签单元格包括 *
col_heading
*col<n>
其中 n 是列的数字位置 *level<k>
其中 k 是 MultiIndex 中的级别空白单元格包含
blank
数据单元格包括
data
修剪的单元格包括
col_trim
或row_trim
。
任何、所有或这些类都可以通过在
Styler.set_table_classes
中使用css_class_names
参数来重命名,给出一个如 {“row”: “MY_ROW_CLASS”, “col_trim”: “”, “row_trim”: “”} 的值。例子
>>> 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" ... )
请参见:表格可视化 以获取更多示例。
属性
方法
apply
(func[,axis,subset])应用一个CSS样式函数,按列、按行或按表格。
apply_index
(func[,axis,level])对索引或列标题应用CSS样式函数,按级别进行。
background_gradient
([cmap, low, high, axis, ...])以渐变样式着色背景。
条形图
([subset, axis, color, cmap, width, ...])在单元格背景中绘制条形图。
clear
()重置
Styler
,移除任何之前应用的样式。concat
(other)将另一个 Styler 附加到组合输出为一个表格。
导出
()导出应用于当前 Styler 的样式。
format
([formatter, subset, na_rep, ...])格式化单元格的文本显示值。
format_index
([formatter, axis, level, ...])格式化索引标签或列标题的文本显示值。
format_index_names
([formatter, axis, level, ...])格式化索引名称或列名称的文本显示值。
from_custom_template
(searchpath[, ...])用于创建
Styler
子类的工厂函数。隐藏
([subset, axis, level, names])隐藏整个索引 / 列标题,或从显示中隐藏特定的行 / 列。
highlight_between
([subset, color, axis, ...])用一种样式突出显示定义的范围。
highlight_max
([subset, color, axis, props])用样式突出显示最大值。
highlight_min
([subset, color, axis, props])用一种风格突出显示最小值。
highlight_null
([颜色, 子集, 属性])用样式突出显示缺失值。
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])为给定的子集中的每个
<td>
HTML 元素设置定义的 CSS 属性。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。文本渐变
([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 的样式。