Kuidas teisendada CSV-fail Pythonis graafikuks

Tarkvarafirma kontoris töötav programmeerija meeskonnaarendus Veebisaidi kujundamise ja kodeerimise tehnoloogiate arendamine

CSV-failid on käepärased oma lihtsuse ja kaasaskantavuse tõttu, need ei ole tõhusad suurte andmemahtude kuvamiseks või analüüsimiseks; kuid nad ei näita andmeid visuaalselt.

Pildi krediit: SARINYAPINNGAM/iStock/GettyImages

Enamik andmebaasi- ja arvutustabelirakendusi saab tabeliandmeid mugavalt väljastada CSV (comma-separated-values) failidena. Kuigi CSV-failid on oma lihtsuse ja kaasaskantavuse tõttu käepärased, ei ole need suurte andmemahtude kuvamiseks või analüüsimiseks tõhusad. Selle piirangu ületamiseks võib programmeerija kasutada joonistamiseks Pythoni programmeerimiskeelt ja matplotlibi andmed CSV-failist ja looge loetav, visuaalselt atraktiivne graafik, mis sobib veebis või printimiseks väljaanne.

Ettevalmistus CSV-andmete joonistamiseks

Enne CSV-faili Pythonis joonistamist veenduge, et teil on kõik vajalikud tööriistad, ja looge testfail. See hõlmab Pythoni ja vajalike teekide installimist ning CSV-faili, mis sisaldab kahte arvandmete veergu.

Päeva video

1. samm: looge testfail

Esmalt avage oma tekstiredaktor ja looge testimiseks lihtne CSV-fail. Näidis võib välja näha selline:

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

2. samm: importige vajalikud raamatukogud

Nüüd olete valmis importima vajalikud pythoni teegid oma koodifaili selle koodireaga:

import matplotlib.pyplot kui plt import csv import sys

Joonista graafik Pythonis CSV-st

Kui ettevalmistus pole lõppenud, saate nüüd hakata kasutama Pythoni CSV-failist graafiku loomiseks.

1. samm: looge lugejaobjekt

Avage CSV-fail ja looge sellest lugejaobjekt. Deklareerige muutujad, et määrata graafiku x- ja y-telje väärtuste ülemine ja alumine piir:

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. samm: korrake ridade kaupa

Itereerige üle iga lugejaobjektis sisalduva rea, salvestades iga rea ​​tipuna tipumassiivis. Samas tsüklis võrrelge x ja y väärtusi, et salvestada nende ülemine ja alumine piir. Sorteeri tipumassiivi ja seejärel silmus see uuesti läbi. Seekord salvestage sorteeritud x ja y väärtused eraldi massiividesse:

verts = [] rea jaoks csv_lugejas: verts.append (rida) if float (rida[0]) > bigx: bigx = float (rida[0]) if float (rida[1]) > bigy: bigy = float ( rida[1]) if float (rida[0]) < smallx: smallx = float (rida[0]) if float (rida[1]) < smally: smally = float (rida[1]) verts.sort() x_arr = [] y_arr = [] verts: x_arr .append (vert[0]) y_arr.append (vert[1])

3. samm: looge joonislõuendiobjekt

Looge Imporditud matplotlib pyplot objekti abil FigureCanvas objekt. Lisage graafiku teljed joonisele FigureCanvas, kutsudes välja funktsiooni add_axes ja edastades sellele väärtuste massiivi kujul: vasak, alumine, laius, kõrgus. Need väärtused määravad, kuhu graafik lõuendil asetatakse – need võivad olla vahemikus 0,0 kuni 1,0:

fig = plt.figuur() ax = fig.add_axes([0,1, 0,1, 0,8, 0,8])

4. samm: vormindage graafik

Vormindage graafik, lisades silte ja määrates iga telje minimaalsed ja maksimaalsed väärtused:

ax.set_xlabel('x data') ax.set_ylabel('y data') ax.set_xlim (smallx, bigx) ax.set_ylim (väike, suur)

5. samm: joonistage graafik

Joonistage graafik, sisestades kaks massiivi, mis sisaldavad CSV-failist hangitud x- ja y-väärtusi. Kohandage joondiagrammi, sisestades valikulised väärtused, nagu joone värv (värv) või joone laius (lw). Kuvage valmis graafik, kutsudes akna avamiseks välja näitamismeetodi ja salvestage pilt, kutsudes välja nupu savefig, et luua kettale bitmap fail:

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

Olulised kaalutlused failide jaoks

Pythoni interpretaatoriga loetavate failide loomiseks peate kasutama ascii teksti- või koodiredaktorit, mis loob ainult tekstifaile. Saate salvestada graafikupilte paljudes erinevates pildivormingutes, sealhulgas: png, pdf, ps ja svg.

Tutvuge Matplotlibi dokumentatsiooniga

Mõned matplotlib teegi installimise ja funktsionaalsuse aspektid on erinevatel arvutiplatvormidel erinevad. Lugege dokumentatsiooni hoolikalt läbi. Teek võib kuvada arvulist teavet mitmel viisil ja seda saab täpselt kohandada. Omandamiseks on vajalik dokumentide põhjalik läbilugemine.