Súbory CSV sú praktické pre svoju jednoduchosť a prenosnosť, sú neúčinné na zobrazenie alebo analýzu veľkého množstva údajov; údaje však nezobrazujú vizuálne.
Kredit za obrázok: SARINYAPINNGAM/iStock/GettyImages
Väčšina databázových a tabuľkových aplikácií dokáže pohodlne vytlačiť údaje z tabuľky vo forme súborov CSV (hodnoty oddelené čiarkou). Aj keď sú súbory CSV praktické kvôli ich jednoduchosti a prenosnosti, sú neúčinné na zobrazenie alebo analýzu veľkého množstva údajov. Na prekonanie tohto obmedzenia môže programátor na vykreslenie použiť programovací jazyk Python a matplotlib dáta zo súboru CSV a vytvorte čitateľný, vizuálne atraktívny graf vhodný pre web alebo tlač zverejnenie.
Príprava na vykreslenie údajov CSV
Predtým, ako skutočne vykreslíte súbor CSV v Pythone, budete sa chcieť uistiť, že máte všetky potrebné nástroje a vytvoriť testovací súbor. To zahŕňa inštaláciu Pythonu a potrebných knižníc, ako aj súbor CSV, ktorý obsahuje dva stĺpce číselných údajov.
Video dňa
Krok 1: Vytvorte testovací súbor
Najprv otvorte textový editor a vytvorte jednoduchý súbor CSV na testovanie. Ukážka môže vyzerať takto:
1,2 2,3 3,8 4,13 5,18 6,21 7,13 7.5,4 2.5,4.3
Krok 2: Importujte potrebné knižnice
Teraz ste pripravení importovať potrebné knižnice pythonu do súboru kódu pomocou tohto riadku kódu:
import matplotlib.pyplot as plt import csv import sys
Vykreslenie grafu v jazyku Python z CSV
S prípravou mimo cesty môžete teraz začať skutočne používať Python na kreslenie grafu zo súboru CSV.
Krok 1: Vytvorte objekt čítačky
Otvorte súbor CSV a vytvorte z neho objekt čítačky. Deklarujte premenné na definovanie hornej a dolnej hranice hodnôt na osi x a y grafu:
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)
Krok 2: Iterácia cez riadky
Iterujte cez každý riadok obsiahnutý v objekte čítačky a uložte každý riadok ako vrchol v poli vrcholov. V tej istej slučke porovnajte hodnoty x a y, aby ste uložili ich hornú a dolnú hranicu. Zoraďte pole vertexov a potom ho znova precyklujte. Tentokrát uložte zoradené hodnoty x a y do samostatných polí:
verts = [] pre riadok v csv_reader: verts.append (riadok) ak float (riadok[0]) > bigx: bigx = float (riadok[0]) ak float (riadok[1]) > bigy: bigy = float ( riadok[1]) ak float (riadok[0]) < smallx: smallx = float (riadok[0]) if float (riadok[1]) < smally: smally = float (riadok[1]) verts.sort() x_arr = [] y_arr = [] pre vert in verts: x_arr .append (vert[0]) y_arr.append (vert[1])
Krok 3: Vytvorte objekt FigureCanvas
Vytvorte objekt FigureCanvas pomocou importovaného objektu pyplot matplotlib. Pridajte osi grafu na FigureCanvas zavolaním funkcie add_axes a odovzdaním poľa hodnôt v tvare: vľavo, dole, šírka, výška. Tieto hodnoty definujú, kde je graf umiestnený na plátne — môžu sa pohybovať od 0,0 do 1,0:
fig = plt.figure() ax = fig.add_axes([0,1, 0,1, 0,8, 0,8])
Krok 4: Formátovanie grafu
Naformátujte graf pridaním štítkov a definovaním minimálnych a maximálnych hodnôt pre každú os:
ax.set_xlabel('x údaje') ax.set_ylabel('y údaje') ax.set_xlim (smallx, bigx) ax.set_ylim (malý, veľký)
Krok 5: Nakreslite graf
Nakreslite graf vložením dvoch polí obsahujúcich hodnoty x a y získané zo súboru CSV. Prispôsobte čiarový graf zadaním voliteľných hodnôt, ako je farba čiary (farba) alebo šírka čiary (lw). Zobrazte hotový graf volaním metódy show na otvorenie okna a uložte obrázok volaním savefig na vytvorenie bitmapového súboru na disku:
ax.plot (x_arr, y_arr, color='modrá', lw=2) plt.show() fig.savefig('test.png')
Dôležité úvahy pre súbory
Ak chcete vytvoriť súbory, ktoré interpret Pythonu dokáže prečítať, musíte použiť textový editor ASCII alebo editor kódu, ktorý vytvára iba textové súbory. Obrázky grafov môžete ukladať v mnohých rôznych formátoch obrázkov vrátane: png, pdf, ps a svg.
Pozrite si dokumentáciu Matplotlib
Niektoré aspekty inštalácie a funkčnosti knižnice matplotlib sa líšia na rôznych počítačových platformách. Pozorne si prečítajte dokumentáciu. Knižnica môže zobrazovať číselné informácie veľkým množstvom spôsobov a môže byť jemne prispôsobená. Aby ste sa zdokonalili, bude potrebné dôkladné prečítanie dokumentácie.