I use TikZ to draw arrows and labels on maps, generated from other applications.
A minimal example with a global mercator projection might look like this:
\documentclass[]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\node[anchor=south west,inner sep=0] (image) at (0,0)
{\includegraphics[width=18cm]{my_mercator_world_map.jpg}};
\begin{scope}[x={(image.south east)},y={(image.north west)}]
\draw [->] (0.5,1) -- (0.5421,0.6353);
\node[draw] at (0.2,0.05) {a};
\end{scope}
\end{tikzpicture}
\end{document}
It's easy to normalise map coordinates to TikZ coordinates, but sometimes I have many labels or even TikZ generated polygons. It would be very convenient to give the coordinates as geographical coordinates instead of a number between 0 and 1.
Is there a simple way to normalise TikZ coordinates so that they can be given in e.g. decimal lat-lon if I know the exact extent of the map?
In the case above, I'd like to be able to give coordinates as:
\draw [->] (0,90) -- (7.578,12.177);
\node[draw] at (-108,-81) {a};
I also work with local maps, but we can assume that all have a rectangular grid. Map coordinates to any projection would be fantastic, but I guess that is beyond the scope of TikZ.
EDIT
A partly working answer can be found here: tex.stackexchange.com/a/9562/121799
[0..1]x[0..1]
as coordinate systems, not[-180..180]x[-90..90]
... so an explicit answer could be better, I think!