web-dev-qa-db-fra.com

Création de tableaux et graphiques avec Python

Je suis à la recherche d'une bibliothèque python bibliothèque/module qui me permettra de créer des graphiques accrocheurs. Le module doit avoir/prendre en charge les éléments suivants

  • Prise en charge de Windows

    Comme je travaille principalement sous Windows (en utilisant Eclipse sous Windows), ceci est crucial, un simple fichier d'installation .exe (ou des instructions d'installation adéquates est indispensable)

  • Travailler sur Python 2.7

    J'ai Python 2.7.2 installé ne veut pas vraiment aller chercher autre chose.

  • Pas besoin d'être sur le web

    J'ai regardé googlepychart, et il semble que vous devez être sur le Web pour le faire fonctionner, je ne suis pas sur le World Wide Web, en fait derrière un pare-feu TRÈS restrictif.

  • La sortie doit être visible depuis le navigateur HTML

    Bien que je ne puisse pas accéder au WorldWideWeb, je peux voir localhost, ce serait formidable si le résultat du graphique était visible dans un navigateur.

  • Bonne documentation, au moins quelques exemples sur la façon dont je peux utiliser la bibliothèque.

S'il y a des suggestions sur la façon dont je peux créer une application web en utilisant python qui affiche simplement/représente les données que je transmets, de tels conseils seraient très appréciés

12
user595985

Plotly vous permet de créer des graphiques en utilisant leur Python en ligne. Leur galerie contient quelques exemples de graphiques scientifiques avec les scripts Python qui les ont générés) : https://plot.ly/api/Python . Voici un exemple de la galerie:

enter image description here

18
user1561393

matplotlib est devenu un package graphique mature et largement utilisé.

Quant à votre interaction avec un navigateur Web, vous devrez peut-être utiliser un autre package conjointement. Je suggère CherryPy parce que c'est simple.

11
Donald Miner

Si vous pouvez vous passer de l'utilisation d'un navigateur, vous pouvez utiliser l'une des Python Plotting Libraries . Si vous insistez pour utiliser le navigateur, vous feriez mieux d'utiliser une bibliothèque basée sur javascript pour la vue. J'ai déjà utilisé le framework web web2py avec protovis . Mais un cadre Web plus simple comme Bottle ou CherryPy peut également être utilisé pour transmettre les données à la vue. La bouteille a un Simple Template Engine (très similaire à ce que j'ai utilisé dans Web2py).

Développer en deux langues (dont javascript) est un peu pénible. Vous pouvez utiliser quelque chose comme des pyjamas qui traduit python en javascript mais je ne suis pas vraiment sûr que cela fonctionnerait bien, et je n'ai aucune expérience avec cela.

5
amit

Vous voudrez peut-être donner des détails sur les types de graphiques que vous souhaitez créer. Les graphiques simples sont faciles avec sage et il y a beaucoup d'options par rapport à matlab . Si vous voulez plus d'un graphique PowerPoint ou d'une image que vous pouvez insérer dans un document Word, c'est un peu différent.

Si vous pouvez obtenir quelque chose pour créer des images de graphique, vous pouvez le brancher dans un cadre Web python, tel que Django ou pylônes. Cela vous permettra de configurer un serveur de bouclage pour héberger la page sur votre machine et l'afficher sur votre machine. C'est un peu plus complexe cependant.

Ma suggestion est de décomposer votre programme en morceaux. C'est comme construire une maison à partir de lego brinks. Vous avez une idée de ce à quoi vous voulez qu'il ressemble, mais les détails déterminent tout. Décomposez-le en les plus petits morceaux possibles et définissez les plus gros morceaux comme des groupes de petits morceaux

La maison est composée de plusieurs pièces. Une pièce ne fait que 4 murs, un sol et un plafond. Un mur n'est composé que de plusieurs planches et une planche est 2x4. Une fois que vous avez décomposé toutes les pièces, vous saurez non seulement ce que vous devez faire, mais ce que vous devez trouver pour chaque pièce.

Vous avez un bon départ avec votre liste d'exigences. Cela définit ce que vous voulez que votre programme fasse. Vous devez maintenant travailler en arrière pour définir les différentes parties. Ne vous attardez pas sur comment ils fonctionnent, définissez leur maillage.

Pour un simple script python pour créer un serveur web: voir ici . Notez la section sur le contenu dynamique. En le branchant dans une "boîte noire" qui produit vos graphiques , vous avez soudainement une configuration de travail simple. La section des graphiques ne se soucie pas de la façon dont l'utilisateur les obtient, elle crée simplement un graphique et le distribue. Le serveur ne se soucie pas de la façon dont le graphique est créé, il le sert simplement.

Cette section du manuel sage contient des instructions pour enregistrer un tracé après l'avoir créé.

3
Spencer Rathbun