130 votes

Jolis graphiques et graphiques en Python

Quelles sont les bibliothèques disponibles pour créer de jolis graphiques et graphiques dans une application Python?

50voto

Rodrigo Points 1522

Je suis le seul soutien CairoPlot et je suis très fier qu'il est venu ici. Sûrement matplotlib est grande, mais je crois CairoPlot est plus beau. Donc, pour les présentations et les sites internet, c'est un très bon choix.

Aujourd'hui, j'ai sorti la version 1.1. Si vous êtes intéressé, consultez-le à l' CairoPlot v1.1

EDIT: Après un long et froid hiver, CairoPlot est développée à nouveau. Découvrez la nouvelle version sur GitHub.

38voto

Barry Wark Points 73462

Pour un travail interactif, Matplotlib est la maturité de la norme. Il fournit un OO-API de style ainsi que d'un Matlab-style interactif de l'API.

Chaco est un plus moderne de traçage de la bibliothèque des gens de Enthought. Il utilise Enthought de Kiva de dessin vectoriel de la bibliothèque et ne fonctionne actuellement qu'avec Wx Qt et OpenGL sur le chemin (Matplotlib a backends pour les Savoirs traditionnels, Qt, Wx, de Cacao, et de nombreux types d'images comme PDF, EPS, PNG, etc.). Les principaux avantages de Chaco sont sa vitesse par rapport à Matplotlib et de son intégration avec Enthought Traits de caractère d'API pour les applications interactives.

18voto

Tony Meyer Points 4700

Vous pouvez également utiliser pygooglechart , qui utilise l' API Google Chart . Ce n'est pas quelque chose que vous voulez toujours utiliser, mais si vous voulez un petit nombre de bons, simples, de graphiques, et que vous êtes toujours en ligne, et surtout si vous affichez dans un navigateur de toute façon, c'est un bon choix.

15voto

serbaut Points 2351

Vous n'avez pas mentionné le format de sortie dont vous avez besoin, mais reportlab est efficace pour créer des graphiques au format pdf et bitmap (par exemple, png).

Voici un exemple simple de diagramme à barres en format png et pdf:

 from reportlab.graphics.shapes import Drawing
from reportlab.graphics.charts.barcharts import VerticalBarChart

d = Drawing(300, 200)

chart = VerticalBarChart()
chart.width = 260
chart.height = 160
chart.x = 20
chart.y = 20
chart.data = [[1,2], [3,4]]
chart.categoryAxis.categoryNames = ['foo', 'bar']
chart.valueAxis.valueMin = 0

d.add(chart)
d.save(fnRoot='test', formats=['png', 'pdf'])
 

texte alt

Remarque: l'image a été convertie en jpg par l'hôte de l'image.

6voto

elmarco Points 6329

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X