D3 mercator function NaN
-
21-12-2019 - |
Question
I'm not too familiar with the D3 mercator projection function, and I'm getting some unexpected results. I'd like to project the following latitude and longitude (somewhere in Mexico):
var geo = [19, -99]
I define my mercator projection using d3
var projection = d3.geo.mercator();
projection(geo)
> [529.7418836818384, NaN]
which is a point obviously not on a map. What exactly am I doing wrong? Thanks!
Solution
Javascript has it's lat and long round the opposite way to the rest of the world, so what you've given D3 is a longditue of 19 and a latitude of -99. Obviously there is no latitude of -99 hence the NaN. Now if you just reverse your geo variable to
var geo = [-99, 19]
all should be good.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow