在Django中显示图形/图表

时间:2011-04-12 06:34:00

标签: python django charts

我正在Django制作一个包含大量图形和图表的报告应用程序。

是否有一个简单的图形库/模块,可以让我实现这个工作流程:

  1. 执行我的SQL查询
  2. 将返回的数据解析到图形库/模块
  3. 图形库/模块将数据处理成图表/图表,我可以轻松地将其输出到Django模板。
  4. 我花了最近几天玩Matplotlib和Django。似乎只有几种方法可以让Django中的图形呈现。

    1. 使用2个视图,一个用于渲染PNG,另一个用于输出HTML,img src指向第一个视图。 Link
    2. Data URI's
    3. 将图像写入文件,然后使用视图
    4. 调用它

      无论如何我能更容易地做到这一点吗?

      由于

4 个答案:

答案 0 :(得分:12)

您可能需要查看

Django Graphos

它支持很多后端,并且与Django orm很好地集成,但也可以与其他数据源一起使用。

支持的图表类型

海军报
  • 折线图
  • 条形图
  • 点图
谷歌图表
  • 折线图
  • 柱形图
  • 条形图
  • 烛台图表
  • 饼图
YUI
  • 折线图
  • 柱形图
  • 条形图
  • 饼图
Morris.js
  • 折线图
  • 柱形图
  • 甜甜圈图

[披露:我是其中一位作者]

答案 1 :(得分:5)

一个较轻的选择是pycha

请参阅此博文以获得一个想法:A quick post on using Python Charts to generate nice SVG charts for your django website

另一个选择是加入google charts 在你的模板中。

如果在模板中通过js渲染图形是一个选项,那么这些 是两个受欢迎的图书馆:

答案 2 :(得分:4)

看看这些知名的库,这些库可以方便地绘制图形而无需编写JS

Chartit:http://django-chartit.mrsenko.com/demo/chart/basic-line/

ChartJs:https://github.com/novafloss/django-chartjs

Django排行榜:http://www.fusioncharts.com/django-charts/

Django nvd3:https://github.com/areski/django-nvd3

Django graphos:http://agiliq.com/demo/graphos/

Django Gcharts:https://github.com/rhblind/django-gcharts

答案 3 :(得分:0)

用于显示图形的所有Django模块都需要大量配置和设置。但是,我发现了一种仅具有一种依赖性的解决方案:Python库Django

您可以使用Python制作所有绘图,并将其导出为HTML格式以包含在Django输出中。

以本文为例:http://www.codingwithricky.com/2019/08/28/easy-django-plotly/