前几篇记录了最简单的一些图像的生成,不过,最终我还是想要将这个数据可视化功能,做进我的网站里面,和web进行交互。 搜索了一下,发现pyplot无法直接和web进行交互,并且在matplotlib里面的教程,也是通过Figure类进行web交互。 所以,跟着基础教程里的内容来做一遍,教程里是拿Flask来测试,不过也大同小异。 1:Views函数import base64from io import BytesIOfrom matplotlib.figure import Figure# Create your views here.def test_page(request): fig = Figure() ax = fig.subplots() ax.plot([1, 2]) buf = BytesIO() fig.savefig(buf, format='png') data = base64.b64encode(buf.getbuffer()).decode('ascii') return HttpResponse(f'<img src='data:image/png;base64,{data}'/>') 2: 效果图 这样,每个球队的点的数据,就都可以显示了,目前每个球队的名字显示还有问题,后期再修改。 效果图 |
|