如何使用matplotlib画图直接写入excel

小编给大家分享一下如何使用matplotlib画图直接写入excel,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

用 matpyplot.lib  生成的图片, 想直接写到 excel 里面. 

结果 没有摸上门道去,  浪费了一点时间.  

就顺便 把文档看了下.  

就顺便做了几个例子.  希望可以帮到你. 

import  os,  sys

from matplotlib  import  pyplot  as plt 

import  pandas as pd 

from io  import BytesIO 

import  xlswriter  as xls 

>>> df3 = pd.DataFrame({'X': ['A', 'B', 'A', 'B'], 'Y': [1, 4, 3, 2]})

>>> df3

   X  Y

0  A  1

1  B  4

2  A  3

3  B  2

df3.plot()

plt.show()

  如何使用matplotlib画图直接写入excel

plt.savefig('abc.png') 

book=xls.Workbook('abc.xls')

sheet=book.add_worksheet('demo')

sheet.insert_image('D5', 'abc.png') 

book.close() 

如何使用matplotlib画图直接写入excel

图片写到Excel 里面了. 

当然了.  这里 就

insert_image( row,column, imagfile, {xargs}) 

字典  xargs  

{
    'x_offset':        0,
    'y_offset':        0,
    'x_scale':         1,
    'y_scale':         1,
    'object_position': 2,
    'image_data':      None,
    'url':             None,
    'tip':             None,}

这里有个  image_data  这个是一个buffer .  或者 说是一个byteio 的对象. 

这样就不用先写磁盘 再从磁盘里 读数据写excel 了. 

imagdata=BytesIO()

plt.savefig(imagedata) 

book=xls.Workbook('abc.xls')

sheet=book.add_worksheet('demo')

sheet.insert_image(10,5,'',{"image_data": imagedata}) 

book.close() 

效果是一样的.  

其实这样就  可以完美的解决问题了. 

以上是“如何使用matplotlib画图直接写入excel”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!