Ecco, così forse potrebbe andare.
`\documentclass{scrreprt}
\usepackage[eulermath]{classicthesis}
\usepackage{booktabs,array,icomma,amsmath}\newcolumntype{C}{>{$}c<{$}} \begin{document} \begin{tabular}{CCCCC} \toprule D & P_u & u_u & \beta & G_f \\ \text{(m)} & \text{(kg)} & \text{(m)} & & \text{(Pa\,·\,m)} \\ \midrule 5 & 269,8 & 0,000674 & 1,79 & 0,04089 \\ 10 & 421,0 & 0,001035 & 3,59 & 0,04089 \\ 20 & 640,2 & 0,001565 & 7,18 & 0,04089 \\ \bottomrule \end{tabular} \end{document}` Certo, i pacchetti caricati sono proprio tanti, per una sola tabella. E poi c'è l'effetto collaterale di icomma... :roll:
Senza troppi classicthesis o euler, proviamo con
`\documentclass[a4paper]{article}
\usepackage[italian]{babel}
\usepackage[osf]{mathpazo}`
come preambolo. Premetto che, se i numeri in quanto tali (cioè da stampare obbligatoriamente in “maiuscolo”) non sono molti, è perfettamente accettabile che siano come gli altri. Questo diventa però inaccettabile in un documento tecnico dove i dati numerici siano parecchi.
La soluzione definitiva è naturalmente siunitx, che mette a disposizione un tipo di colonna specifico per dati numerici, con allineamento automatico al separatore decimale, “S”. Con
`\sisetup{output-decimal-marker={,}}`
la tabella
`\begin{tabular}{S}
1.23\\
12.345
\end{tabular}`
viene esattamente come la vorresti. Nessun bisogno di trucchi e incantesimi speciali. Se poi scrivi la virgola invece del punto nella tabella, il risultato è del tutto identico.
Non vuoi usare siunitx? Nota che non si usa granché delle sue potenti macro, per quel caso. Bene:
`\newcolumntype{R}{>{$\mathcode`,=`,}r<{$}}
\begin{tabular}{R}
1,230\\
12,345
\end{tabular}`
dà il risultato voluto. Certo, c'è un trucco malefico, ma lo si usa una volta e ce lo si dimentica. L'usanza della virgola per la parte decimale è nefanda e lo è sempre stata, ma ormai è tardi per cambiare. O forse no, chissà.
Nota che in questo caso la parte decimale va "riempita"; ma la buona prassi richiede che il numero di cifre coincida con quello delle cifre significative e quindi è sempre lo stesso per dati omogenei. Se si devono usare unità di misura (non nei dati delle tabelle, visto che l'unità di misura va indicata nell'intestazione della colonna) si può ricorrere a \unit che, per casi semplici, funziona bene. Se si hanno tante unità, riecco siunitx.
Ultima cosa: dare sempre "mode=math" fra le opzioni a siunitx.
Ultimissima: il trucco che ti ho proposto per non dover controllare tutte le tue tabelle è specifico per Palatino e non può essere adattato. :(
Ciao
Enrico