Python xlsxwriter在xlsx文件中插入图片的两种方式

目录

1.insert_image方法

2.insert_chart方法


在xlsxwriter提供了两种方法在工作表中插入图片。分别是insert_image和insert_chart方法。两种方法都可以插入图片,区别如下:

insert_image插入的是一个图片,完全的一个外部图片,不可以编辑。而insert_chart插入的图片其实相当于调用excel中的画图工具画出来的,数据来源必须是当前文件(新创建的文件),并且画出的图和在excel中画出的图一样,并且可以编辑。

1.insert_image方法

insert_image方法比较简单,我们只需有准备一个图片即可,示例如下:

import xlsxwriter
wb = xlsxwriter.Workbook("test.xlsx")
pictureSheet = wb.add_worksheet("图片")
pictureSheet.index("A1","image.png")
wb.close()

2.insert_chart方法

insert_chart方法相当于是是Excel中的画图工具。比如要在A.xlsx文件中插入图片,那么绘图所需数据必须是A.xlsx文件中的数据。

注意:xlsxwriter不支持打开新文件,每次都要新创建文件去写入数据


import xlsxwriter

wb = xlsxwriter.Workbook("test.xlsx")

# 写入数据
sheet1 = wb.add_worksheet("Sheet1")
# 标号从0开始,这里不解释write_column方法
sheet1.write_column(0,0,["A",12,13,14,15,16,17,18,19,20,21])
sheet1.write_column(0,1,["B",2,3,4,5,6,7,8,9,0,1])
# area:面积图
# bar:条形图
# column:直方图
# doughnut:环状图
# line:折线图
# pie:饼状图
# scatter:散点图
# radar:雷达图
# stock:箱线图
chart = wb.add_chart({"type":"line"})

# name为线的名字
# categories为自变量,理解为x轴,sheet表示数据来自于工作表Sheet1,后面几个参数分别为数据开始的坐标和数据结束的坐标,一般是行或者列,
# 出了用数字表示还可以向EXCEL中一样用单元格符号表示,数字表示更简单
# 2, 1, 12, 1表述数据为第一列的第二行到第12行的数据
chart.add_series({
            'name': "test-line",
            'categories': ['Sheet1', 2, 2, 12, 2],
            'values': ['Sheet1', 2, 1, 12, 1],
        })
chart.set_title({'name': 'LS拉剪试样载荷-位移曲线', 'name_font': {'size': 10}})
chart.set_size({'width': 700, 'height': 500})
chart.set_x_axis({'name': '标距段位移:mm', 'name_font': {'size': 10}, 'min': -1, 'max': 14})
chart.set_y_axis({'name': '载荷:N', 'name_font': {'size': 10}})


sheet1.insert_chart("C3", chart, {'x_offset': 20, 'y_offset': 10})
# 参数为插入位置,图表,图表大小

wb.close()



 效果如下:

 

  • 4
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值