Πώς να μετατρέψετε ένα αρχείο CSV σε γράφημα στην Python

Ανάπτυξη ομάδας προγραμματιστή Σχεδιασμός ιστοσελίδων και τεχνολογίες κωδικοποίησης που εργάζονται σε γραφείο εταιρείας λογισμικού

Τα αρχεία CSV είναι εύχρηστα λόγω της απλότητας και της φορητότητάς τους, είναι αναποτελεσματικά για την εμφάνιση ή την ανάλυση μεγάλων ποσοτήτων δεδομένων. Ωστόσο, δεν δείχνουν οπτικά τα δεδομένα.

Πίστωση εικόνας: SARINYAPINNGAM/iStock/GettyImages

Οι περισσότερες εφαρμογές βάσεων δεδομένων και υπολογιστικών φύλλων μπορούν εύκολα να εξάγουν δεδομένα πίνακα με τη μορφή αρχείων CSV (τιμές διαχωρισμένες με κόμμα). Ενώ τα αρχεία CSV είναι εύχρηστα λόγω της απλότητας και της φορητότητάς τους, είναι αναποτελεσματικά για την εμφάνιση ή την ανάλυση μεγάλων ποσοτήτων δεδομένων. Για να ξεπεράσει αυτόν τον περιορισμό, ένας προγραμματιστής μπορεί να χρησιμοποιήσει τη γλώσσα προγραμματισμού Python και το matplotlib για να σχεδιάσει δεδομένα από ένα αρχείο CSV και δημιουργήστε ένα ευανάγνωστο, οπτικά ελκυστικό γράφημα κατάλληλο για web ή εκτύπωση δημοσίευση.

Προετοιμασία για Σχεδίαση δεδομένων CSV

Πριν σχεδιάσετε πραγματικά το αρχείο CSV στην Python, θα πρέπει να βεβαιωθείτε ότι έχετε όλα τα απαραίτητα εργαλεία και να δημιουργήσετε ένα αρχείο δοκιμής. Αυτό περιλαμβάνει την εγκατάσταση της Python και των απαραίτητων βιβλιοθηκών, καθώς και την ύπαρξη ενός αρχείου CSV που περιέχει δύο στήλες αριθμητικών δεδομένων.

Το βίντεο της ημέρας

Βήμα 1: Δημιουργία αρχείου δοκιμής

Αρχικά, ανοίξτε το πρόγραμμα επεξεργασίας κειμένου και δημιουργήστε ένα απλό αρχείο CSV για δοκιμή. Ένα δείγμα μπορεί να μοιάζει με αυτό:

1,2 2,3 3,8 4,13 5,18 6,21 7,13 7.5,4 2.5,4.3

Βήμα 2: Εισαγάγετε τις απαραίτητες βιβλιοθήκες

Τώρα είστε έτοιμοι να εισαγάγετε τις απαραίτητες βιβλιοθήκες python στο αρχείο κώδικα με αυτήν τη γραμμή κώδικα:

εισαγωγή matplotlib.pyplot ως plt εισαγωγή csv εισαγωγή sys

Γράφημα σχεδίασης σε Python από CSV

Καθώς η προετοιμασία σας είναι εκτός πορείας, μπορείτε τώρα να ξεκινήσετε να χρησιμοποιείτε την Python για να σχεδιάσετε ένα γράφημα από ένα αρχείο CSV.

Βήμα 1: Δημιουργία αντικειμένου Reader

Ανοίξτε το αρχείο CSV και δημιουργήστε ένα αντικείμενο ανάγνωσης από αυτό. Δηλώστε μεταβλητές για να ορίσετε τα άνω και κάτω όρια για τις τιμές των αξόνων x και y του γραφήματος:

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)

Βήμα 2: Επανάληψη σε γραμμές

Επανάληψη σε κάθε γραμμή που περιέχεται στο αντικείμενο ανάγνωσης αποθηκεύοντας κάθε σειρά ως κορυφή σε πίνακα κορυφών. Στον ίδιο βρόχο συγκρίνετε τις τιμές x και y για να αποθηκεύσετε τα πάνω και τα κάτω όριά τους. Ταξινομήστε τον πίνακα κορυφών και, στη συνέχεια, πραγματοποιήστε ξανά βρόχο μέσω του. Αυτή τη φορά αποθηκεύστε τις ταξινομημένες τιμές x και y σε ξεχωριστούς πίνακες:

verts = [] για τη σειρά στο csv_reader: verts.append (σειρά) αν float (σειρά[0]) > bigx: bigx = float (σειρά[0]) εάν float (σειρά[1]) > bigy: bigy = float ( row[1]) if float (σειρά[0]) < smallx: smallx = float (σειρά[0]) αν float (σειρά[1]) < smally: smally = float (σειρά[1]) verts.sort() x_arr = [] y_arr = [] για vert σε verts: x_arr .append (vert[0]) y_arr.append (vert[1])

Βήμα 3: Δημιουργήστε ένα αντικείμενο FigureCanvas

Δημιουργήστε ένα αντικείμενο FigureCanvas χρησιμοποιώντας το εισαγόμενο αντικείμενο pyplot matplotlib. Προσθέστε τους άξονες του γραφήματος στο FigureCanvas καλώντας τη συνάρτηση add_axes και περνώντας της έναν πίνακα τιμών με τη μορφή: αριστερά, κάτω, πλάτος, ύψος. Αυτές οι τιμές καθορίζουν πού τοποθετείται το γράφημα στον καμβά — μπορεί να κυμαίνονται από 0,0 έως 1,0:

fig = plt.figure() ax = fig.add_axes([0.1, 0.1, 0.8, 0.8])

Βήμα 4: Μορφοποιήστε το γράφημα

Μορφοποιήστε το γράφημα προσθέτοντας ετικέτες και ορίζοντας τις ελάχιστες και μέγιστες τιμές για κάθε άξονα:

ax.set_xlabel('x data') ax.set_ylabel('y data') ax.set_xlim (smallx, bigx) ax.set_ylim (smally, bigy)

Βήμα 5: Σχεδιάστε το γράφημα

Σχεδιάστε το γράφημα περνώντας τους δύο πίνακες που περιέχουν τις τιμές x και y που ανακτήθηκαν από το αρχείο CSV. Προσαρμόστε το διάγραμμα γραμμής περνώντας προαιρετικές τιμές όπως χρώμα γραμμής (χρώμα) ή πλάτος γραμμής (lw). Εμφανίστε το ολοκληρωμένο γράφημα καλώντας τη μέθοδο εμφάνισης για να ανοίξετε ένα παράθυρο και να αποθηκεύσετε την εικόνα καλώντας το savefig για να δημιουργήσετε ένα αρχείο bitmap στο δίσκο:

ax.plot (x_arr, y_arr, color='blue', lw=2) plt.show() fig.savefig('test.png')

Σημαντικά ζητήματα για τα αρχεία

Για να δημιουργήσετε αρχεία που μπορεί να διαβάσει ο διερμηνέας Python, πρέπει να χρησιμοποιήσετε έναν επεξεργαστή κειμένου ή κώδικα ascii που δημιουργεί αρχεία μόνο κειμένου. Μπορείτε να αποθηκεύσετε εικόνες γραφημάτων σε πολλές διαφορετικές μορφές εικόνας, όπως: png, pdf, ps και svg.

Συμβουλευτείτε την Τεκμηρίωση Matplotlib

Ορισμένες πτυχές της εγκατάστασης και της λειτουργικότητας της βιβλιοθήκης matplotlib ποικίλλουν σε διαφορετικές πλατφόρμες υπολογιστών. Διαβάστε προσεκτικά την τεκμηρίωση. Η βιβλιοθήκη μπορεί να εμφανίσει αριθμητικές πληροφορίες με τεράστιο αριθμό τρόπων και μπορεί να προσαρμοστεί με ακρίβεια. Θα χρειαστεί μια διεξοδική ανάγνωση της τεκμηρίωσης για να γίνετε ικανοί.