I use "hybrid" coordinates made out of \ymin and raw x- and y-values. It's pretty comfortable to use, thanks to Gonzalo:
\newcommand{\getpgfkey}[1]{\pgfkeysvalueof{/pgfplots/#1}}
\newcommand{\xmin}[0]{\getpgfkey{xmin}}
\newcommand{\xmax}[0]{\getpgfkey{xmax}}
\newcommand{\ymin}[0]{\getpgfkey{ymin}}
\newcommand{\ymax}[0]{\getpgfkey{ymax}}
So now... say you have large data values and you would like to have your data scaled and the tick labels' content adjusted acoordingly. (This is directly based on my personal experience: I was told that the default position of the y tick labels aren't that pretty. Personally, I agree. Their default style puts them at (0,1), above right, roughly put.)
Of course one could always manually adjust their position and further alignment and so on but that is very time-consuming. So Jake delivered the solution by using an additional scaling style.
But that kind of "breaks" several other things, see my comments here. Most notable is the lack of sound meaning when using the aforementiond \xmin, \xmax... commands. After the transformations, these values are out of bounds and thus not visible anymore.
So I'd like to define a new value or variable \xminSCALED (and \xmaxSCALED, \yminSCALED and \ymaxSCALED) which gets defined/renewed after the coordinates have been transformed/scaled. These new values should then give access to new minimum and maximum values for the transformed x and y.
MWE
\documentclass{standalone}
\usepackage{pgfplots}
\newcommand{\getpgfkey}[1]{\pgfkeysvalueof{/pgfplots/#1}}
\newcommand{\xmin}[0]{\getpgfkey{xmin}}
\newcommand{\xmax}[0]{\getpgfkey{xmax}}
\newcommand{\ymin}[0]{\getpgfkey{ymin}}
\newcommand{\ymax}[0]{\getpgfkey{ymax}}
\usepgfplotslibrary{groupplots}
\pgfplotsset{
YScaling/.style={
y coord trafo/.code=\pgfmathparse{##1/(1e#1)},
%the following 4 lines break the MWE, also not working are variants with \newcommand or \renewcommand
%\let{\pgfkeysvalueof{/pgfplots/xmin}}={\xminSCALED},
%\let{\pgfkeysvalueof{/pgfplots/xmax}}={\xmaxSCALED},
%\let{\pgfkeysvalueof{/pgfplots/ymin}}={\yminSCALED},
%\let{\pgfkeysvalueof{/pgfplots/ymax}}={\ymaxSCALED},
ylabel style={
append after command={
node [rotate=90, anchor=base west] at (\tikzlastnode.base east) {$\cdot{10^{#1}}$}
}
}
},
}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
group style={
horizontal sep=0.2cm,
group size=2 by 1,
ylabels at=edge left,
yticklabels at=edge left,
},
ymin=300, ymax=1300,
xlabel={The label for the x-axis},
ylabel={Some y-values},
scale ticks above exponent={2},
]
\nextgroupplot[YScaling=3]
\addplot[only marks] coordinates{(2000,1200) (3000,500)};
\draw[ultra thick, dashed, blue] (axis cs:2000,\pgfkeysvalueof{/pgfplots/ymin}) rectangle (axis cs:3060,\pgfkeysvalueof{/pgfplots/ymax}); %<--- not working
\draw[ultra thick, dashed, red] (axis cs:2000,600) rectangle (axis cs:3050,1150); %<--- works but does not look equally good
%
\nextgroupplot[scaled y ticks=false]
\addplot[only marks] coordinates{(2000,1200) (4000,400)};
\addlegendentry{Text}
\end{groupplot}
\end{tikzpicture}
\end{document}
Picture for additional MWE below

additional MWE
\documentclass{standalone}
\usepackage{pgfplots}
\newcommand{\getpgfkey}[1]{\pgfkeysvalueof{/pgfplots/#1}}
\newcommand{\xmin}[0]{\getpgfkey{xmin}}
\newcommand{\xmax}[0]{\getpgfkey{xmax}}
\newcommand{\ymin}[0]{\getpgfkey{ymin}}
\newcommand{\ymax}[0]{\getpgfkey{ymax}}
\usepgfplotslibrary{groupplots}
\pgfplotsset{
xscalingdown/.style={ %XXX SCALE DOWN
x coord trafo/.code=\pgfmathparse{##1/(1e#1)},
xlabel style={
append after command={
node [anchor=base west] at (\tikzlastnode.base east) {$\cdot{10^{#1}}$}
}
},
every axis/.append code={%
\pgfmathresult{\xmax/(1e#1)}\global\let\xmaxSCALED=\pgfmathresult
\pgfmathresult{\xmin/(1e#1)}\global\let\xminSCALED=\pgfmathresult
% \pgfmathresult{\ymax}\global\let\ymaxSCALED=\pgfmathresult
% \pgfmathresult{\ymin}\global\let\yminSCALED=\pgfmathresult
},
},
xscalingup/.style={ %XXX SCALE UP
x coord trafo/.code=\pgfmathparse{##1*(1e#1)},
xlabel style={
append after command={
node [anchor=base west] at (\tikzlastnode.base east) {$\cdot{10^{{-1}#1}}$}
}
},
every axis/.append code={%
\pgfmathresult{\xmax*(1e#1)}\global\let\xmaxSCALED=\pgfmathresult
\pgfmathresult{\xmin*(1e#1)}\global\let\xminSCALED=\pgfmathresult
%\pgfmathresult{\ymax}\global\let\ymaxSCALED=\pgfmathresult
%\pgfmathresult{\ymin}\global\let\yminSCALED=\pgfmathresult
},
},
yscalingdown/.style={ %YYY SCALE DOWN
y coord trafo/.code=\pgfmathparse{##1/(1e#1)},
ylabel style={
append after command={
node [rotate=90, anchor=base west] at (\tikzlastnode.base east) {$\cdot{10^{#1}}$}
}
},
every axis/.append code={%
\pgfmathparse{\ymax/(1e#1)}\global\let\ymaxSCALED=\pgfmathresult
\pgfmathparse{\ymin/(1e#1)}\global\let\yminSCALED=\pgfmathresult
%\pgfmathresult{\xmax}\global\let\xmaxSCALED=\pgfmathresult
%\pgfmathresult{\xmin}\global\let\xminSCALED=\pgfmathresult
},
},
yscalingup/.style={ %YYY SCALE UP
y coord trafo/.code=\pgfmathparse{##1*(1e#1)},
ylabel style={
append after command={
node [rotate=90, anchor=base west] at (\tikzlastnode.base east) {$\cdot{10^{{-1}#1}}$}
}
},
every axis/.append code={%
\pgfmathparse{\ymax*(1e#1)}\global\let\ymaxSCALED=\pgfmathresult
\pgfmathparse{\ymin*(1e#1)}\global\let\yminSCALED=\pgfmathresult
%\pgfmathresult{\xmax}\global\let\xmaxSCALED=\pgfmathresult
%\pgfmathresult{\xmin}\global\let\xminSCALED=\pgfmathresult
},
},
}
\begin{document}
\begin{tikzpicture}
\begin{groupplot}[
group style={
horizontal sep=0.2cm,
group size=2 by 1,
ylabels at=edge left,
yticklabels at=edge left,
},
ymin=-100, ymax=1300,
xlabel={The label for the x-axis},
ylabel={Some y-values},
xscalingdown=3,
yscalingdown=3,
]
\nextgroupplot
\addplot coordinates{(2000,1200) (3000,\yminSCALED)};
\filldraw[ultra thick, dashed, blue] (\xminSCALED,\yminSCALED) rectangle (\xmaxSCALED,\ymaxSCALED);
\nextgroupplot
\addplot+ coordinates{(2100,1000) (2800,1200)};
\filldraw[ultra thick, dashed, red] (axis cs:2100,1000) rectangle (axis cs:\xmaxSCALED,1000) node[below, fill=orange] {bla};
%%NOTABLE DIFFERENT OUTPUT when omitting 'axis cs'
\filldraw[ultra thick, dashed, red] (2100,1000) rectangle (axis cs:\xmaxSCALED,1000) node[below, fill=orange] {bla};
\end{groupplot}
\end{tikzpicture}
\end{document}


(axis description cs:0.1,0.1) rectangle (axis description cs:0.9,0.9)? Or something like that? – percusse Sep 26 '14 at 07:27\xminmacros and so forth but I need the hybrid coordinates. Ok I do not need them but I want them as they made T&E runs obsolete and are a real time-saver. – henry Sep 26 '14 at 07:53