将matplotlib图形嵌入到iPython HTML中

海盗

我想在Jupyter Notebook中使用代码单元动态编写和显示HTML。目的是生成HTML以我选择的某种方式显示表格,div,img标签。我想捕获img数据并将其放置在此自动生成的HTML中所需的位置。

到目前为止,我已经知道可以执行以下操作:

from IPython.core.display import HTML

HTML("<h1>Hello</h1>")

并获得:

你好

那太棒了。但是,我希望能够做到这一点:

HTML("<h1>Hello</h1><hr/><img src='somestring'/>")

并获得与Hello相似的东西,它有一条水平线,并在其下方有一张图像,该图像与下面的图像相同。

import pandas as pd
import numpy as np

np.random.seed(314)
df = pd.DataFrame(np.random.randn(1000, 2), columns=['x', 'y'])

df.plot.scatter(0, 1)

在此处输入图片说明

结果应如下所示:

在此处输入图片说明

问题

'something'为了实现此目的,我将替换为什么?更重要的是,如何通过python获取它?

我本来可以想象在图形对象上有一个属性,该属性可以保存图像的序列化版本,但我找不到它。

海盗

经过一些挖掘。感谢Dmitry B.为我指出了正确的方向。

解决方案

from IPython.core.display import HTML
import binascii
from StringIO import StringIO
import matplotlib.pyplot as plt

# open IO object
sio = StringIO()

# generate random DataFrame
np.random.seed(314)
df = pd.DataFrame(np.random.randn(1000, 2), columns=['x', 'y'])

# initialize figure and axis
fig, ax = plt.subplots(1, 1)

# plot DataFrame
ax.scatter(df.iloc[:, 0], df.iloc[:, 1]);

# print raw canvas data to IO object
fig.canvas.print_png(sio)

# convert raw binary data to base64
# I use this to embed in an img tag
img_data = binascii.b2a_base64(sio.getvalue())

# keep img tag outter html in its own variable
img_html = '<img src="data:image/png;base64,{}&#10;">'.format(img_data)

HTML("<h1>Hello</h1><hr/>"+img_html)

我最终得到:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在将Matplotlib图形嵌入到Tkinter画布中时获得(3d)交互性

来自分类Dev

将Facebook feed嵌入到html中

来自分类Dev

matplotlib.pyplot.plotfile()-如何将多个图形绘制到同一图形中?

来自分类Dev

如何将html链接嵌入到String Android中?

来自分类Dev

IPython Notebook:如何结合HTML输出和matplotlib图形?

来自分类Dev

如何将交互式 matplotlib 图形插入到 tkinter 画布中

来自分类Dev

将matplotlib图形与LaTeX中的文本对齐

来自分类Dev

将matplotlib图形与LaTeX中的文本对齐

来自分类Dev

将Matplotlib嵌入Qt ActiveX组件中

来自分类Dev

将“ Bokeh创建的html文件”嵌入到Flask的“ template.html”文件中

来自分类Dev

缩小嵌入到.html文件中的JS

来自分类Dev

tqdm 可以嵌入到 html 中吗?

来自分类Dev

将HTML内容嵌入到Rails中的Ajax JSON响应中

来自分类Dev

如何简单地将HTML嵌入到Lift中的布局/模板中?

来自分类Dev

将先前存在的AutoCAD图形插入到当前图形中

来自分类Dev

将借入的值嵌入到枚举中?

来自分类Dev

将GridLayout嵌入到RelativeLayout中

来自分类Dev

将IDE嵌入到Python GUI中

来自分类Dev

将CommandBar嵌入到窗体中

来自分类Dev

将SVG嵌入到CSS中

来自分类Dev

将Excel文件嵌入到网页中

来自分类Dev

将MS查询嵌入到Excel中

来自分类Dev

将地图嵌入到InfoWindow中

来自分类Dev

将 bash 脚本嵌入到 makefile 中

来自分类Dev

使用Eclipse将HTML嵌入JAR中

来自分类Dev

如何将ruby / erb代码嵌入到内联html样式标签中?(进度条)

来自分类Dev

Rails Admin自定义:将html视图嵌入到仪表板中

来自分类Dev

是否可以像CSS一样将字体文件嵌入到html中?

来自分类Dev

将视频播放器html5 iframe嵌入到YouTube之类的Facebook共享中

Related 相关文章

热门标签

归档