Hogyan lehet CSV-fájlt grafikonná konvertálni a Pythonban

Programozói csapat fejlesztése Weboldal tervezési és kódolási technológiák fejlesztése szoftvercég irodájában

A CSV-fájlok praktikusak egyszerűségük és hordozhatóságuk miatt, nem hatékonyak nagy mennyiségű adat megjelenítésére vagy elemzésére; azonban vizuálisan nem jelenítik meg az adatokat.

Kép jóváírása: SARINYAPINNGAM/iStock/GettyImages

A legtöbb adatbázis- és táblázatkezelő alkalmazás kényelmesen ki tudja adni a táblázat adatait CSV (vesszővel elválasztott értékek) fájlok formájában. Míg a CSV fájlok egyszerűségük és hordozhatóságuk miatt hasznosak, nagy mennyiségű adat megjelenítésére vagy elemzésére nem hatékonyak. E korlátozás leküzdésére a programozó a Python programozási nyelvet és a matplotlib-et használhatja a nyomtatáshoz adatokat egy CSV-fájlból, és hozzon létre egy olvasható, vizuálisan vonzó grafikont, amely alkalmas webes vagy nyomtatási használatra kiadvány.

Felkészülés a CSV adatok ábrázolására

Mielőtt ténylegesen ábrázolná a CSV-fájlt Pythonban, győződjön meg arról, hogy rendelkezik minden szükséges eszközzel, és hozzon létre egy tesztfájlt. Ez magában foglalja a Python és a szükséges könyvtárak telepítését, valamint egy CSV-fájlt, amely két oszlopnyi számadatokat tartalmaz.

A nap videója

1. lépés: Hozzon létre tesztfájlt

Először nyissa meg a szövegszerkesztőt, és hozzon létre egy egyszerű CSV-fájlt teszteléshez. Egy minta így nézhet ki:

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

2. lépés: Importálja a szükséges könyvtárakat

Most már készen áll a szükséges python könyvtárak importálására a kódfájlba ezzel a kódsorral:

import matplotlib.pyplot mint plt import csv import sys

Plot Graph Pythonban a CSV-ből

A felkészülés befejeztével elkezdheti ténylegesen használni a Python-t, hogy grafikont rajzoljon CSV-fájlból.

1. lépés: Reader Object létrehozása

Nyissa meg a CSV-fájlt, és hozzon létre belőle olvasóobjektumot. Változók deklarálása a grafikon x és y tengelyértékeinek felső és alsó határának meghatározásához:

csv_reader = csv.reader (open('teszt.csv')) bigx = float(-sys.maxint -1) bigy = float(-sys.maxint -1) smallx = float (sys.maxint) smally = float (sys .maxint)

2. lépés: Ismétlés sorok felett

Végezzen iterációt az olvasó objektumban található minden soron, és az egyes sorokat csúcsként tárolja egy csúcstömbben. Ugyanabban a ciklusban hasonlítsa össze az x és y értékeket, hogy eltárolja felső és alsó határukat. Rendezze szét a csúcstömböt, majd ismételje meg a hurkot. Ezúttal tárolja a rendezett x és y értékeket külön tömbökben:

verts = [] for row in csv_reader: verts.append (sor) if float (sor[0]) > bigx: bigx = float (row[0]) if float (sor[1]) > bigy: bigy = float ( sor[1]) if float (sor[0]) < smallx: smallx = float (sor[0]) if float (sor[1]) < smally: smally = float (sor[1]) verts.sort() x_arr = [] y_arr = [] for vert in Verts: x_arr .append (vert[0]) y_arr.append (vert[1])

3. lépés: Készíts egy FigureCanvas objektumot

Hozzon létre egy FigureCanvas objektumot az importált matplotlib pyplot objektum segítségével. Adja hozzá a gráf tengelyeit a FigureCanvashoz az add_axes függvény meghívásával, és egy értéktömb átadásával a következő formában: bal, alsó, szélesség, magasság. Ezek az értékek határozzák meg, hogy a grafikon hol helyezkedik el a vásznon – 0,0 és 1,0 között változhatnak:

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

4. lépés: Formázza meg a grafikont

Formázza meg a grafikont címkék hozzáadásával és az egyes tengelyek minimális és maximális értékének meghatározásával:

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

5. lépés: Ábrázolja a grafikont

Ábrázolja a grafikont a CSV-fájlból letöltött x és y értékeket tartalmazó két tömb átadásával. Testreszabhatja a vonalrajzot opcionális értékek, például vonalszín (szín) vagy vonalszélesség (lw) megadásával. Jelenítse meg a kész grafikont a show metódus meghívásával egy ablak megnyitásához, és tárolja a képet a savefig meghívásával bitmap fájl létrehozásához a lemezen:

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

Fontos szempontok a fájlokhoz

A Python értelmező által olvasható fájlok létrehozásához ASCII szöveg- vagy kódszerkesztőt kell használnia, amely csak szöveges fájlokat hoz létre. Grafikonos képeket sokféle képformátumban tárolhat, beleértve: png, pdf, ps és svg.

Tekintse meg a Matplotlib dokumentációját

A matplotlib könyvtár telepítésének és működésének egyes szempontjai a különböző számítógépes platformokon eltérőek. Olvassa el figyelmesen a dokumentációt. A könyvtár számos módon képes numerikus információkat megjeleníteni, és finoman testreszabható. A dokumentáció alapos elolvasása szükséges a jártassághoz.