In deze blog laat ik zien hoe je een kaartvisualisatie kunt maken van je LinkedIn-connecties in Python met Folium. Folium is een Python package gebaseerd op de Leaflet.js library.

Het grote voordeel is dat je de data die je in Python geanalyseerd en geprepareerd hebt, meteen kunt weergeven met Folium.

Deze blog beschrijft de drie stappen die nodig zijn om je connecties te plotten in een Folium-kaart in Python:

1. Download het csv-bestand met al je connecties vanuit je LinkedIn-profiel
2. Geocodeer de bedrijven van je connecties in het csv-bestand
3. Creëer de kaartvisualisatie in Python met de package Folium

1. Je LinkedIn-connecties downloaden

Klik op je profielfoto en ga onder “Account” naar “Instellingen en privacy”. Kies vervolgens aan de linkerkant van de Privacy-tab op “Hoe LinkedIn uw gegevens gebruikt”.

Voor ons voorbeeld hoeven we alleen “Connecties” aan te vinken en op “Archief aanvragen” te klikken. Als het even duurt voordat deze informatie wordt opgestuurd, lees vooral vast verder.


2. Benader de locaties met de Google Places API

Zoals je in stap 1 hebt kunnen zien, zitten er geen adres- of locatiegegevens in het opgevraagde bestand. Ik heb hier gebruik gemaakt van de Google Places API (hiervoor heb je een API-key nodig) en heb op basis van de bedrijfsnamen locaties bepaald. Mijn doel was een kaartvisualisatie maken en niet om de bedrijven zo precies mogelijk te lokaliseren. Het kan bijvoorbeeld zijn dat niet alle vestigingen correct uit de bus komen of dat LinkedIn-gebruikers geen duidelijke bedrijfsnaam hebben gebruikt.

Voor elke connectie uit mijn csv-bestand met connecties voeg ik de verkregen latitude en longitude toe. Deze data sla ik op in een json-file en dient als input voor de Folium-kaartvisualisatie in stap 3.

3. Connecties toevoegen aan de kaart

De Python-code hieronder toont een manier om de kaart aant maken met Folium. Het json-bestand uit stap 2 wordt eerst ingelezen en daarna wordt elke connectie toegevoegd aan de zogenaamde MarkerCluster.

Copy to Clipboard
Het resultaat:

Dit was een eenvoudig voorbeeld. Folium heeft ontzettend veel mogelijkheden. Zo kun je meerdere lagen toevoegen aan de kaart die je afzonderlijke van elkaar uit kunt filteren. Ook zijn er diverse plugins beschikbaar waarmee je polygonen en routes kunt tekenen, maar ook heatmaps kunt maken:

Referenties: