SVG диаграммы с использованием Python - PullRequest
21 голосов
/ 11 марта 2009

Я ищу библиотеку для создания диаграмм SVG в Python (я получаю данные из базы данных SQL). Я нашел python-gd , но у него не так много документации, и последнее обновление было в 2005 году, поэтому мне интересно, есть ли другие библиотеки, которые подходят для этой цели.

Я в основном думаю о простых линейных графиках, что-то вроде this : example line graph

Ответы [ 11 ]

10 голосов
/ 11 марта 2009

Поскольку вы ищете простую линейную графику, вероятно, CairoPlot будет соответствовать вашим потребностям, поскольку она может генерировать выходные файлы SVG из коробки. Взгляните на это .

CairoPlot - DotLinePlot

Этот пример изображения показывает только некоторые из его возможностей. Используя версию магистрали, доступную по адресу launchpad , вы сможете добавить поле легенды и заголовки осей.

Кроме того, используя версию транка, можно сгенерировать:

  • Диаграммы DotLine (те, которые, я считаю, вам нужны)
  • Точечные диаграммы
  • Круговые / кольцевые диаграммы
  • Горизонтальные / вертикальные гистограммы
  • Диаграммы Ганта
10 голосов
/ 11 марта 2009

Попробуйте использовать matplotlib . Вы можете настроить его с SVG backend .

9 голосов
/ 11 марта 2009

pyCairo - это вариант, на который стоит обратить внимание.

9 голосов
/ 11 марта 2009

PyChart "- это библиотека Python для создания высококачественных диаграмм в формате Postscript, PDF, PNG или SVG ."

7 голосов
/ 11 марта 2009

Вот библиотека SVG общего назначения на Python: pySVG .

6 голосов
/ 11 марта 2009

Вы можете использовать Graphviz для генерации диаграмм в формате SVG. Существуют привязки Python к Graphviz, например, pydot - интерфейс Python для языка Graphviz's Dot.

3 голосов
/ 19 мая 2012

Рассмотрим svgwrite http://packages.python.org/svgwrite/

3 голосов
/ 30 мая 2010

svgfig стоит посмотреть:

http://code.google.com/p/svgfig/

0 голосов
/ 15 ноября 2018

2018 Обновление:

Plotly (https://github.com/plotly/plotly.py / https://plot.ly/d3-js-for-python-and-pandas-charts/), вероятно, является наиболее универсальным решением. Он распространяется под лицензией MIT (бесплатное использование и повторное использование), хотя он включает функции, которые могут быть несовместимы с некоторыми CMS с более строгими проблемами безопасности, поскольку он основан на JS, хотя также доступны варианты экспорта диаграмм в виде простого SVG.

Pygal (https://github.com/Kozea/pygal / http://pygal.org) проще полагаться только на стандарт SVG. Таким образом, его результаты более пригодны для повторного использования в более ограниченных системах CMS. Распространяется по лицензии GNU.

0 голосов
/ 20 октября 2011

Я попытался сопоставить список доступных библиотек графиков (это постоянная работа, в которой я продолжаю обновлять список): http://blizzardzblogs.blogspot.com/2010/12/data-visualization-charts-and.html

Я чувствую, что протовис сделает всю работу за вас. Его

  • легкий вес,
  • генерирует SVG (который может быть легко экспортирован) и
  • это JavaScript

Так что учить больше нечего:)

...