Kuinka muuntaa CSV-tiedosto kaavioksi Pythonissa

Kehittyvät ohjelmoijat Team Development Verkkosivujen suunnittelu- ja koodausteknologiat ohjelmistoyrityksen toimistossa

CSV-tiedostot ovat käteviä yksinkertaisuutensa ja siirrettävyytensä vuoksi, eivätkä ne ole tehokkaita suurten tietomäärien näyttämiseen tai analysointiin. ne eivät kuitenkaan näytä tietoja visuaalisesti.

Kuvan luotto: SARINYAPINNGAM/iStock/GettyImages

Useimmat tietokanta- ja taulukkolaskentasovellukset voivat kätevästi tulostaa taulukkotietoja CSV-tiedostoina (comma-separated-values). Vaikka CSV-tiedostot ovat käteviä yksinkertaisuutensa ja siirrettävyytensä vuoksi, ne eivät ole tehokkaita suurten tietomäärien näyttämiseen tai analysointiin. Tämän rajoituksen voittamiseksi ohjelmoija voi käyttää Python-ohjelmointikieltä ja matplotlibiä piirtämiseen tiedot CSV-tiedostosta ja luoda luettava, visuaalisesti houkutteleva kaavio, joka sopii verkkokäyttöön tai tulostukseen julkaisu.

Valmistautuminen CSV-tietojen piirtämiseen

Ennen kuin piirrät CSV-tiedoston Pythonissa, sinun kannattaa varmistaa, että sinulla on kaikki tarvittavat työkalut ja luoda testitiedosto. Tämä sisältää Pythonin ja tarvittavien kirjastojen asentamisen sekä CSV-tiedoston, joka sisältää kaksi saraketta numeerista tietoa.

Päivän video

Vaihe 1: Luo testitiedosto

Avaa ensin tekstieditori ja luo yksinkertainen CSV-tiedosto testausta varten. Esimerkki saattaa näyttää tältä:

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

Vaihe 2: Tuo tarvittavat kirjastot

Nyt olet valmis tuomaan tarvittavat python-kirjastot kooditiedostoosi tällä koodirivillä:

tuonti matplotlib.pyplot as plt tuonti csv tuonti sys

Plot Graph Pythonissa CSV: stä

Kun valmistautuminen on kesken, voit nyt alkaa käyttää Pythonia kaavion piirtämiseen CSV-tiedostosta.

Vaihe 1: Luo Reader Object

Avaa CSV-tiedosto ja luo siitä lukijaobjekti. Ilmoita muuttujat määrittääksesi ylä- ja alarajat kaavion x- ja y-akseliarvoille:

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)

Vaihe 2: Toista rivien yli

Iteroi jokaisen lukijaobjektin sisältämän rivin yli ja tallenna jokainen rivi kärkipisteenä vertex-taulukossa. Vertaa samassa silmukassa x- ja y-arvoja niiden ylä- ja alarajojen tallentamiseksi. Lajittele vertex-taulukko ja kierrä se sitten uudelleen läpi. Tallenna tällä kertaa lajitellut x- ja y-arvot erillisiin taulukoihin:

verts = [] riville csv_readerissa: verts.append (rivi) if float (rivi[0]) > bigx: bigx = float (row[0]) if float (rivi[1]) > bigy: bigy = float ( rivi[1]) jos float (rivi[0]) < smallx: smallx = float (rivi[0]) if float (rivi[1]) < smally: smally = float (rivi[1]) verts.sort() x_arr = [] y_arr = [] verts in verts: x_arr .append (vert[0]) y_arr.apppend (vert[1])

Vaihe 3: Tee FigureCanvas-objekti

Luo FigureCanvas-objekti tuodun matplotlib-pyplot-objektin avulla. Lisää kuvaajan akselit FigureCanvasiin kutsumalla funktio add_axes ja välittämällä sille joukko arvoja muodossa: vasen, alaosa, leveys, korkeus. Nämä arvot määrittävät kaavion sijainnin kankaalla – ne voivat vaihdella välillä 0,0 - 1,0:

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

Vaihe 4: Muotoile kaavio

Muotoile kaavio lisäämällä tunnisteita ja määrittämällä kunkin akselin vähimmäis- ja enimmäisarvot:

ax.set_xlabel('x data') ax.set_ylabel('y data') ax.set_xlim (smallx, bigx) ax.set_ylim (pieni, iso)

Vaihe 5: Piirrä kaavio

Piirrä kaavio välittämällä kaksi taulukkoa, jotka sisältävät CSV-tiedostosta haetut x- ja y-arvot. Mukauta viivakaaviota antamalla valinnaisia ​​arvoja, kuten viivan väri (väri) tai viivan leveys (lw). Näytä valmis kaavio kutsumalla show-menetelmää ikkunan avaamiseksi ja tallenna kuva kutsumalla savefig luodaksesi bittikarttatiedoston levylle:

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

Tärkeitä tiedostoja koskevia huomioita

Python-tulkin lukemien tiedostojen luomiseksi on käytettävä ASCII-teksti- tai koodieditoria, joka luo vain tekstitiedostoja. Voit tallentaa kaaviokuvia useissa eri kuvamuodoissa, mukaan lukien: png, pdf, ps ja svg.

Katso Matplotlib-dokumentaatio

Jotkut matplotlib-kirjaston asennuksen ja toiminnan ominaisuudet vaihtelevat eri tietokonealustoilla. Lue dokumentaatio huolellisesti. Kirjasto voi näyttää numeerista tietoa useilla tavoilla, ja sitä voidaan muokata tarkasti. Asiakirjat on luettava perusteellisesti päteväksi saamiseksi.