Térképes adatvizualizáció Pythonban

Adatvizualizáció

A Folium egy nyílt forráskódú Python-könyvtár, amely lehetővé teszi interaktív térképek egyszerű készítését. Kifejezetten hasznos, ha földrajzi adatokat szeretnél vizualizálni: például városokat, útvonalakat, hőtérképeket vagy területi eloszlásokat.
A Folium a Leaflet.js JavaScript-könyvtárra épül, így amit készítesz, az böngészőben megjeleníthető, dinamikus térkép lesz – zoomolható, mozgatható, rétegekkel bővíthető.

Mire jó a Folium?

  • Térképen szeretnél adatokat megjeleníteni (pl. ügyfélelhelyezkedés, boltlisták, eseménypontok)
  • Hőtérképet (heatmap) készítenél
  • GeoJSON vagy shapefile típusú területi adatokat szeretnél vizualizálni
  • Pythonban dolgozol, de szeretnél interaktív térképeket is készíteni

Egyszerű példa

Ez a kód egy interaktív térképet hoz létre Budapest középpontjával, amit bármilyen böngészőben meg lehet nyitni.

Hasznos funkciók

  • folium.Marker: jelölők pontokhoz
  • folium.Circle, folium.CircleMarker: körszerű vizualizáció
  • folium.GeoJson: régiók, járások, országok megjelenítése térképen
  • folium.plugins.HeatMap: hőtérképek sűrűségvizsgálathoz
  • TileLayer: OpenStreetMap, Stamen, CartoDB térképrétegek

Komplexebb példa

Számos plugin is rendelkezésünkre áll. Néhányat az alábbi példában fel is fogunk használni. A pluginok listáját itt lehet böngészni: https://python-visualization.github.io/folium/latest/user_guide/plugins.html

A fenti példában pandas-al kiveszük az excel tábla bizonyos oszlopaiból az adatokat, átnevezzük a fejléc címeket és végzünk egy kis adat tisztítást vagyis ahol nincs súly-adat, azokat a cellékat 0-ával töltjük fel. Ezt követően felépítjük a GPS koordinátákat.
Két folium plugint is felhasználunk, egy MiniMap-et és egy keresőt. Ezután for loop-al legeneráljuk a markereket és az egészet mentjük egy html fájlban.
A marker-buborékba – ami kattintáskor bukkan fel – html kóddal formázzuk meg az adatokat.

Az egész folyamat tiszta, logikus és áttekinthető 🙂

Folium dokumentáció: https://python-visualization.github.io/folium/latest/#

Scroll to Top