python主流绘图工具:matplotlib ,seaborn,pandas ,openpyxl ,xslwriter

openpyxl :首先说下这个官网的demo,看的有点懵,没有具体说明多个图在一个excel引用不通ws Rererence 只是简单的一个deepcopy 用的一点懵逼,反正我是没看懂,其次多sheet写入也未做拓展,

看了下博客哪些水军一篇粘贴复制毫无新意:

下面以openpyxl 3d bar 柱状图为例:演示效果多sheet 生成柱状图:

from openpyxl import Workbook

from openpyxl.chart import (

Reference,

Series,

BarChart3D,

)

def bar_3d(configurations: dict):

""""

paint 3d bar in the excel ,

configuration={"data":None,"Title":None,"sheet_name":None,"index":None}

data:[

[姓名,column1,column2],

[value_name,value_col1,value_col2],

[value_name2,value_column2,value_column2]

]

"""

wb = Workbook()

for configuration in configurations:

sheet = configuration["sheet_name"]

ws = wb.create_sheet(sheet, index=configuration["index"])

rows = configuration["data"]

rows.insert(0, configuration["axis_x"])

for row in rows:

ws.append(row)

data = Reference(ws, min_col=2, min_row=1, max_col=3, max_row=7)

titles = Reference(ws, min_col=1, min_row=2, max_row=7)

chart = BarChart3D()

chart.title = configuration["Title"]

chart.add_data(data=data, titles_from_data=True)

chart.set_categories(titles)

chart.height=16

chart.width=28

chart.shape="box"

ws.add_chart(chart, "E5")

save_path = "test_static.xlsx"

wb.save(save_path)

解释参数:configurations 是一个存放许多configranition 的列表:每个configration 结构如注释:

configuration={"data":None,"Title":None,"sheet_name":None,"index":None}

data:[

[value_name,value_col1,value_col2],

[value_name2,value_column2,value_column2]

]

data就是要写入的数据包含header 和value,data[0]是表头,data[1:]全部是数据,index代表插入excel的sheet的index也就是第几个sheet,Title是绘制柱状图的title:

chart.height是图表的高度,width是宽度,add_chart 是插入chart 方法“E5"指定在excel插入位置,

rows.insert(0, configuration["axis_x"]) 这里插入是type分类的名称也就是rows.insert(0,[姓名,column1,column2])

,看个实际效果吧这个type就对应周日饱和,和bug提交量两列

多个sheet查看:

第二部分:使用pandas 绘图结合xslwriter:

官网:https://xlsxwriter.readthedocs.io/example_pandas_chart_columns.html

我就直接上代码了数据自己造了个用pandas:

import pandas as pd

def panda_chart(df_list, cols, title_x, title_y):

"""

data of narray

index of data_frame: [0,1,2,3]

cols numbers of static columns

"""

writer = pd.ExcelWriter('pandas_chart_columns2.xlsx', engine='xlsxwriter')

for i, df in enumerate(df_list):

# df = pd.DataFrame(data, index=None, columns=["姓名", "饱和度", "人力"])

sheet_name = f'Sheet{i}'

df.to_excel(writer, sheet_name=sheet_name,index=False)

workbook = writer.book

worksheet = writer.sheets[sheet_name]

chart = workbook.add_chart({'type': 'column'})

# set colors for the chart each type .

colors = ['#E41A1C', '#377EB8'] # , '#4DAF4A', '#984EA3', '#FF7F00']

# Configure the series of the chart from the dataframe data.

for col_num in range(1, cols + 1):

chart.add_series({

'name': [f'{sheet_name}', 0, col_num],

'categories': [f'{sheet_name}', 1, 0, 4, 0], # axis_x start row ,start col,end row ,end col

'values': [f'{sheet_name}', 1, col_num, 4, col_num], # axis_y value of

'fill': {'color': colors[col_num - 1]}, # each type color choose

'overlap': -10,

})

# Configure the chart axes.

chart.set_x_axis({'name': f'{title_x}'})

chart.set_y_axis({'name': f'{title_y}', 'major_gridlines': {'visible': False}})

chart.set_size({'width': 900, 'height': 400})

# Insert the chart into the worksheet.

worksheet.insert_chart('H2', chart)

writer.save()

if __name__ == '__main__':

data=[("a",2,4),("b",5,7)]

df = pd.DataFrame(data, index=None, columns=["姓名", "饱和度", "人力"])

panda_chart([df],2,"title x","title y")

标签:index,sheet,name,excel,chart,value,绘图,data,pandas

来源: https://www.cnblogs.com/SunshineKimi/p/12131884.html

excel pandas 画图_pandas 进行excel绘图相关推荐

  1. excel pandas 空格_Pandas写入excel:1)索引中的空白行;2)每天保存索引

    (1)模仿你的格式:import pandas as pd from pandas import * df = pd.read_csv('input.txt',sep=',',header=None, ...

  2. excel pandas 空格_pandas 实现 Excel 常见操作 (1)

    Excel 是数据处理最常用的工具,pandas 是数据分析的利器.那么,Excel 一些常见的操作, pandas 如何实现呢?网上有两篇挺有意思的文章,对此做了详细介绍.我结合自己在学习博文过程中 ...

  3. excel pandas 画图_告别加班,用pandas代替Excel处理数据,excel

    此为教程笔记 通过实例学习,实验数据商铺数据,california_housing_train 所用数据连接:csdn上去搜 数据截图: 目录 1.读取数据文件 # 读取csv数据 csv_path ...

  4. lisp倒入excel数据画图_将excel数据导入CAD画图的方法

    将 EXCEL 的数据导入 CAD 里绘图的方法 这是用 CAD 的 VBA ( cad 里的 lisp 功能也可以实现)的方法.此例是要完成如何在 CAD 中画出如下图 所示的坐标的图形-- 3D ...

  5. python数据分析pandas画图_Pandas数据可视化基础绘图教程

    众所周知,Pandas是基于Python平台的大数据分析与处理的利器.在数据为王的时代,想要掌握数据分析能力,学会Pandas数据可视化工具是十分重要的.本文将带领大家一步一步学习Pandas数据可视 ...

  6. pandas写入excel指定行_pandas读写excel文件的基本操作!,详细,教学,Pandas,对

    目录 假如有个excel表的数据如下: 1. 读取excel文件 先导包 import pandas as pd 读取文件 , shee_name是指定表单 fr = pd.read_excel('d ...

  7. pandas整表写入excel指定位置_pandas 实现 Excel 常见操作 (1)

    Excel 是数据处理最常用的工具,pandas 是数据分析的利器.那么,Excel 一些常见的操作, pandas 如何实现呢?网上有两篇挺有意思的文章,对此做了详细介绍.我结合自己在学习博文过程中 ...

  8. python读取excel指定行列_pandas读取excel指定行列索引header和index_col参数

    pandas读取excel文件sheet中的数据后会转为DataFrame对象,DataFrame对象是有行索引和列索引的,所以read_excel函数有2个参数来对行列索引进行设置. 1.指定哪一个 ...

  9. pandas操作excel,matplotlib.pyplot画图插入到excel,处理复杂excel简单练习

    在数据分析上,一直都在公司zeppelin上敲python/scala代码,进行数据分析,公司内搞了个小考试,操作excel,弄matplotlib画图之类的: 好久没弄过这些了,在小技术上感觉被打脸 ...

最新文章

  1. 图解SQL子查询实例
  2. Chord算法实现具体
  3. Pytorch模型层简单介绍
  4. Java反射机制概念及应用场景
  5. 当导用模块与包的import与from的问题(模块与包的调用)
  6. 程序员父亲的遗产——编程十诫 转载
  7. Linux下挂载和格式化虚拟磁盘图文教程
  8. 【TWVRP】基于matlab智能水滴算法带时间窗的车辆路径与调度优化问题【含Matlab源码 1228期】
  9. js-01_面向对象选项卡
  10. 基于华为云IoT设计的智能门锁
  11. 莫烦-pytorch
  12. 台式计算机那里可以录音,录音机怎么录音?电脑录音介绍
  13. Kali--社会工程学工具-social engineering toolkit(SET)
  14. lpop 原子_我问我答核磁共振都能测什么原子核?
  15. 常用的加密方式有哪些?
  16. SpringBoot整合Log4j2以及配置详解
  17. python os.path.abspath()与os.path.realpath()区别
  18. 淘宝客解析url优惠链接获取商品ID
  19. 《达利之梦》推出APP,带你走进VR超现实画作
  20. 【shaw学习笔记day1】Python21天+人工智能预科学习日记

热门文章

  1. A - 小雷的冰茶几
  2. Android dex修复工具,安卓热修复----手动加载dex文件到设备并执行
  3. 潍坊OA:通达OA 2015版正式发布
  4. 用计算机弹奏音乐的数字乐谱,抖音计算器音乐
  5. 【java后端学习路线3】SSM+Linux+Git学习指南,985本海硕自学转码
  6. HTML简单练习——个人名片
  7. 运行多个mysql service_同时运行多个MySQL服务器的方法
  8. python调用fmu
  9. 痞子衡嵌入式:利用GPIO模块来测量i.MXRT1xxx的系统中断延迟时间
  10. TCP标志位syn,ack,fin以及序列号(seq),响应号(ack)