How to Reproject GeoJSON without crs property to WGS84 (to use React Leaflet)

3.1k views Asked by At

(Please help I've been struggling with the same problem for more than three days...)

I got GeoJSON file from National Statistical Office, which means it's official data- and the coordinates in this file look like this- :

[959394.1770449197,1948599.8772112513], 
... ,
[1140386.5164449196,1684523.5489112514], 

It's a GeoJSON object without a member named "crs", and as you can see, it's not using the WGS84 datum. Seems like it's coordinates to draw polygons, which are the shape of each district. I assume that there is no problem with data structure.

I tried to create map using this file with React Leaflet, but failed continuously. To find out if it's the problem of GeoJSON that I'm using, I used other GeoJSON files and it worked fine(meaning that interactive map was created on web) - By comparing the GeoJSON files, I found out that coordinates should be in WGS84 if I want to work with leaflet. So I tried to transform GeoJSON to WGS84 using reproject. In my react app project, I installed reproject, epsg and put the code below:

import * as mapData from '../data/sigunguWithPopGeo.json'
import { toWgs84 } from 'reproject'
import 'epsg'

let epsg = require('epsg');
toWgs84(mapData, undefined, epsg);

And the error was returned:

Error: Unable to detect CRS, GeoJSON has no "crs" property.

Thanks for reading this long intro - Finally here is my question. Is there any way to reproject GeoJSON without "crs" property to WGS84? I also tried making the coordinates WGS84 with mapshaper.org. Again, I got the error caused by undefined coordinate system of GeoJSON file: Unable to project -- source coordinate system is unknown

Should I consider adding crs property to GeoJSON? It's my very first time to create the interactive map using GeoJSON with React-leaflet, so any kind of advice from people who experienced similar projects would really help me!

1

There are 1 answers

0
dahyeko On BEST ANSWER

Luckily, solved the problem by myself..! Instead of keep looking for the methods to convert GeoJSON with undefined coordinate system to WGS84, I visited National Statistical Office's website to figure out the code of coordinate system that was used in src data - which was EPSG 5179. Then I converted GeoJSON file from EPSG 5179 to EPSG 4326(WGS84) on MyGeoData Converter. Before downloading the converted data, I checked on the map to see if the coordinates of data was successfully converted to proper lat, lng values. Hope this solution helps who are struggling with similar problems..‍