问题描述
我是python Django框架的新手。
我有matplotlib移动图或实时图,应将其嵌入django模板中 。 我在这里检查了许多与此相关的问题,但没有一个适合我。 我们这里建议的大多数人都以图像显示,但是问题是使用默认界面(如缩放 ) 移动图表,将所有内容拖动到一起。 我正在努力解决。 我使用了这段代码,并且知道它将作为图像显示。
def simple(request):
import random
import django
import datetime
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
from matplotlib.figure import Figure
from matplotlib.dates import DateFormatter
fig = Figure()
ax = fig.add_subplot(111)
x = []
y = []
now = datetime.datetime.now()
delta = datetime.timedelta(days=1)
for i in range(10):
x.append(now)
now += delta
y.append(random.randint(0, 1000))
ax.plot_date(x, y, '-')
ax.xaxis.set_major_formatter(DateFormatter('%Y-%m-%d'))
fig.autofmt_xdate()
canvas = FigureCanvas(fig)
response = django.http.HttpResponse(content_type='image/png')
canvas.print_png(response)
return response
我使用此代码作为参考。
如果无法理解,请在下面发表评论,请尝试清楚地传达您的意见
谁能帮我解决这个问题。 提前致谢。
1楼
除了使用matplotlib之外,您还可以尝试使用BOKEH图表。 查看此
2楼
尽管这似乎是一个简单的问题,但是matplotlib用来在桌面上显示交互式图表的机制相当复杂,没有什么可以随便插入某些HTML的。
我建议您查看一个前端库,以图形方式显示数据,然后将您的前端数据与后端一起提供。
至于库,请查看 。 它有很好的文档和示例。