Kaip konvertuoti CSV failą į grafiką „Python“.

Kuriantis programuotojas Komandos kūrimas Svetainių kūrimo ir kodavimo technologijas dirbantis programinės įrangos įmonės biure

CSV failai yra patogūs dėl savo paprastumo ir perkeliamumo, jie neveiksmingi dideliems duomenų kiekiams rodyti ar analizuoti; tačiau jie vizualiai nerodo duomenų.

Vaizdo kreditas: SARINYAPINNGAM/iStock/GettyImages

Dauguma duomenų bazių ir skaičiuoklių programų gali patogiai išvesti lentelės duomenis CSV (kableliais atskirtų reikšmių) failų forma. Nors CSV failai yra patogūs dėl savo paprastumo ir perkeliamumo, jie yra neveiksmingi dideliems duomenų kiekiams rodyti ar analizuoti. Norėdami įveikti šį apribojimą, programuotojas gali naudoti Python programavimo kalbą ir matplotlib duomenis iš CSV failo ir sukurti skaitomą, vizualiai patrauklų grafiką, tinkamą žiniatinklyje arba spausdinti leidinys.

Pasirengimas CSV duomenų braižymui

Prieš iš tikrųjų nubraižydami CSV failą „Python“, įsitikinkite, kad turite visus reikiamus įrankius ir sukurti bandomąjį failą. Tai apima Python ir būtinų bibliotekų įdiegimą, taip pat CSV failą, kuriame yra du skaitinių duomenų stulpeliai.

Dienos vaizdo įrašas

1 veiksmas: sukurkite bandomąjį failą

Pirmiausia atidarykite teksto rengyklę ir sukurkite paprastą CSV failą testavimui. Pavyzdys gali atrodyti taip:

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

2 veiksmas: importuokite būtinas bibliotekas

Dabar esate pasirengę importuoti reikiamas python bibliotekas į savo kodo failą naudodami šią kodo eilutę:

importuoti matplotlib.pyplot kaip plt importuoti csv importuoti sys

Plot Graph Python iš CSV

Nebaigę ruoštis, dabar galite pradėti iš tikrųjų naudoti Python, kad nubrėžtumėte grafiką iš CSV failo.

1 veiksmas: sukurkite skaitytuvo objektą

Atidarykite CSV failą ir iš jo sukurkite skaitytuvo objektą. Deklaruokite kintamuosius, kad nustatytų grafiko x ir y ašių verčių viršutinę ir apatinę ribas:

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 veiksmas: kartokite eilutes

Pakartokite kiekvieną eilutę, esančią skaitytuvo objekte, saugodami kiekvieną eilutę kaip viršūnę viršūnių masyve. Toje pačioje kilpoje palyginkite x ir y reikšmes, kad išsaugotumėte jų viršutinę ir apatinę ribas. Rūšiuokite viršūnių masyvą ir vėl peržiūrėkite jį. Šį kartą išsaugokite surūšiuotas x ir y reikšmes atskiruose masyvuose:

verts = [] eilutei csv_reader: verts.append (row) if float (row[0]) > bigx: bigx = float (row[0]) if float (row[1]) > bigy: bigy = float ( eilutė[1]) if float (eilė[0]) < smallx: smallx = plūduriuoti (eilutė[0]) if float (eilutė[1]) < smally: smally = plūduriuoti (eilutė[1]) verts.sort() x_arr = [] y_arr = [], skirta taškai vertais: x_arr .pridėti (vert[0]) y_arr.pridėti (vert[1])

3 veiksmas: sukurkite figūrinį drobės objektą

Sukurkite objektą FigureCanvas naudodami importuotą matplotlib pyplot objektą. Pridėkite grafiko ašis prie „FiguraCanvas“ iškviesdami funkciją add_axes ir perduodami jai reikšmių masyvą tokia forma: kairėje, apačioje, plotyje, aukštyje. Šios reikšmės apibrėžia diagramos vietą drobėje – jos gali svyruoti nuo 0,0 iki 1,0:

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

4 veiksmas: suformatuokite grafiką

Suformatuokite grafiką, pridėdami etiketes ir nustatydami kiekvienos ašies minimalias ir didžiausias reikšmes:

ax.set_xlabel('x data') ax.set_ylabel('y data') ax.set_xlim (smallx, bigx) ax.set_ylim (mažas, didelis)

5 veiksmas: nubraižykite grafiką

Nubraižykite grafiką įvesdami du masyvus, kuriuose yra x ir y reikšmės, gautos iš CSV failo. Tinkinkite linijos brėžinį įvesdami pasirenkamas reikšmes, tokias kaip linijos spalva (spalva) arba linijos plotis (lw). Parodykite baigtą grafiką iškviesdami rodymo metodą, kad atidarytumėte langą, ir išsaugokite vaizdą skambinant savefig, kad sukurtumėte bitų grafiko failą diske:

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

Svarbios pastabos dėl failų

Norėdami sukurti failus, kuriuos Python interpretatorius gali skaityti, turite naudoti ascii teksto arba kodo rengyklę, kuri kuria tik tekstinius failus. Galite saugoti grafinius vaizdus įvairiais vaizdo formatais, įskaitant: png, pdf, ps ir svg.

Peržiūrėkite Matplotlib dokumentaciją

Kai kurie matplotlib bibliotekos diegimo ir funkcionalumo aspektai skiriasi įvairiose kompiuterių platformose. Atidžiai perskaitykite dokumentaciją. Biblioteka gali rodyti skaitmeninę informaciją įvairiais būdais ir gali būti tiksliai pritaikyta. Norint įgyti įgūdžių, reikės atidžiai perskaityti dokumentus.