有些时候,我们需要画图后的二进制数据流,matplotlib没有提供相关的api,通过源码查看与百度,得到下面此方法
import matplotlib.pyplot as plt import numpy as np import io x=np.arange(10) y=x #plt.plot(x,y) #canvas = plt.get_current_fig_manager().canvas #canvas.draw() fig=plt.figure() plt.plot(x,y) canvas=fig.canvas #上面这段代码和上面注释掉的代码效果一样 #方法1 buffer = io.BytesIO() canvas.print_png(buffer) data=buffer.getvalue() buffer.close() #方法2 buf, size = canvas.print_to_buffer() image = Image.frombuffer('RGBA', size, buf, 'raw', 'RGBA', 0, 1) buffer=io.BytesIO() image.save(buffer,'PNG') data=buffer.getvalue() buffer.close() with open('hhh.png',mode='wb') as f: f.write(data) #f=open('hh.png',mode='wb') #f.write(data) #f.close()
如果我们想把二进制的图片转成数组也是可以的,
buffer=io.BytesIO() buffer.write(data) img=Image.open(buffer) img = np.asarray(img)
以上这篇matplotlib.pyplot画图 图片的二进制流的获取方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
本文向大家介绍asp.net实现图片以二进制流输出的两种方法,包括了asp.net实现图片以二进制流输出的两种方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了asp.net实现图片以二进制流输出的两种方法。分享给大家供大家参考,具体如下: 方法一: 方法二: 希望本文所述对大家asp.net程序设计有所帮助。
本文向大家介绍C#远程获取图片文件流的方法,包括了C#远程获取图片文件流的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#远程获取图片文件流的方法。分享给大家供大家参考,具体如下: 更多关于C#相关内容感兴趣的读者可查看本站专题:《C#正则表达式用法总结》及《C#图片操作技巧汇总》 希望本文所述对大家C#程序设计有所帮助。
本文向大家介绍matplotlib.pyplot绘图显示控制方法,包括了matplotlib.pyplot绘图显示控制方法的使用技巧和注意事项,需要的朋友参考一下 在使用Python库时,常常会用到matplotlib.pyplot绘图,本文介绍在PyCharm及Jupyter Notebook页面中控制绘图显示与否的小技巧。 在PyCharm中显示绘图 在绘图代码最后加上“plt.show()”
本文向大家介绍js获取图片宽高的方法,包括了js获取图片宽高的方法的使用技巧和注意事项,需要的朋友参考一下 本文分享多种js获取图片宽高的方法,并且通过实例进行分析,希望大家从中有所收获。 一、简陋的获取图片方式 结果如下: 宽高都是0的这个结果很正常,因为图片的相关数据都没有被加载前它的宽高默认就是0 于是可以这么优化! 二、onload后在打印 结果如下 通过onload就能获取到图片的宽
本文向大家介绍写一个方法获取图片的方向相关面试题,主要包含被问及写一个方法获取图片的方向时的应答技巧和注意事项,需要的朋友参考一下 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="descripti
本文向大家介绍JS获取图片lowsrc属性的方法,包括了JS获取图片lowsrc属性的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS获取图片lowsrc属性的方法。分享给大家供大家参考。具体如下: lowsrc属性一般设置为图片的低分辨率图片地址,下面的代码可以通过点击链接显示图片的低分辨率版本 希望本文所述对大家的javascript程序设计有所帮助。