Kā pārvērst CSV failu par grafiku programmā Python

Programmētājs Team Development Mājas lapu dizaina un kodēšanas tehnoloģijas strādā programmatūras uzņēmuma birojā

CSV faili ir ērti to vienkāršības un pārnesamības dēļ, tie nav efektīvi, lai parādītu vai analizētu lielu datu apjomu; tomēr tie vizuāli nerāda datus.

Attēla kredīts: SARINYAPINNGAM/iStock/GettyImages

Lielākā daļa datu bāzu un izklājlapu lietojumprogrammu var ērti izvadīt tabulas datus CSV (komatatdalīto vērtību) failu veidā. Lai gan CSV faili ir ērti to vienkāršības un pārnesamības dēļ, tie nav efektīvi, lai parādītu vai analizētu lielu datu apjomu. Lai pārvarētu šo ierobežojumu, programmētājs var izmantot Python programmēšanas valodu un matplotlib datus no CSV faila un izveidojiet lasāmu, vizuāli pievilcīgu grafiku, kas piemērots tīmeklī vai drukāšanai publikācija.

Sagatavošanās CSV datu attēlošanai

Pirms CSV faila izveides programmā Python pārliecinieties, vai jums ir visi nepieciešamie rīki, un izveidojiet testa failu. Tas ietver Python un nepieciešamo bibliotēku instalēšanu, kā arī CSV failu, kurā ir divas skaitlisko datu kolonnas.

Dienas video

1. darbība. Izveidojiet testa failu

Vispirms atveriet teksta redaktoru un izveidojiet vienkāršu CSV failu testēšanai. Paraugs varētu izskatīties šādi:

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

2. darbība: importējiet nepieciešamās bibliotēkas

Tagad esat gatavs importēt nepieciešamās python bibliotēkas savā koda failā, izmantojot šo koda rindiņu:

importēt matplotlib.pyplot kā plt importēt csv importēt sys

Plot Graph Python no CSV

Kad esat pabeidzis sagatavošanos, tagad varat sākt faktiski izmantot Python, lai zīmētu grafiku no CSV faila.

1. darbība. Izveidojiet lasītāja objektu

Atveriet CSV failu un izveidojiet no tā lasītāja objektu. Deklarējiet mainīgos, lai definētu diagrammas x un y ass vērtību augšējo un apakšējo robežu:

csv_reader = csv.reader (open('test.csv')) bigx = float(-sys.maxint -1) bigy = float(-sys.maxint -1) smallx = pludināt (sys.maxint) smally = peldēt (sys) .maxint)

2. darbība: atkārtojiet vairākas rindas

Atkārtojiet katru rindu, kas atrodas lasītāja objektā, saglabājot katru rindu kā virsotni virsotņu masīvā. Tajā pašā cilpā salīdziniet x un y vērtības, lai saglabātu to augšējo un apakšējo robežu. Kārtojiet virsotņu masīvu un pēc tam vēlreiz veiciet cilpu. Šoreiz kārtotās x un y vērtības saglabājiet atsevišķos masīvos:

verts = [] rindai csv_reader: verts.append (rinda) if float (rinda[0]) > bigx: bigx = float (rinda[0]) if float (rinda[1]) > bigy: bigy = float ( rinda[1]), ja pludiņš (rinda[0]) < smallx: smallx = float (rinda[0]) if float (rinda[1]) < smally: smally = float (rinda[1]) verts.sort() x_arr = [] y_arr = [] for vert in verts: x_arr .append (vert[0]) y_arr.append (vert[1])

3. darbība. Izveidojiet attēlu Canvas objektu

Izveidojiet FigureCanvas objektu, izmantojot importēto matplotlib pyplot objektu. Pievienojiet diagrammas asis FigureCanvas, izsaucot funkciju add_axes un nododot tai vērtību masīvu šādā veidā: pa kreisi, apakšā, platumā, augstumā. Šīs vērtības nosaka, kur diagramma ir novietota uz audekla — tās var būt no 0,0 līdz 1,0:

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

4. darbība. Formatējiet grafiku

Formatējiet grafiku, pievienojot etiķetes un definējot katras ass minimālās un maksimālās vērtības:

ax.set_xlabel('x data') ax.set_ylabel('y data') ax.set_xlim (smallx, bigx) ax.set_ylim (mazs, liels)

5. darbība: uzzīmējiet grafiku

Uzzīmējiet grafiku, nododot divus masīvus, kas satur x un y vērtības, kas iegūtas no CSV faila. Pielāgojiet līniju diagrammu, nododot izvēles vērtības, piemēram, līnijas krāsu (krāsa) vai līnijas platumu (lw). Parādiet gatavo grafiku, izsaucot rādīšanas metodi, lai atvērtu logu, un saglabātu attēlu, izsaucot savefig, lai diskā izveidotu bitkartes failu:

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

Svarīgi apsvērumi saistībā ar failiem

Lai izveidotu failus, kurus Python tulks var lasīt, ir jāizmanto ASCII teksta vai koda redaktors, kas izveido tikai teksta failus. Varat saglabāt diagrammu attēlus dažādos attēlu formātos, tostarp: png, pdf, ps un svg.

Skatiet Matplotlib dokumentāciju

Daži matplotlib bibliotēkas instalēšanas un funkcionalitātes aspekti dažādās datoru platformās atšķiras. Uzmanīgi izlasiet dokumentāciju. Bibliotēka var attēlot skaitlisku informāciju daudzos veidos, un to var precīzi pielāgot. Lai iegūtu zināšanas, būs rūpīgi jāizlasa dokumentācija.