Para la Argentina la proyección oficial es la Gauss-Kruger, y esta difiere bastante de la proyección Mercator que es normalmente utilizada en mapas digitales. Si queremos desplegar el territorio argentino de manera de lograr una representación armoniosa que conserve las formas y áreas, lo recomendable es usa Gauss-Kruger.
En D3.js no esta soportada esta proyeccion pero se puede optar por la proyección Mercator transversa d3.geo.transverseMercator()
que es la base para la definición de la referencia cartográfica Gauss-Kruger. Esta proyección está definida dentro del plugin d3.geo.projection.js
por lo que deberá ser cargado junto con d3.js
.
Para poder calcular los parámetros necesarios para aplicar esta proyección es necesario calcular el centro geográfico de la Argentina continental, que está comprendida entre los paralelos de 22° y 55° de latitud sur y los meridianos de 53° y 74° de longitud oeste.
Para esto utilizaremos la siguiente formula:
La Argentina esta dividida en 7 fajas de 3° de ancho. La faja 3 que corresponde al meridiano de 66° es la utilizada en el caso de querer representar todo el territorio Argentino.
Para poder centrar el mapa es necesario moverlo 2.5° que es la diferencia entre el meridiano 66° y la longitud del centro geografico.
Dados estos valores podremos definir la ubicación del centro geográfico en la proyección con .center([2.5, -38.5])
y .rotate([66, 0])
.
Para la escala he ajustado empíricamente la siguiente formula:
la cual se aplica en D3.js con el siguiente comando .scale((56.5 * map.height) / 33)
.
Modified http://d3js.org/d3.v3.min.js to a secure url
Modified http://d3js.org/d3.geo.projection.v0.min.js to a secure url
Modified http://d3js.org/topojson.v1.min.js to a secure url
https://d3js.org/d3.v3.min.js
https://d3js.org/d3.geo.projection.v0.min.js
https://d3js.org/topojson.v1.min.js