Python XlsxWriter – 线形图

Python XlsxWriter – 线形图

线形图显示了一系列的数据点,这些数据点沿着X轴用线连接。它是一个独立轴,因为X轴上的值不依赖于垂直的Y轴。

Y轴是一个从属轴,因为它的值取决于X轴,其结果是水平方向上的进展线。

使用XlsxWriter折线图

为了使用XlsxWriter以编程方式生成 折线图 ,我们使用 add_series() 。 图表对象的类型被定义为 ” 线 “。

例子

在下面的例子中,我们将绘制显示两种产品在6个月内的销售数字的 折线图 。用 add_series() 方法将产品A和产品B的销售数字对应的两个数据系列添加到图表中。

import xlsxwriter

wb = xlsxwriter.Workbook('hello.xlsx')
worksheet = wb.add_worksheet()
headings = ['Month', 'Product A', 'Product B']

data = [
   ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'June'],
   [10, 40, 50, 20, 10, 50],
   [30, 60, 70, 50, 40, 30],
]

bold=wb.add_format({'bold':True})
worksheet.write_row('A1', headings, bold)
worksheet.write_column('A2', data[0])
worksheet.write_column('B2', data[1])
worksheet.write_column('C2', data[2])

chart1 = wb.add_chart({'type': 'line'})

chart1.add_series({
   'name': '=Sheet1!B1',
   'categories': '=Sheet1!A2:A7',
   'values': '=Sheet1!B2:B7',
})
chart1.add_series({
   'name': ['Sheet1', 0, 2],
   'categories': ['Sheet1', 1, 0, 6, 0],
   'values': ['Sheet1', 1, 2, 6, 2],
})
chart1.set_title ({'name': 'Sales analysis'})
chart1.set_x_axis({'name': 'Months'})
chart1.set_y_axis({'name': 'Units'})

worksheet.insert_chart('D2', chart1)

wb.close()
Python

输出

执行上述程序后,下面是XlsxWriter生成折线图的过程 −

Python XlsxWriter - 线形图

除了 data_labels 之外, add_series() 方法也有一个 标记 属性。这在折线图中特别有用。数据点由标记符号表示,如圆形、三角形、方形、钻石等。让我们为这个图表中的两个数据系列指定 圆形方形 的符号。

chart1.add_series({
   'name': '=Sheet1!B1',
   'categories': '=Sheet1!A2:A7',
   'values': '=Sheet1!B2:B7',
   'data_labels': {'value': True},
   'marker': {'type': 'circle'},
})
chart1.add_series({
   'name': ['Sheet1', 0, 2],
   'categories': ['Sheet1', 1, 0, 6, 0],
   'values': ['Sheet1', 1, 2, 6, 2],
   'data_labels': {'value': True},
   'marker': {'type': 'square'},})
Python

数据标签和标记被添加到折线图中。

Python XlsxWriter - 线形图

折线图也支持 堆叠百分比堆叠的 子类型。

Python XlsxWriter - 线形图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册