Pregunta

Estoy buscando una biblioteca para generar diagramas svg en python (busco datos de una base de datos sql). He encontrado python-gd , pero no tiene mucha documentación y la última actualización fue en 2005, así que Me pregunto si hay otras bibliotecas que sean buenas para este propósito.

Estoy pensando principalmente en gráficos de líneas simples, algo así como esto : ejemplo de gráfico de línea

¿Fue útil?

Solución

Como está buscando gráficos de líneas simples, probablemente, CairoPlot se ajustará a sus necesidades, ya que puede generar archivos de salida svg listos para usar. Eche un vistazo a esto .

CairoPlot - DotLinePlot

Esta imagen de ejemplo muestra solo algunas de sus capacidades. Usando la versión troncal disponible en launchpad podrá agregar un cuadro de leyenda y agregar títulos de eje.

Además de eso, usando la versión troncal, es posible generar:

  • Gráficos DotLine (los que creo que necesita)
  • Gráficos de dispersión
  • Gráficos de pastel / rosquilla
  • Gráficos de barras horizontales / verticales
  • diagramas de Gantt

Otros consejos

Intente usar matplotlib . Puede configurarlo con un SVG backend .

PyChart " es una biblioteca de Python para crear PostScript encapsulado de alta calidad, PDF, Gráficos PNG o SVG . & Quot;

pyCairo es una opción que vale la pena mirar.

Aquí hay una biblioteca SVG de propósito general en Python: pySVG .

Puede usar Graphviz para generar diagramas en formato SVG. Hay enlaces de Python a Graphviz, por ejemplo, pydot : interfaz de Python para el lenguaje Dot de Graphviz.

svgfig merece un vistazo:

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

Al no estar exactamente relacionado con los gráficos SVG, pero al buscar lo mismo, he encontrado una buena fuente de información útil cuidadosamente recopilada para responder a su pregunta: http://wiki.python.org/moin/NumericAndScientific/Plotting

He intentado cotejar una lista de bibliotecas de gráficos disponibles (es un trabajo continuo, en el que sigo actualizando la lista): http://blizzardzblogs.blogspot.com/2010/12/data-visualization-charts-and.html

Siento que Protovis haría el trabajo por ti. Su

  • peso ligero,
  • genera svg (que se puede exportar fácilmente) y
  • es javascript

Entonces, nada más que aprender :)

Actualización 2018:

Plotly ( https://github.com/plotly/plotly.py / < a href = "https://plot.ly/d3-js-for-python-and-pandas-charts/" rel = "nofollow noreferrer"> https://plot.ly/d3-js-for-python- y-pandas-charts / ) es probablemente la solución más versátil. Se distribuye bajo licencia MIT (uso y reutilización gratuitos), aunque incluye características que pueden no ser compatibles con algunos CMS con problemas de seguridad más restrictivos, ya que depende de JS, aunque también están disponibles opciones para exportar los diagramas como SVG simple.

Pygal ( https://github.com/Kozea/pygal / http://pygal.org ) es más simple, solo se basa en el estándar svg. Como tal, sus resultados son más reutilizables en sistemas CMS más restringidos. Se distribuye bajo licencia GNU.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top