[@esdd][1] hat [in ihrer Antwort zur ursprünglichen Frage](http://texwelt.de/wissen/fragen/2362/was-ist-falsch-an-der-pgf-funktionsdefinition/2384#2384) schon eine funktionierende Lösung präsentiert.
Der Fehler
! Dimension too large.
kann bei den verschiedensten Problemstellungen auftauchen. Das Grundproblem dahinter ist, das TeX _nicht_ dafür gedacht war, größere Rechnungen zu machen. Von sich aus kennt TeX nur die Rechnung mit ganzen Zahlen und die Rechnung mit Längen. Hat man ein Paket, das offensichtlich Rechnungen mit Kommazahlen oder Gleitkommazahlen vornimmt, dann nimmt es unter der Haube in der Regel den Umweg über Längen. Allerdings können die Zahlen hier nicht beliebig groß werden. Wenn während der Rechnung Werte entstehen, die größer als die maximal mögliche Länge sind, kommt es zu besagtem Fehler.
Falls irgendjemand es komisch vorkommen sollte, dass eine Programmiersprache eine solche Einschränkung hat, dann denke man daran, dass TeX für das Setzen von Büchern entwickelt wurde und nicht dafür, komplexe Berechnungen durchzuführen.
Die verschiedenen Pakete, die dennoch solche Brechenungen durchführen, sind sich der Einschränkung in der Regel bewusst und weisen in ihren Dokumentation Dokumentationen normalerweise auch darauf hin und bieten u.U. auch Vorschläge für Workarounds oder Alternativen.
Zitat aus dem pgfmanual:
> It should be noted that all
> calculations must not exceed
> **±16383.99999** at any point, because the
> underlying computations rely on TeX
> dimensions. This means that many of
> the underlying computations are
> necessarily approximate and that in
> addition, are not very fast. TeX is,
> after all, a typesetting language and
> not ideally suited to relatively
> advanced mathematical operations.
> However, it is possible to change the
> computations as described in Section
> 76.
Laut dem TeX Book ist
> 16383.99998 pt (TeX’s largest dimen)
[@cfeuersaenger][2] hat in [_Notes On Programming in TeX_][3] geschrieben:
> The `\dimen` registers perform their
> arithmetic's internally with 32 bit
> scaled integers, so called ‘scaled
> point’ with unit sp. It holds 1 pt =
> 65536 sp = 216 sp. 2<sup>16</sup> sp. One of the 32 bits
> is used as sign. The total number
> range in pt is [−(230 [−(2<sup>30</sup> − 1)/216, (230 1)/2<sup>16</sup>, (2<sup>30</sup> −
> 1)/216 1)/2<sup>16</sup> ] = [−16383.9998,
> +16383.9998]<sup>1</sup>.
>
> <sup>1</sup><sub>Please note that this
> does not cover the complete range of a
> 32 bit integer, I do not know
> why</sub>
<sub>Dank an [@MarcoDaniel][4] für das [Zusammensuchen der Zitate][5]!</sub>
[1]: http://texwelt.de/wissen/benutzer/50/esdd
[2]: http://texwelt.de/wissen/benutzer/97/cfeuersaenger
[3]: http://mirrors.ctan.org/graphics/pgf/contrib/pgfplots/doc/latex/pgfplots/TeX-programming-notes.pdf
[4]: http://texwelt.de/wissen/benutzer/17/marco-daniel
[5]: http://tex.stackexchange.com/a/54703/5049