社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

如何用 Python 在 Excel 中画柱状图

CDA数据分析师 • 3 年前 • 546 次点击  

作者:somenzz

来源:Python七号


我们手动在 Excel 表格中画柱状图是很简单的事情,但是一旦这种简单的工作需要每天都做,那么最好的办法就是用 Python 来自动完成。

今天分享一招,如何用 Python 在 Excel 中画柱状图。

这里借助于工具 openpyxl。

先准备一份简单的数据:

data_rows = [
    ["日期""案例数""验收通过数"],
    ["2022-08-01"727659],
    ["2022-08-02"727688],
    ["2022-08-03"725696],
    ["2022-08-04"725701],
    ["2022-08-05"725712],
    ["2022-08-08"725717],
    ["2022-08-11"725722],
]

预期的效果就是横坐标是日期,纵坐标是数量,有两个分类,如下图所示:

步骤就是:

1、把数据写入 sheet

2、实例化一个 BarChart

3、指定 BarChart 的数据范围,分类的范围,设置样式、标题等

4、保存

完整代码如下:

from openpyxl import Workbook
from openpyxl.chart import BarChart, Reference


def main(filename):
    workbook = Workbook()
    sheet = workbook.active
    data_rows = [
        ["日期""案例数""验收通过数"],
        ["2022-08-01"727659],
        ["2022-08-02"727688],
        ["2022-08-03"725696],
        ["2022-08-04"725701],
        ["2022-08-05"725712],
        ["2022-08-08"725717],
        ["2022-08-11"725722],
    ]

    # 1、把数据写入 sheet 
    for row in data_rows:
        sheet.append(row)

    # 2、实例化一个 BarChart
    bar_chart = BarChart()

    # 3、指定 BarChart 的数据范围,分类的范围,设置样式、标题等
    data = Reference(worksheet=sheet, min_row=1, max_row=8, min_col=2, max_col=3)
    x_axis = Reference(worksheet=sheet, min_col=1, min_row=2, max_row=8, max_col=1)
    bar_chart.add_data(data, titles_from_data=True)
    bar_chart.set_categories(x_axis)
    bar_chart.title = "案例验收情况"
    bar_chart.y_axis.title = "数量"
    bar_chart.x_axis.title = "日期"
    # bar_chart.style = 10 设置样式

    # 设置柱状图位置
    sheet.add_chart(bar_chart, "E2")

    # 4、保存
    workbook.save(filename)


if __name__ == "__main__":
    main("bar_chart.xlsx")

运行代码,就会生产 bar_chart.xlsx 文件,打开后就会看到预期的效果图




 

点这里👇关注我,记得标星哦~



推荐阅读


 

CDA课程咨询

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/146968
 
546 次点击