DataFrame表样式设置(一)

小编
小编
小编
3
文章
0
评论
2020-04-1710:05:00 评论 1,924 1826字
摘要

我们知道Excel功能很强大,Python与Excel交互也有很多现成的模块可以用,主要有xlrd、xlwt、openpyxl、xlsxwriter这四种可以用,这些模块可以很好地通过Python实现Excel的功能,但是这些模块有一个不太方便的地方就是针对每一个单元格的行列位置去操作的,每次使用都很麻烦,不像DataFrame那样可以针对行列去进行操作。

1.前言

DataFrame虽然操作便利,但是DataFrame又有个不如意的地方就是不能针对表去进行设置格式(字体颜色、大小之类的),所以有的时候为了可以设置表的格式还是需要用那几个比较麻烦的 Excel模块。直到我遇到了StyleFrame模块,这个模块是把Pandas和openpyxl进行了结合,让你既可以享受DataFrame的操作便利,又可以轻松利用openpyxl进行表格样式设置。

接下来我们就看一看如何针对DataFrame表进行样式设置。要看怎么设置,我们得先看看可以设置什么。延续『对比Excel』特点,我们还是同样看看Excel中有哪些格式可以设置。

DataFrame表样式设置(一)

Excel中我们平常设置的主要有字体(类型、颜色、边框线、背景色、下划线、大小、加粗)、对齐方式(水平方向、垂直方向)、数字(数据显示格式,百分数、小数点位数、时间格式等设置)、条件格式四个部分。

2.准备工作

因为StyleFrame这个模块不是Anaconda自带的,所以需要我们手动进行安装。直接进行如下命令即可进行安装:

DataFrame表样式设置(一)

你也可以选择其他安装方式,关于包的安装方式可以看这篇:讲几种Python包的安装方式

如果你是python3.7,那么你直接运行上述命令可能会报错,因为pip默认安装的是该模块的最新版本(目前最新是2.0.2),但是最新版本可能不太兼容,这个时候你可以安装1.6.2版本(2.0版本尝试了也安装失败)的,我就是用的1.6.2版本安装成功的。安装命令如下:

DataFrame表样式设置(一)

安装好以后,我们需要新建一个StyleFrame供接下来使用,新建StyleFrame使用的方法与新建DataFrame用的一样。

DataFrame表样式设置(一)

需要注意的是这里的sf不同于DataFrame表的df,是不可以预览的。

3.设置样式对象

我们主要通过对下面的Styler进行样式设置。

DataFrame表样式设置(一)

以下为Styler对象的参数说明:

DataFrame表样式设置(一)

4.使用样式

设置完样式以后,我们就需要来指定在哪一行或哪一列上使用这个样式。

4.1在列上使用

在某一列上使用样式时需要用到如下方法:

DataFrame表样式设置(一)

参数说明如下:

DataFrame表样式设置(一)

4.2在行上使用

我们除了在某一列上设置样式外,我们有的时候要需要针对某些行进行样式设置,用到的方法如下:

DataFrame表样式设置(一)

参数说明如下:

DataFrame表样式设置(一)

5.字体设置

这一篇我们主要讲讲字体相关的设置,其他设置留在下一篇再讲。

5.1字体类型

第一个是关于字体类型的设置,也就是什么字体,关于字体类型设置使用的是font参数,主要有如下几种参数值(字体)可选:

DataFrame表样式设置(一)

字体类型中用的最多的就是arial,即微软雅黑。当我们把字体样式设置成Arial样式,实现代码如下:

DataFrame表样式设置(一)

我们用Excel打开设置样式后的文件,在字体类型那一栏就会显示Arial:

DataFrame表样式设置(一)

5.2颜色

第二个是关于字体颜色的设置,关于字体颜色设置使用的是font_color参数,主要有如下几种参数值(颜色)可选:

DataFrame表样式设置(一)

我们把col_1列的字体设置成绿色,col_2列字体设置成红色,实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

5.3边框线

第三个是关于单元格边框线设置的,关于边框线的设置使用的border_type参数,主要有如下几种参数值(边框线类型)可选:

DataFrame表样式设置(一)

这里的边框线其实也是一种线,那既然是线的设置,就和我们之前学过的折线图里面线的设置大同小异了,大家可以根据自己的需求选择合适的线形。

我们把边框线设置成点划线,实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

5.4背景色

第四个是关于背景色的设计,即单元格填充颜色,关于单元格背景颜色使用的是bg_color参数,单元格背景的可选颜色和字体颜色一致,这里不再赘述。

我们把col_1列的单元格背景设置成绿色,col_2列单元格背景设置成红色,实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

5.5下划线

第五个是关于下划线设置,给字加下划线,关于下划线的设置使用的是underline参数,主要有如下几种参数值(下划线类型)可选:

DataFrame表样式设置(一)

我们把整表全部加单下划线,实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

5.6字体大小

第六是字体大小的设置,字体大小的设置就比较简单了,直接给参数font_size指明一个具体数字就行。如下,我们将第一列设置成20号字体,将第二列设置成12号字体。实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

5.7字体加粗

第七个是字体是否加粗的设置,关于字体是否加粗使用的是bold参数,如果要让字体加粗,另bold=True,否则不设置即可。

我们将第儿列字体进行加粗,第一列不进行设置,实现代码如下:

DataFrame表样式设置(一)

最后效果如下:

DataFrame表样式设置(一)

关于字体相关的设置,我们就讲到这里,下一篇开始讲一些其他方面的设置,敬请期待。

  • 我的微信公众号
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: