python学习笔记 - 绘制折线图与条形图

对openpyxl中【工作簿】、【工作页】、【行 / 列】与【单元格】的概念存在疑惑的可以参考《Excel工作簿、工作页、行列、单元格介绍》

1、折线图


折线图有着可以显示随时间(根据常用比例设置)而变化的连续数据等优点,因此非常适用于显示在相等时间间隔下数据的趋势。我们可以将排列在工作表的列或行中的数据绘制到折线图中。在折线图中,类别数据沿水平轴均匀分布,所有值数据沿垂直轴均匀分布。

1.1、创建折线图对象

对于面向对象的角度而言,我们需要绘制一个折线图,所以需要创建一个可以绘制折线图的对象,去辅助我们绘制折线图。openpyxl库下的chart模块为我们提供了LineChart类,去构造我们需要的折线图对象。我们首先观察一下LineChart类的构造方法:

def __init__(self, hiLowLines=None, upDownBars=None,
             marker=None, smooth=None, extLst=None, **kw):
    self.hiLowLines = hiLowLines
    self.upDownBars = upDownBars
    self.marker = marker
    self.smooth = smooth
    self.x_axis = TextAxis()
    self.y_axis = NumericAxis()
    super(LineChart, self).__init__(**kw)

其中没有我们必要初始化的参数,所以我们可以直接空参构造一个折线图对象。

from openpyxl import load_workbook
from openpyxl.chart import LineChart

wb = load_workbook('文件路径.xlsx')
ws = wb.active
# 构建LineChart对象
chart = LineChart()

1.2、绘制数据部分

openpyxl库下的chart包提供了add_data方法,可通过用户提供的数据,自动绘制折线图,那么如何使用该方法呢,首先我们先看一下该方法的源码:

def add_data(self, data, from_rows=False, titles_from_data=False):
    if not isinstance(data, Reference):
        data 
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值