pandas to_excel 添加颜色操作


Posted in Python onJuly 14, 2020

我就废话不多说了,大家还是直接看代码吧~

import pandas as pd
import numpy as np
 
columns = [['A', 'A', 'B', 'B', 'C'], ['a', 'b', 'c', 'd', 'e']]
# 创建形状为(10,5) 的DataFrame 并设置二级标题
demo_df = pd.DataFrame(np.arange(50).reshape(10, 5), columns=columns)
print(demo_df)
 
def style_color(df, colors):
  """
  
  :param df: pd.DataFrame
  :param colors: 字典 内容是 {标题:颜色}
  :return: 
  """
  return df.style.apply(style_apply, colors=colors)
 
def style_apply(series, colors, back_ground=''):
  """
  :param series: 传过来的数据是DataFramt中的一列  类型为pd.Series
  :param colors: 内容是字典 其中key 为标题名  value 为颜色
  :param back_ground: 北京颜色
  :return:
  """
  series_name = series.name[0]
  a = list()
  # 为了给每一个单元格上色
  for col in series:
    # 其中 col 为pd.DataFrame 中的 一个小单元格  大家可以根据不同需求为单元格设置不同的颜色
    # 获取什么一级标题获取什么颜色
    if series_name in colors:
      for title_name in colors:
        if title_name == series_name:
          back_ground = 'background-color: ' + colors[title_name]
          # '; border-left-color: #080808'
    a.append(back_ground)
  return a
 
style_df = style_color(demo_df, {"A": '#1C1C1C', "B": '#00EEEE', "C": '#1A1A1A'})
 
with pd.ExcelWriter('df_style.xlsx', engine='openpyxl') as writer:
  #注意: 二级标题的to_excel index 不能为False
  style_df.to_excel(writer, sheet_name='sheet_name')

以上就是pandas.DataFrame 二级标题to_excel() 添加颜色的demo 大家可以自行根据不同需求修改

主要注意

style_apply 方法中的内容 里面是真正设置颜色的地方

补充知识:对pandas的dataframe自定义颜色显示

原始表是这样,一堆数字视觉表达能力很差

pandas to_excel 添加颜色操作

quantity_year.style.background_gradient(cmap='gray_r')

pandas to_excel 添加颜色操作

按照大小对其进行不同颜色的填充,视觉表达能力强了很多。 也可以自定义颜色填充,比如我这里对大于平均值的进行颜色填充。

quantity_year.style.applymap(lambda v
               : 'background-color: %s' %'#FFCCFF' if v>quantity_year.mean().mean() 
               else'background-color: %s'% '')

当然也可以自己def 更复杂的功能,都是大同小异。当然还有highlight_max(‘color'),highlight_min(‘color')这种高亮最小最大值,也有hide_index()这种隐藏索引的小操作,在这里记录一下。

以上这篇pandas to_excel 添加颜色操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python操作xml文件详细介绍
Jun 09 Python
用Python登录好友QQ空间点赞的示例代码
Nov 04 Python
教你用 Python 实现微信跳一跳(Mac+iOS版)
Jan 04 Python
python编写微信远程控制电脑的程序
Jan 05 Python
Flask 让jsonify返回的json串支持中文显示的方法
Mar 26 Python
python 读取文件并替换字段的实例
Jul 12 Python
python操作文件的参数整理
Jun 11 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
Jun 18 Python
python实现递归查找某个路径下所有文件中的中文字符
Aug 31 Python
python网络爬虫 CrawlSpider使用详解
Sep 27 Python
python 中不同包 类 方法 之间的调用详解
Mar 09 Python
Python基础之教你怎么在M1系统上使用pandas
May 08 Python
Python数据可视化实现多种图例代码详解
Jul 14 #Python
简单的Python人脸识别系统
Jul 14 #Python
Python局部变量与全局变量区别原理解析
Jul 14 #Python
Python迭代器协议及for循环工作机制详解
Jul 14 #Python
windows10在visual studio2019下配置使用openCV4.3.0
Jul 14 #Python
解决python pandas读取excel中多个不同sheet表格存在的问题
Jul 14 #Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
Jul 14 #Python
You might like
php实现的xml操作类
2016/01/15 PHP
教你用AngularJS框架一行JS代码实现控件验证效果
2014/06/23 Javascript
Ext JS框架程序中阻止键盘触发回退或者刷新页面的代码分享
2016/06/07 Javascript
js转html实体的方法
2016/09/27 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
js实现添加删除表格(两种方法)
2017/04/27 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
vue.js如何更改默认端口号8080为指定端口的方法
2017/07/14 Javascript
Nodejs中crypto模块的安全知识讲解
2018/01/03 NodeJs
React native ListView 增加顶部下拉刷新和底下点击刷新示例
2018/04/27 Javascript
vue基于两个计算属性实现选中和全选功能示例
2019/02/08 Javascript
详解JavaScript栈内存与堆内存
2019/04/04 Javascript
[08:08]DOTA2-DPC中国联赛2月28日Recap集锦
2021/03/11 DOTA
简单分析Python中用fork()函数生成的子进程
2015/05/04 Python
Python实现处理管道的方法
2015/06/04 Python
Python 爬虫学习笔记之多线程爬虫
2016/09/21 Python
python解决网站的反爬虫策略总结
2016/10/26 Python
Python实现的摇骰子猜大小功能小游戏示例
2017/12/18 Python
python pycurl验证basic和digest认证的方法
2018/05/02 Python
完美解决安装完tensorflow后pip无法使用的问题
2018/06/11 Python
Python中关键字global和nonlocal的区别详解
2018/09/03 Python
对Python发送带header的http请求方法详解
2019/01/02 Python
python使用time、datetime返回工作日列表实例代码
2019/05/09 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
详解Django3中直接添加Websockets方式
2020/02/12 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
python如何爬取动态网站
2020/09/09 Python
详解python爬取弹幕与数据分析
2020/11/14 Python
HTML5 新旧语法标记对我们有什么好处
2012/12/13 HTML / CSS
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
2013/05/29 面试题
心得体会范文
2014/01/04 职场文书
历史学专业求职信
2014/06/19 职场文书
敲诈同学钱财检讨书范文
2014/11/18 职场文书
2015年中学校长工作总结
2015/05/19 职场文书
给原生html中添加水印遮罩层的实现示例
2021/04/02 Javascript