excel 饼状图绘制

案例1

from openpyxl import Workbook
from openpyxl.chart import PieChart, Reference
from openpyxl.chart.marker import DataPointwb = Workbook()
sheet = wb.active# 1.饼状图的数据
data = [['Pie', 'Sold'],['苹果', 50, 50, 50, 50, 50],['樱桃', 30, 50, 40, 40, 10],['南瓜', 10, 50, 30, 30, 20],['巧克力', 40, 50, 20, 30, 30],
]# 2.插入数据-sheet
for i in data:sheet.append(i)# 3.饼状图-PieChart
# 3.1 实例化对象
pie = PieChart()
pie.title = "商店的销售"
# 3.2 获取数据
data = Reference(worksheet=sheet, min_col=2, min_row=1, max_row=len(data))
# 指定某一列数据画图
# data = Reference(worksheet=sheet, range_string="Sheet!C1:C5")
# 标注
lables = Reference(worksheet=sheet, min_col=1, min_row=2, max_row=len(data))# 3.3 添加数据到 图
pie.add_data(data, titles_from_data=True)
pie.set_categories(lables)# 指定 第一个 扇形 --偏离圆心 20
# 设置偏离度       idx 哪个扇形   explosion 偏离多远
slice = DataPoint(idx=0, explosion=50)
#给  扇形位置 赋值  series 只有一个对象
pie.series[0].data_points = [slice]
print(pie.series)# 3.4 添加图 到 sheet
sheet.add_chart(pie, f'A{len(data) + 3}')# 4.保存
wb.save("hello.xlsx")

案例2

# 1.导包
from openpyxl import Workbook
wb = Workbook()
sheet = wb.active# 组织数据
data = [['门店', '售卖量'],['金燕龙店', 110],['昌平店', 140],['顺义店', 188]
]# 插入数据 sheet
for i in data:sheet.append(i)from openpyxl.chart import PieChart, PieChart3D, Reference# 1.图的对象
pie = PieChart()
pie = PieChart3D()# 2. 设置标题
pie.title = "2020年北京营业额"
# 3. 图的数据
data = Reference(sheet, min_col=2, min_row=1, max_row=len(data))
# 4. 图的标注数据
lables = Reference(sheet, min_col=1, min_row=2, max_row=len(data))
# 5. 图添加 数据
pie.add_data(data, titles_from_data=True)
# 6. 图添加 标注
pie.set_categories(lables)# 7. 表添加 图
sheet.add_chart(pie, anchor="D1")# 4.保存
wb.save("hello.xlsx")

excel 折线图绘制

案例1

from datetime import date
# 1.导包
from openpyxl import Workbook
from openpyxl.chart import LineChart, Reference
wb = Workbook()
sheet = wb.active# 设置第一列的宽度
sheet.column_dimensions['A'].width = 15# 数据
rows = [['日期', 'python 1', 'python 2', 'python 3'],[date(2015, 9, 1), 40, 30, 25],[date(2015, 9, 2), 40, 25, 30],[date(2015, 9, 3), 50, 30, 45],[date(2015, 9, 4), 30, 25, 40],[date(2015, 9, 5), 25, 35, 30],[date(2015, 9, 6), 20, 40, 35],
]# 写入 excel 数据
for data in rows:sheet.append(data)# 画图 折线图
# 一个图一个对象 -实例化
linechart = LineChart()# 2.设置属性-- 图的标题--图的类型-X轴标题-Y轴标题
linechart.title = 'python版本的占比'
linechart.style = 13
linechart.x_axis.title = '数字'
linechart.y_axis.title = '占比大小'# 3.给图添加数据
data = Reference(worksheet=sheet, min_col=2, min_row=1, max_col=4, max_row=7)
linechart.add_data(data, titles_from_data=True)# 设置线条的样式-- 线样式--线颜色--是否是 实心线条--平滑度
"""
'circle', 'dash', 'diamond', 'dot', 'picture',
'plus', 'square', 'star', 'triangle', 'x', 'auto'
"""# 设置第一条折线数据
line1 = linechart.series[0]
line1.marker.symbol = "x"# marker 填充颜色
line1.marker.graphicalProperties.solidFill = "FF0000"
# marker线颜色
line1.marker.graphicalProperties.line.solidFill = "FF0000"
# 是否填充连接线
line1.graphicalProperties.line.noFill = True# 设置第二条折线数据
line2 = linechart.series[1]
line2.graphicalProperties.solidFill = "00AAAA""""
'solid', 'dot', 'dash', 'lgDash', 'dashDot',
'lgDashDot', 'lgDashDotDot', 'sysDash', 'sysDot','sysDashDot','sysDashDotDot'
"""
line2.graphicalProperties.line.dashStyle = "sysDot"
from openpyxl.drawing.line import LineProperties
print(line2.graphicalProperties.line)
line2.graphicalProperties.line.width = 100050# 设置第三条折线数据
line3 = linechart.series[2]# 平滑曲线
line3.smooth = True# 4.给表添加  折线图
sheet.add_chart(linechart, 'A10')# 4.保存
wb.save("hello.xlsx")

案例2


# 1.导包
from random import randint
from datetime import time
from openpyxl import Workbook# 2.创建对象
from openpyxl.chart import LineChart, Reference, LineChart3Dwb = Workbook()# 3. 获取默认表
sheet = wb.activerows = [["时间", "服务人数"],
]for i in range(8, 24):rows.append([time(i), randint(0, 200)])for data in rows:sheet.append(data)# 折线图
# 1.一个图一个对象 -实例化
linechart = LineChart()
linechart = LineChart3D()# 2.设置属性-- 图的标题--图的类型-X轴标题-Y轴标题
linechart.title = "客服绩效图当天"
linechart.y_axis.title = "服务人数"
linechart.x_axis.title = "时间"# 图的数据
data = Reference(worksheet=sheet,min_col=2,min_row=1,max_col=2,max_row=len(rows), )
linechart.add_data(data, titles_from_data=True)# 设置 X轴 显示的内容
linechart.x_axis.number_format = "HH:MM"
x_title = Reference(worksheet=sheet, min_col=1, min_row=2, max_row=len(rows))
linechart.set_categories(x_title)sheet.add_chart(linechart, "A20")
# 4.保存
wb.save("hello.xlsx")

坐标轴中可能涉及到的日期格式

from datetime import datetimedate_one_str = "2020-12-19"
date_two_str = "2020年12月19日"
date_three_str = "2020/12/19"today_date = datetime.today()# 将 日期格式 --转换成 字符串
today_date.strftime('%Y-%m-%d %H:%M:%S')
today_date.strftime('%Y年%m月%d日')
today_date.strftime('%Y/%m/%d')# 将 字符串 --转换成 日期格式
datetime.strptime(date_one_str, "%Y-%m-%d")
datetime.strptime(date_two_str, "%Y年%m月%d日")
datetime.strptime(date_three_str, "%Y/%m/%d")

Python 在 excel 中画 饼状图 折线图相关推荐

  1. 怎么用python画饼状图_如何使用python的pygal模块画饼状图

    python是一个很有趣的语言,可以在命令行窗口运行.python中有很多功能强大的模块,这篇经验告诉你,如何使用python的pygal模块,画饼状图. 工具/原料 windows系统电脑一台 py ...

  2. Python 用 matplotlib 中的 plot 画图,折线图

    文章目录 1. 加载宏包 2. plot 函数的语法 plot([x], y, [fmt], **kwargs) 3. 一张图画好几条线 1. 加载宏包 使用 matplotlib 包画图时,我们一般 ...

  3. 用 Python 在 Excel 中画出蒙娜丽莎

    文 | 麦麦麦造 出处 | 掘金 之前看到过很多头条,说哪国某人坚持了多少年自学使用 excel 画画,效果十分惊艳.对于他们的耐心我十分敬佩.但是作为一个程序员,自然也得挑战一下自己.这种需求,我们 ...

  4. python用matploblib库画准确率、损失率折线图

    import matplotlib.pyplot as pltepochs = [0,1,2,3] acc = [4,8,6,5] loss = [3,2,1,4]plt.plot(epochs,ac ...

  5. python画饼图程序_python使用matplotlib画饼状图

    本文实例为大家分享了python使用matplotlib画饼状图的具体代码,供大家参考,具体内容如下 代码与详细注释 from matplotlib import pyplot as plt #调节图 ...

  6. python饼状图颜色一样_使用echarts画饼状图,设置饼状图颜色

    前言: 前面已经跟大家分享了使用echarts画柱状图.折线图,一些之前自己遇到的坑也跟大家说了,这次就不再赘述.官方有配置文档,很详细,大家不懂的地方也可以交流. 今日分享重点:画饼状图. 1.引入 ...

  7. python画饼状图

    python画饼状图 文章目录 python画饼状图 前言 一.引入matplotlib库 二.完整代码 1.如下 总结 前言 今天,我们试着用python来绘制我们的饼状图 一.引入matplotl ...

  8. excel根据数据画饼状图等

    把Word的数据粘贴到excel 在Excel中的部分数据 在一边计算各类病总数 选择二维饼图 改变标题 更改图表类型可以选择其他图三维饼图圆环图 旭日图 柱状图条状图折线图面积图 雷达图

  9. Python的可视化包 – Matplotlib 2D图表(点图和线图,.柱状或饼状类型的图),3D图表(曲面图,散点图和柱状图)...

    Python的可视化包 – Matplotlib Matplotlib是Python中最常用的可视化工具之一, 可以非常方便地创建海量类型地2D图表和一些基本的3D图表.Matplotlib最早是为了 ...

最新文章

  1. 3维线程格 gpu_图形处理单元(GPU)
  2. 免费的HTML5连载来了《HTML5网页开发实例具体解释》连载(四)HTML5中的FileSystem接口...
  3. ovation系统服务器安装,Ovation系统介绍.ppt
  4. 二叉树的应用 表达式处理_【每日编程208期】2018年408应用题41题
  5. 基于VUE的echart图表自适应窗口大小变化插件开发
  6. 安卓zip解压软件_安卓zip文件压缩RAR解压app下载-安卓zip文件压缩RAR解压安卓版 v3.0.4...
  7. 宝塔linux架设手游,守望黎明架-linux手工端设教程
  8. 利用kali自带的msfvenom工具生成远程控制软件(木马)
  9. Java代理模式详解
  10. 衡量公司盈利能力的重要指标-净资产收益率
  11. 【基本算法】穷举算法
  12. USB Type-C PD快充简介
  13. Spring所有注解大揭秘
  14. 基于虚拟仪器的电磁阀综合特性系统设计
  15. 电缆标识牌怎么填写规范清晰不褪色
  16. UGREEN 绿联 USB 2.0转串口DB9 打印线 驱动安装教程
  17. mysql 走索引 很慢_MySQL 优化:为什么 SQL 走索引还那么慢?
  18. 企业认证ISO27001的必要性
  19. LNMP搭建(Centos 7 源码包)
  20. IOError: [Errno 2] No such file or directory的解决方法

热门文章

  1. 安防RTSP协议摄像头实现WEB端无插件直播流媒体服务EasyNVR实现海康大华宇视摄像头网页播放的方法
  2. yarn serve yarn : 无法加载文件 D:\node\node_global\yarn.ps1,因为在此系统上禁止运行脚本。
  3. ffmpeg录制桌面(自己用gdi抓图)
  4. kazam使用_尝试使用2种免费的桌面录制工具:SimpleScreenRecorder和Kazam
  5. MYSQL inserOrUpdate三种写法
  6. R语言实现SOM(自组织映射)模型(三个函数包+代码)
  7. 三个可替代“迅雷”的下载软件,速度超快!
  8. 打造品牌元宇宙 子虔科技Zetaverse产业元宇宙平台现已上线
  9. 20篇高质量程序人生文章分享,做开发不仅仅只有代码
  10. php excel给excel批量插入图片