Using the siunitx package
\usepackage{siunitx}
I am trying to put numbers with plenty of decimal digits in a table while rounding them to 3 digits after the decimal point. There is a compilation error saying ! Number too big.. I tried to change the expected digit amounts to a thousand, but this does not work:
\begin{table}
\sisetup{
table-number-alignment = center,
table-figures-exponent = 1000,
table-figures-integer = 1000,
table-figures-uncertainty = 1000,
table-figures-decimal = 1000,
table-sign-mantissa,
table-sign-exponent,
table-auto-round
}
\begin{tabular}{
S
S
S
S
}
0.2 & 0.6903200460356393 & 0.625 & -6.532004603563935e-2 \\
\end{tabular}
\end{table}
Is there a fix?

l3fp, which currently only supports 9 (10?) digit numbers, and barfs when the decimal part has more digits than that (at an even lower level you have a TeX error: the decimal part is >2^{31}). I'm slowly working on an update to l3fp which would use more IEEE-854 compliant 16 digit mantissas and would simply round when the input has too many decimals. Not sure when that'll be done. – Bruno Le Floch Jan 19 '12 at 22:32l3fp(the calculation stuff for angles does, for obvious reasons). The issue with the rounding code is that I essentially need to do a 'big int' comparison rather than\int_compare:nNnTFin some places to allow completely arbitrary amounts of digits. – Joseph Wright♦ Jan 19 '12 at 22:35siunitx. For example,table-figures-integer = 1000reserves space for 1000 digits before the decimal place. I assume you wanttable-figures-integer = 4for four digits, i.e. up to9999.... – Joseph Wright♦ Jan 19 '12 at 22:45