Pandas:利用Styler对象设置Series、Dataframe在Jupyter Notebook中的输出样式(2)——内置样式
当前pandas
版本为:1.2.5。
Styler
对象内置样式概述
pandas
数据结构在Jupyter Notebook
中以表格形式呈现。这些表格的格式化依赖于pandas
中的Styler
对象。Dateframe.style
属性返回值为Styler
对象。
Styler
对象通过生成CSS样式进行格式化。
Styler
对象内置了一系列样式方法。这些方法的返回值大部分还是Styler
对象,Styler
对象支持链式调用,这样就可以将多种样式叠加在一起。
highlight_null
:高亮显示null
值。highlight_min
:高亮显示最小值。highlight_max
:高亮显示最大值。background_gradient
:依赖matplotlib
,支持seaborn
,以热力图(色阶)形式显示数值大小。bar
:以数据条形式显示数值大小。
下面以案例的形式演示内置样式方法的使用,所有案例以以下案例为基础。
案例基础
import numpy as np
import pandas as pd
import matplotlib.pyplot as pltscore = pd.read_csv('./student_score.csv',encoding = 'gbk')
score
highlight_null
:高亮显示null
值
highlight_null
方法的签名如下:
highlight_null(null_color: str = 'red', subset: Union[Hashable, NoneType, Sequence[Union[Hashable, NoneType]]] = None) -> 'Styler'
highlight_null
方法具有两个参数:
null_color
:指定null
值的高亮颜色。类型为字符串,默认为红色。subset
:指定作用范围(子集)。
highlight_null
方法的返回值为Styler
对象。
案例:高亮红色显示null
值
# 构造null值
score.iloc[1, 2] = np.nan
score.style.highlight_null()
案例:高亮黄色显示null
值
# 构造null值
score.iloc[1, 2] = np.nan
score.style.highlight_null(null_color='yellow')
highlight_min
:高亮显示最小值
highlight_min
方法的签名如下:
highlight_min(subset=None, color: str = 'yellow', axis: Union[str, int, NoneType] = 0) -> 'Styler'
highlight_min
方法具有两个参数:
color
:指定最小值的高亮颜色。类型为字符串,默认为黄色。subset
:指定作用范围(子集)。axis
:轴方向,即设置最小值的比较范围。默认值为0
即按列方向比较,1
为按行方向比较。
highlight_min
方法的返回值为Styler
对象。
案例:高亮黄色显示每列最小值
score.style.highlight_min()
案例:高亮黄色显示每行最小值
score.style.highlight_min(axis=1)
案例:高亮黄色显示所有元素中的最小值
score.style.highlight_min(axis=None)
案例:高亮红色显示某列中的最小值
score.style.highlight_min(axis=0,subset='高数',color='red')
highlight_max
:高亮显示最大值
highlight_max
方法的签名如下:
highlight_max(subset=None, color: str = 'yellow', axis: Union[str, int, NoneType] = 0) -> 'Styler'
highlight_max
方法的参数、返回值与highlight_min
方法类似,不再赘述。
background_gradient
:以热力图(色阶)形式显示数值大小
background_gradient
方法依赖matplotlib
,支持seaborn
。
background_gradient
方法的签名为:
background_gradient(cmap='PuBu', low: float = 0, high: float = 0, axis: Union[str, int, NoneType] = 0, subset=None, text_color_threshold: float = 0.408, vmin: Union[float, NoneType] = None, vmax: Union[float, NoneType] = None) -> 'Styler'
background_gradient
方法的参数为:
cmap
:Matplotlib
颜色映射(colormap)。类型为字符串或colormap
,默认值为’PuBu’low
:最小颜色范围。类型为浮点值。默认为0。high
:最大颜色范围。类型为浮点值。默认为0。axis
:轴方向,即设置值的比较范围。默认值为0
即按列方向比较,1
为按行方向比较。subset
:指定作用范围(子集)。text_color_threshold
:文本的亮度阈值,用于辅助文本在不同背景色下的显示。类型为浮点值或整数,取值范围为0-1
,0
为全部文本都为暗色,1
为全部文本都为亮色。vmin
:colormap中的最小值。类型为浮点数,默认值为数据中的最小值。vmax
:colormap中的最大值。类型为浮点数,默认值为数据中的最大值。
background_gradient
方法的返回值为Styler
对象。
案例:background_gradient()
方法默认样式
score.style.background_gradient()
案例:使用matplotlib内置colormap高亮显示
score.style.background_gradient(cmap='autumn_r')
案例:调整colormap颜色范围
score.style.background_gradient(cmap='autumn_r',high=0.5,low=0.5)
bar
:以数据条形式显示数值大小。
bar
方法的签名为:
bar(subset=None, axis: Union[str, int, NoneType] = 0, color='#d65f5f', width: float = 100, align: str = 'left', vmin: Union[float, NoneType] = None, vmax: Union[float, NoneType] = None) -> 'Styler'
bar
方法的参数为:
width
:最大值占单元格宽度的百分比。类型为浮点值,取值范围为0-100
。默认为100
。axis
:轴方向,即设置数据条的比较范围。默认值为0
即按列方向比较,1
为按行方向比较。subset
:指定作用范围(子集)。color
:数据条颜色。类型为字符串或二元数组/列表。默认值为'#d65f5f'
。- 字符串:所有单元格使用同一种颜色。
- 二元数组/列表:分别定义负值和正值数据条颜色,即
(负值颜色,正值颜色)
。
- align :数据条的对齐方式。取值范围为
{'left', 'zero',' mid'}
,默认值为'left'
。'left'
:最小值位于单元格的左侧。'zero'
:0
值位于单元格的中央。'mid'
:(max-min)/2
值位于单元格的中央。如果所有值均为正值,0
值位于单元格左侧;如果所有值均为负值,0
值位于单元格右侧。
vmin
:数据条(左侧)最小值。类型为浮点数,默认值为数据中的最小值。vmax
:数据条(右侧)最大值。类型为浮点数,默认值为数据中的最大值。
bar
方法的返回值为Styler
对象。
案例:bar()
方法默认样式
score.style.bar()
案例:bar()
方法align
参数演示
score.style.bar(align='mid')
参考文献
https://pandas.pydata.org/docs/user_guide/style.html
Pandas:利用Styler对象设置Series、Dataframe在Jupyter Notebook中的输出样式(2)——内置样式相关推荐
- pandas将列表list插入到dataframe的单元格中、pandas使用read_csv函数读取文件并设置保留数值的前置0( leading zeroes)
pandas将列表list插入到dataframe的单元格中.pandas使用read_csv函数读取文件并设置保留数值的前置0( leading zeroes) 目录
- pandas使用set_table_attributes函数、display_html函数等在jupyter notebook中并排显示两个dataframe的内容(side by side)
pandas使用set_table_attributes函数.display_html函数等在jupyter notebook中并排显示两个dataframe的内容(side by side) 目录
- Java 定义一个抽象类—水果,其中包括getWeight()方法,创建若干水果对象存放在一个水果类型的数组中,输出数组中所有水果的类型、重量。
Java 定义一个抽象类-水果 其中包括getWeight()方法,编写程序分别创建苹果.桃子.橘子3个类,创建若干水果对象存放在一个水果类型的数组中,输出数组中所有水果的类型.重量. 抽象类Frui ...
- pandas 处理 excel 文件 之 Series DataFrame 篇
创建Series import pandas as pd #从字典创建 dict = {'id':'1','name':'dekyi','age':'29'} s = pd.Series(dict) ...
- Spark15:Spark SQL:DataFrame常见算子操作、DataFrame的sql操作、RDD转换为DataFrame、load和save操作、SaveMode、内置函数
前面我们学习了Spark中的Spark core,离线数据计算,下面我们来学习一下Spark中的Spark SQL. 一.Spark SQL Spark SQL和我们之前讲Hive的时候说的hive ...
- JSP内置对象:request、response、out、session、application等内置对象
Java程序的功能主要是由Java包下的各个类在运行期所产生的对象所提供,并且应用这些对象组织构建程序所需的功能. 所谓JSP内置对象,是指在JSP网页环境之下,用户不需要声明而直接可以在JSP网页中 ...
- javaWeb 中Tomcat 10 jsp文件内置对象不能正常使用的问题(已解决)
在这段时间学习javaweb时,因为是自己找的视频,下载了最新版本的Tomcat,Tomcat 10 ,然后就发现了很多问题,Tomcat 10 跟之前的版本 有很大的区别,以至于,10以下的版本的文 ...
- TF:jupyter notebook中plt.grid设置后不显示网格以及“TypeError: ‘bool‘ object is not callable”错误
1 问题背景 在TF学习过程中,使用jupyter notebook,plt绘制序列并显示网格.但是在运行过程中,发现,代码可以正常运行,但是网格无法显示. 完整代码如下: import matplo ...
- php中表单输出成绩,js内置对象处理_打印学生成绩单的简单实现
任务: 1.通过js的内置对象得到当前日期 var date=new Date(); var year=date.toString().slice(11,15); document.write(yea ...
- jupyter notebook中R语言绘图画布大小设置
options(repr.plot.width=X, repr.plot.height=Y) #设置宽度 X, 高度 Y
最新文章
- spring包镜像下载地址
- Understanding JVM Internals---不得不转载呀
- springboot整合websocket实现群聊
- Python中collections模块
- 在consumer中调用provider服务
- 是什么样的骚操作让应用上线节省90%的时间
- 前端学习(1604):脚手架props与state
- DataGrip汉化方法
- 蓝桥杯 基础练习 高精度加法
- 有关python的知识点_Python常见的知识点整理
- “Python字符串index()方法应用案例”文末三道思考题答案
- 接手一个APP,如何从0到1去做测试体系的搭建?
- 华为鸿蒙HarmonyOS,华为鸿蒙HarmonyOS-系统概述
- 第八章指针实验成绩汇总
- React :caniuse-lite is outdated. please run next command
- 开源dns软件PowerDNS BIND9 mydns
- Log4j配置按照文件大小和日期分割日志文件
- 小熊错误_《三只小熊闯祸了》:想要孩子勇于承认错误,怎么跟TA聊?
- 想提高棋艺?试试这款围棋AI
- 有一种冲动:世界那么大
热门文章
- [跟进]_中国银联悄然推出B2C网站-银联在线商城
- nginx ajax 错误500,聊聊nginx报错499问题
- oracle漏洞修补,01-oracle漏洞修复
- oracle 索引 状态 unusable,usable ,disable,enable
- 手把手和你用原生JS写一个循环播放图片轮播
- linux md5加密文件,linux md5 加密字符串和文件方法
- 互联网时代运维价值的重塑
- Android Zxing 相册二维码/条码图片识别
- 三星s20 android 10.0,三星S20猎户CPU系列安卓10.0 TWRP Recovery V3.4.0.10
- 每日思考第 61 期:职场PUA与情场PUA