Python中怎样用openpyxl进行图表处理

发布时间:2020-10-27 09:20:19 作者:小新
来源:亿速云 阅读:482

小编给大家分享一下Python中怎样用openpyxl进行图表处理,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

在excel中找到许多行列等待处理的数据,替代传统低效率的人工操作,并且进行精简处理,这正是openpyx的受到众多好评的原因。

openpyxl通过charts进行图表处理,这里在就强大图表处理功能进行下补充。各种图表都有如下:

Python中怎样用openpyxl进行图表处理

BarChart为例, 在BarChart中,图表类型可以通过众多参数设置。

  

值被绘制为水平条或垂直列:通过将类型设置为COL或BAR,即可在垂直和水平条形图之间切换;当使用堆叠图时,重叠需要设置为100。可以通过chartObj.y_axis.title='Test_y', chartObj.x_axis.title='Test_x' 设置坐标轴的属性;通过chartObj.type='col'   (col为纵向,bar为横向),chartObj.title='Bar chart' 等来设置图表的属性等。

 

以下代码生成4种2D图表

from openpyxl import Workbook from openpyxl.chart import BarChart, Series, Reference wb = Workbook(write_only=True) ws = wb.create_sheet() rows = [    ('Number', 'Batch 1', 'Batch 2'),    (2, 10, 30),    (3, 40, 60),    (4, 50, 70),    (5, 20, 10),    (6, 10, 40),    (7, 50, 30), ] for row in rows:    ws.append(row) chart1 = BarChart() chart1.type = "col" chart1.style = 10 chart1.title = "Bar Chart" chart1.y_axis.title = 'Test number' chart1.x_axis.title = 'Sample length (mm)' data = Reference(ws, min_col=2, min_row=1, max_row=7, max_col=3) cats = Reference(ws, min_col=1, min_row=2, max_row=7) chart1.add_data(data, titles_from_data=True) chart1.set_categories(cats) chart1.shape = 4 ws.add_chart(chart1, "A10") from copy import deepcopy chart2 = deepcopy(chart1) chart2.style = 11 chart2.type = "bar" chart2.title = "Horizontal Bar Chart" ws.add_chart(chart2, "G10") chart3 = deepcopy(chart1) chart3.type = "col" chart3.style = 12 chart3.grouping = "stacked" chart3.overlap = 100 chart3.title = 'Stacked Chart' ws.add_chart(chart3, "A27") chart4 = deepcopy(chart1) chart4.type = "bar" chart4.style = 13 chart4.grouping = "percentStacked" chart4.overlap = 100 chart4.title = 'Percent Stacked Chart' ws.add_chart(chart4, "G27") wb.save("bar.xlsx")

代码验证通过,效果如下:

Python中怎样用openpyxl进行图表处理

以下代码生成3D图表

from openpyxl import Workbook from openpyxl.chart import (    Reference,    Series,    BarChart3D, ) wb = Workbook() ws = wb.active rows = [    (None, 2013, 2014),    ("Apples", 5, 4),    ("Oranges", 6, 2),    ("Pears", 8, 3) ] for row in rows:    ws.append(row) data = Reference(ws, min_col=2, min_row=1, max_col=3, max_row=4) titles = Reference(ws, min_col=1, min_row=2, max_row=4) chart = BarChart3D() chart.title = "3D Bar Chart" chart.add_data(data=data, titles_from_data=True) chart.set_categories(titles) ws.add_chart(chart, "E5") wb.save("bar3d.xlsx")

代码验证通过,效果如下:

Python中怎样用openpyxl进行图表处理

以上是Python中怎样用openpyxl进行图表处理的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. 怎么在Python中使用pyautocad和openpyxl对cad文件进行处理
  2. Python Excel处理库openpyxl使用详解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:tomcat出现异常解决(Invalid character.......)的原因

下一篇:python爬虫技术指的是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》