JSON bestand (met 'lon' en 'lan') uploaden in Mapbox geeft fout

Hoi,

Ik heb totaal geen verstand van geocoding ed. dus ik hoop dat ik hier goed zit met mijn vraag;

Ik heb tijdens mijn wereldreis gebruik gemaakt van een Reisapp die continu je trip trackt. Hier wil ik nu met Mapbox een mooie overzichtskaart van maken voor aan de muur. Nu heb ik de data opgevraagd en gedownload uit de app en hieruit heb ik JSON bestanden toegestuurd gekregen. Wanneer ik deze echter probeer te uploaden als tile/data set in mapbox krijg ik de foutmelding:
Input failed. “type” member required on line 1.

Wanneer ik het JSON bestand open krijg ik het volgende te zien:
{“locations”: [{“lon”: 151.079209240775, “lat”: -33.8510778634911, “time”: 1535260212.13903}, {“lon”: 151.075161398092, “lat”: -33.8468726325816, “time”: 1535261260.22272}, {“lon”: 151.074015443979, “lat”: -33.8385713830357, “time”: 1535261877.66436}]} etc. (gaat nog ik weet niet hoever door).

Mijn vermoeden is dat mapbox dit op deze manier niet kan uitlezen, klopt dat? En zo ja, hoe moet en kan ik het bestand aanpassen dat dit wel lukt?

Je dient hiervoor GeoJSON te gebruiken https://geojson.org/.

Hier kom ik ook niet echt verder mee. Ik heb net het .json bestand gecheckt op jsinlint.com en daarbij krijg ik wel gewoon ‘valid JSON’. Waarom geeft Mapbox dan een fout aan?!

Geojson is json met een specifieke structuur om er geodata in op te slaan:

1 like

Je zal de JSON die jij hebt moeten omvormen tot een GeoJSON-bestand. Daar zijn allerlei manieren voor. GitHub - mbostock/ndjson-cli: Command line tools for operating on newline-delimited JSON streams. is een handige tool voor de command line. Zie hoe dit gebruikt wordt ook het verhaal van Mike Bostock Command-Line Cartography, Part 2. A tour of d3-geo’s new command-line… | by Mike Bostock | Medium.

Een alternatief is jq, een JSON commandline processing tool. Hiermee kan je JSON omkatten naar elk denkbaar formaat, dus ook GeoJSON. Het is altijd wel een beetje stoeien met de jq syntaxis. Zie hier de jq incantatie voor het converteren van jouw JSON naar GeoJSON.

Heb dit voorbeeld ook meteen toegevoegd aan mijn gist met JQ queries voor GeoJSON.

Het is inmiddels gelukt! Op GitHub vond ik een topic hoe ik het JSON bestand kon omvormen naar een GPX en na het GPX bestand aangepast te hebben in een viewer en weer opnieuw opgeslagen te hebben kon ik deze wel in Mapbox uploaden als route!

2 likes

Dit topic is 180 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.