tableurs plupart base de données et peuvent facilement générer des données de la table sous forme de fichier CSV ( valeurs- séparées par des virgules ) des fichiers. Bien que les fichiers CSV sont utiles en raison de leur simplicité et la portabilité , ils sont inefficaces pour l'affichage ou l'analyse de grandes quantités de données. En utilisant Python et une bibliothèque de code externe, matplotlib , un programmeur peut surmonter cette limitation en convertissant les données CSV premières en un graphe lisible , visuellement attrayant adapté pour le web ou la publication imprimée. Choses que vous devez
scripts Python environnement
Matplotlib , 2D tracé bibliothèque fichier CSV
Python contenant deux colonnes de données numériques
texte éditeur
Afficher plus Instructions
rendu d'un fichier CSV comme un graphique en utilisant Python et Matplotlib
1
créer un fichier CSV simple pour les tests. Un échantillon pourrait ressembler à ceci :
1,22,33,84,135,186,217,137.5,42.5,4.3
2
Importer les bibliothèques python nécessaires dans votre fichier de code :
importer matplotlib.pyplot comme pltimport csvimport système
3
Ouvrez le fichier CSV et créer un objet lecteur de lui. Déclarer des variables pour définir les limites supérieure et inférieure pour les valeurs de l'axe y du graphe et x :
csv_reader = csv.reader ( open (' test.csv ')) BigX = float (- sys.maxint - 1) bigy = float (- sys.maxint -1) smallx = float ( sys.maxint ) smally = float ( sys.maxint )
4
itérer sur chaque ligne contenue dans l'objet de stockage de chaque lecteur rangée comme un sommet dans un tableau de vertex . Dans la même boucle comparer les valeurs x et y afin de stocker leurs limites supérieure et inférieure . Trier le tableau de vertex et ensuite parcourir à nouveau. Ce magasin de temps les valeurs de x et y et triés dans des tableaux distincts :
verts = [] pour la ligne à csv_reader : verts.append (ligne) si flotteur ( row [ 0]) > BigX : BigX = float ( row [ 0]) si flotteur ( row [ 1] ) > bigy : bigy = float ( row [ 1] ) si flotteur ( row [ 0]) < smallx : smallx = float ( row [ 0]) si flotteur ( row [ 1] ) < smally : smally = float ( row [ 1] ) verts.sort () x_arr = [] y_arr = [] pour en vert verts : x_arr.append ( vert [0]) y_arr.append ( vert [1] )
5
créer un objet FigureCanvas aide de l'objet pyplot matplotlib importé. Ajouter les axes du graphique pour les FigureCanvas en appelant les add_axes de fonction et en lui passant un tableau de valeurs sous la forme d' : à gauche , en bas, largeur, hauteur . Ces valeurs définissent où le graphe est mis sur la toile --- ils peuvent aller de 0,0 à 1,0 :
fig = plt.figure () = ax fig.add_axes ( [ 0,1 , 0,1, 0,8, 0,8 ] )
6
Format graphique ajout d'étiquettes et de définir les valeurs minimales et maximales pour chaque axe :
ax.set_xlabel ( 'data x' ) ax.set_ylabel ( «données y ' ) ax.set_xlim ( smallx , BigX ) ax.set_ylim ( smally , bigy )
7
tracer le graphique en passant dans les deux tableaux contenant les valeurs x et récupéré à partir du fichier CSV. Personnaliser l'intrigue en ligne en passant valeurs optionnelles comme la couleur de la ligne (couleur) ou la largeur de ligne ( LW ) . Afficher le graphique fini par appeler la méthode Show pour ouvrir une fenêtre et enregistrer l'image en appelant savefig pour créer un fichier bitmap sur le disque :
ax.plot ( x_arr , y_arr , color = 'bleu' , LW = 2) plt.show () fig.savefig (' test.png ')