Eu pentru cine votez?

4 min read

Salut, din nou. A trecut ceva vreme.. De când am scris ultima postare, am început un curs de GIS pe Coursera, un curs gratuit despre Teledetecție Radar, Echoes in Space, și .. am copt pâine, am citit cărți pentru copii, și alte activități legate de scutece.

Duminică are loc al doilea tur al Alegerilor Prezidențiale în România. De asemenea, asta este luna #30DayMapChallenge, Topi Tjukanov a avut ideea faină să înceapă asta, așa că acum are loc o avalanșă de hărți extraordinare făcute de oameni frumoși, în fiecare zi pe Twitter.

Încă de la începutul lunii imaginația mi-a luat-o razna gândindu-mă la multitudinea de hărți interesante pe care urma să le public pe Twitter în timpul acestei luni.

Am văzut în Alegeri ocazia să abordez d3, și am vrut să incep cu o cartogramă hexagonală. Am găsit niște exemple care mi-au plăcut, de la FiveThirtyEight sau twentyone – an «info century» blog, și m-am pornit. În loc să fac o hartă pe zi, am ajuns la versiunea de ‘o hartă pe lună’ a provocării.🙂

Așa că vă prezint presidentials2019 ! 🥰 Este urât și încet, și mai mult o schiță decât un proiect, dar este noul meu copil pe GitHub.

Etape

În principiu, o cartogramă este o reprezentare distorsionată a unei hărți, în care mărimea se bazează pe atribute specifice, de cele mai multe ori pe populație. De aceea cartogramele au fost folosite pentru a face hărți electorale încă de ceva vreme, ele înlătură falsa impresie pe care o suprafață mare de pământ cu puțini alegători o poate da în hărțile tematice.

Sunt multe tipuri de cartograme, în funcție de continuitate, sau de forma elementelor rezultate. De exemplu, clasificarea asta, asta or asta. Tipul de cartogramă care reține cel mai mult din formele originale se poate obține folosind metoda Gastner-Newman. Tehnica Dorling creează elemente discontinue sub formă de cerc (nu mențin forma), cartograma Demers este o variantă a cartogramei Dorling, în care se folosesc pătrate în loc de cercuri.

În ceea ce privește România, o cartogramă ar putea arăta mai clar cum s-a votat în București, capitala țării. În 2017, erau 2.104.967 locuitori în București ( 9% din populația țării), ceea ce înseamnă aproximativ 8771 de oameni pe kilometru pătrat.

Am folosit date geografice (județe dintr-un file geodatabase) de pe Geoportalul Agenției Naționale de Cadastru și Publicitate Imobiliară și date electorale (sub formă de csv) de pe Alegeri Prezidențiale 10 Noiembrie 2019.

Pașii pentru crearea unei cartograme hexagonale includ crearea unei cartograme prin metoda Gastner-Newman, apoi folosirea unui grid hexagonal pentru tăierea poligoanelor, și un Join Spațial prin care se transferă atributele către poligoanele mai mici. O cartogramă se poate deriva fie ca o masă, folosind atributele din poligoane, sau ca densitate. Am folosit prima metodă.

Pentru ArcGIS am găsit două instrumente care pot fi folosite la obținerea acestui tip de cartogramă, EsriCartograms și Create_Hexagon_Tessellation. Pentru QGIS, am folosit numai Create Grid, există și un plugin Cartogram pe care l-am încercat, dar mi-au plăcut mai mult rezultatele obținute folosind Scapetoad, o aplicație Java ușor de folosit pentru crearea de cartograme (descrierea autorilor).

Am convertit cartograma hexagonală rezultată, fisierul original de județe și catrograma obținută prin metoda Gastner-Newman în geojson folosind ‘Convert Format’ din GDAL (în QGIS), apoi am folosit Mapshaper să simplific fișierele geojson, și să grupez toate datele într-un singur fișier topojson. Acest format reduce mărimea fișierelor deoarece stochează geometriile folosind segmente de linii comune numite arcuri, și are și alte funcții faine, cum ar fi topology-preserving shape simplification.

Apoi am făcut o magie simplă HTML/CSS/JS + d3 să vizualizez și să stilizez fișierele in browser. d3 poate fi folosit la obținerea cartogramelor circulare si rectangulare, și a cartogramelor non-continue, de asemenea, așa că am adăugat aceste trei cartograme la prezentare, din diverse block-uri.

Blocurile d3 sunt exemple scurte create de utilizatori, pe care le poți edita sau împrumuta. Unele persoane se plâng de faptul că nu se poate controla calitatea codului scris de utilizatori, și poți ajunge să înțelegi mai greu anumite aspecte ale bibliotecii. Mie mi se pare super faină ideea cu block-urile, cred că asta a ajutat d3 să evolueze așa mult.

Cred că același rezultat din utilizarea Scapetoad, a gridului hexagonal si Join-ului Spațial poate fi obținut și folosind d3, dar voi încerca altă dată. Există o bibliotecă numită cartogram, și exemple de mesh hexagonal. Căutând exemple de Join Spațial, am descoperit o altă resursă care arată interesant, turf.js, o bibliotecă JavaScript pentru analiză spațială.

Am vrut să afișez rezultatele pe maptheclouds, dar totodată să public codul pe GitHub. Astfel am amânat publicarea site-ului. La început am încercat să creez un block d3 dintr-un gist de pe GitHub, dar am exagerat cu mărimea codului, așa că nu am putut adăuga toate fișierele într-un gist nou. Așa că am ajuns până la urmă să fac acest proiect pe GitHub Pages. ¯\_(ツ)_/¯

TEMĂ pentru anii viitori, când voi avea timp: să fac cartogramele și în R și Python, au instrumente super faine pentru data visualization.

Mai multe despre asta și poate un tutorial în altă postare.. Nu voi explica nici rezultatele analizei, deocamdată. Până atunci, hărțile sunt acolo, statisticile sunt acolo, dar întrebarea tot rămâne fără răspuns:

Eu pentru cine votez?

Cetățeanul turmentat (*)

Iată câteva instantanee

Iată o listă haotică de resurse

Iată-mă pe mine în viitor, bucuroasă că munca mea apare și altundeva în afara blogului meu 😀

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *