在本文中,我想向您展示使用Python向Microsoft Excel绘制饼图,为此我们将使用XlsxWriter库。XlsxWriter是一个Python模块,用于编写Excel 2007+ XLSX文件格式的文件。XlsxWriter可以用来编写文本,数字,公式和超链接到多个工作表,它支持的功能,如格式和更多,包括:

  • 100%兼容Excel XLSX文件。
  • 完整的格式。
  • 合并单元格。
  • 定义的名字。
  • 图表。
  • 自动筛选。
  • 数据验证和下拉列表。
  • 条件格式。
  • 工作表PNG和JPEG/BMP/WMF/EMF图像。
  • 丰富的多格式字符串。
  • 单元格注释。
  • 与Pandas集成。
  • 文本框。
  • 支持添加宏。
  • 用于写入大文件的内存优化模式。
  • 它支持Python 2.7、3.4+和PyPy,并且只使用标准库。

要在excel表格中绘制图表,首先要创建特定图表类型的图表对象(例如饼状图等)。创建图表对象之后,在其中插入数据,最后在表对象中添加该图表对象。同样,为了在excel表上绘制简单的饼图,可以使用带有工作簿对象类型’ Pie ‘关键字参数的add_chart()方法。

首先,您需要安装这个库

pip install XlsxWriter

下面是本文的完整代码

# 导入xlsxwriter模块
import xlsxwriter

# Workbook() 接受一个非可选参数
# 这是我们要创建的文件名。
workbook = xlsxwriter.Workbook("www.linuxmi.com.xlsx")

# 然后使用工作簿对象添加新的
# 通过add_worksheet()方法的工作表。
worksheet = workbook.add_worksheet()

# 这里我们创建粗体格式对象。
bold = workbook.add_format({'bold':1})

# 这是我们的数据和数据列表
headings = ['Category', 'Values']

data = [

    ['LinuxMi', 'Ubunut', 'Python'],
    [55, 35, 6],

]

# 从“A1”开始写入一行数据
# 粗体格式。
worksheet.write_row('A1', headings, bold)

# 从开始写入一列数据
# 分别为A2、B2、C2。
worksheet.write_column('A2', data[0])
worksheet.write_column('B2', data[1])

# 这是图表类型
chart1 = workbook.add_chart({'type': 'pie'})

# 向图表添加数据系列
chart1.add_series({
    'name':'Pie Sales Data',
     'categories':['Sheet1', 1,0,3,0],
     'values':['Sheet1', 1,1,3,1],

})

# 设置图表的标题
chart1.set_title({'name':'www.linuxmi.com - Data Chart'})

# 设置图表的样式
chart1.set_style(10)

# 将图表插入工作表
worksheet.insert_chart('C2', chart1, {'x_offset':25, 'y_offset':10})

# 关闭工作簿 
workbook.close()

运行完整的代码,结果如下:

发表评论

电子邮件地址不会被公开。 必填项已用*标注