有没有方法可以让我将seborn或matplotlib图表保存为html字符串?我正在尝试将多个(大约20个)图表嵌入到一个自动报告中,该报告将每天通过电子邮件发送出去。我的报告的其他方面都是基于html的。我只是想确认一下,我必须依赖seborn/matplotlib中的图像对象。我本来是使用Altair并将JSON嵌入到我的电子邮件中的,但是这在任何电子邮件应用程序中都无法呈现,因为大多数电子邮件应用程序都禁用了javascript/css。
lmvvr0a81#
HTML允许您显示任何使用base64编码的图像,请考虑下面的小红点示例
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4 //8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />
取自How to Display Base64 Images in HTML。在您的情况下,您需要:使用seaborn生成base64编码的PNG图像,您可以按以下方式使用base64
seaborn
base64
import base64 import seaborn as sns fig = sns.heatmap([[1,2],[3,4]]).get_figure() fig.savefig('heatmap.png') with open('heatmap.png','rb') as f: b64data = base64.b64encode(f.read()) # b64data is bytes, use b64data.decode() if you need str
1条答案
按热度按时间lmvvr0a81#
HTML允许您显示任何使用base64编码的图像,请考虑下面的小红点示例
取自How to Display Base64 Images in HTML。在您的情况下,您需要:使用
seaborn
生成base64编码的PNG图像,您可以按以下方式使用base64