[GIS] Project twitter geo data into WGS84 map

coordinate systemlatitude longitudetwitterwgs84

I'm currently working on displaying twitter geo data (currently just long/lat -> cartesian without any analysis).

This is the world map (source: naturalearthdata): http://dl.dropbox.com/u/14747311/world.png

This is the rendered data: http://dl.dropbox.com/u/14747311/overlay.png. The mapping is done via mercator projection (with R = 1):

x = ((long + 180)/360)*x_dim
y = (y_dim/2) - ((arsinh(tan(lat))*(y_dim/2) (lat converted to radiant of course)

Now, the shape is apparent, but of course, the projections don't match. How can I fix that? (programming experience is plentiful, so it's more the theoretical side I'm concerned with).

Best Answer

"The world map certainly isn't in Mercator, but probably pseudo-Plate Carree (lat/lon just mapped as if they're linear units) or Plate Carree. Mercator stretches north-south, and you can see that the POIs are offset north and south versus the base map." [mkennedy]

"@mkennedy has provided the diagnosis (your world map is not in a Mercator projection). The implied solution is to treat (lon, lat) as (x, y), scaled to your world map (this is the "Plate Carree" projection), and you should get a close match. No inverse hyperbolic sine functions are needed :-)." [whuber]

Note: This is a summary of comments by @mkennedy and @whuber, so this question can be marked as answered.