我在这个主题上搜索了很多,但我不是网络开发人员,所以我知道我错过了一些概念。
当我在本地运行 matplotlib 并指定“webagg”后端时,运行 plt.show() 会启动一个轻量级网络服务器并在我的浏览器中打开具有完整交互功能的绘图。
import matplotlib as mpl
mpl.use('webagg')
from matplotlib import pyplot as plt
import numpy as np
f,ax = plt.subplots(1)
ydata = np.random.randint(0,100,100)
xdata = np.linspace(1,100,100)
ax.plot(xdata,ydata,picker=5)
ax.set_title('Click the line to change the color')
def onpick(event):
event.artist.set_color('red')
f.canvas.draw_idle()
f.canvas.mpl_connect('pick_event', onpick)
plt.show()
我的问题是:是否可以将 webagg 后端与我的 django 网站一起使用,为用户提供整洁的交互式 matplotlib 图形?换句话说,我可以在我的 django 网站的某个地方使用上面的代码,以便将情节嵌入到网页中吗?
(我知道 mpld3 之类的工具,它们非常酷,但没有在 matplotlib 中完全重新创建小部件/选择器功能)。