Sunday 7 June 2015

arcgis desktop - Explaining gap between Robinson WGS84 (ESRI:54030) in QGIS and ArcMap?


Does anybody know why there a gap appearing between two point layers create with ESRI and QGIS when I a reproject, from the same source file, to Robinson?


The source coordinate system and destination coordinate system share the same datum. It seems there's a shift depending on the technology used to reproject.


Here are the steps to reproduce:



I'm using a shapefile point layer in Lat/Long WGS84 Coordinate System and I reproject it to Robinson (ESRI:54030) using the Tool "Project" in ArcMap


I do the same thing in QGIS. I take the same point layer in WGS84 Lat/Long and reproject it to Robinson (ESRI:54030) using the "Save as.."


Result in QGIS


Download the sample point data here




At the request of mkennedy, here is the cs2cs conversion of regular 10° points:


deg_E   deg_N   sph_X     sph_Y      ell_X       ell_Y
10 0 943711.34 0 944768.52 0
10 10 939370.28 1068322.39 940422.59 1069519.16
10 20 926913.31 2136644.78 927951.66 2139038.32

10 30 905962.87 3204967.3 906977.76 3208557.61
10 40 869724.36 4271566.44 870698.65 4276351.58
10 50 819047.09 5320935.04 819964.61 5326895.73
10 60 753647.9 6328948.79 754492.16 6336038.68
10 70 678150.95 7267177.19 678910.63 7275318.12
10 80 586327.84 8093403.95 586984.66 8102470.44
10 90 502243.15 8615503.11 502805.77 8625154.47

Scaling the results leads to the factors in https://en.wikipedia.org/wiki/Robinson_projection.



Answer




The original paper describing the Robinson projection included a table of values at every 5 degrees along the equator and the central longitude. Those values are used to interpolate intermediate coordinates


This same table is what Esri is using.


The PROJ.4 code has a much expanded table with each 5 degree value having an additional 3 values (possibly done for performance reasons).


An Esri developer thinks that there are different interpolations occurring.


Another possibility is that PROJ.4 is calculating a sphere from the given WGS84 datum while Esri is using the semimajor axis of WGS84, but I haven't been able to check this yet.


Note: I'm getting much closer values (X<1m, Y<120m) if I specify a sphere in PROJ.4 but haven't managed an exact match yet.


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...