I like the style of the following table (booktabs effects, nice caption, equal width of data columns, right alignment of data, width set equal to the \linewidth, able to look at two estimator evaluation criteria side-by-side (MPE and MAPE), etc.). What I do NOT like is the imperfect right-alignment of the data (e.g., see data row 3) because there's a little too much "stuff" in the table and tabularx is trying to get all of it to fit within \linewidth.
Q: What are some good/standard options for dealing with this problem of a table with content that is too wide for the document?
I figure a few are:
- Use
longtableand display the table in landscape (Would rather not do this. But it's not the worst approach) - Stack the table so that the "Est." column is repeated once and "MPE" section is above the "MAPE" section (Would rather not do this. Like the idea of being able to look straight across the table)
- Decrease the font size of the document or the table (Not really an option. I just don't like this approach)
- Don't insist on equal column-widths so that columns without "-" signs are a little smaller. Then everything can fit (Really don't like this approach. Prefer equal column widths)
- Decrease
\tabcolsep. (Not bad) - Remove a digit. (This is probably my leading candidate)

\documentclass{article}
\usepackage{booktabs}
\usepackage{diagbox}
\usepackage{tabularx}
\usepackage[margin=10pt,font=small,labelfont=bf,labelsep=colon,tableposition=top,figureposition=top]{caption}
\begin{document}
\newcolumntype{R}{>{\raggedleft\arraybackslash$}X<{$}}
\begin{table}[ht]
\centering
\caption{My caption. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.}
\begin{tabularx}{\linewidth}{@{}lRRRRRRRR@{}}
\toprule
& \multicolumn{4}{l}{MPE} & \multicolumn{4}{l}{MAPE}\\
\cmidrule(r){1-1} \cmidrule(lr){2-5} \cmidrule(l){6-9}
\diagbox[trim=lr]{Est.}{Jumps} & 0 & 3 & 10 & 30 & 0 & 3 & 10 & 30 \\
\midrule
$\widetilde{JV}$ & 2.14 & 2.42 & 1.35 & -1.69 & 2.14 & 4.57 & 4.92 & 4.74 \\
$\widehat{JV}$ & 1.99 & 2.16 & 1.12 & -1.83 & 1.99 & 4.47 & 4.91 & 4.81 \\
$\widehat{JV}_{\mathrm{BNS04}}$ & 0.35 & -4.35 & -12.91 & -26.35 & 3.11 & 5.48 & 12.95 & 26.35 \\
\midrule
$\widetilde{IV}$ & -2.03 & -2.52 & -1.33 & 1.73 & 6.54 & 6.37 & 5.24 & 3.71 \\
$\widehat{IV}$ & -1.87 & -2.26 & -1.10 & 1.87 & 6.48 & 6.31 & 5.23 & 3.80 \\
$\widehat{IV}_{\mathrm{BNS04}}$ & -0.24 & 4.25 & 12.93 & 26.39 & 6.61 & 7.06 & 13.11 & 26.39 \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}
NOTE: This is an extension of this previous question of mine where I was just trying to figure out how to do equal column widths and right-alignment in a table.


\diagbox, or if you really like it, remove space in that box so that it typesets smaller. – nickpapior Jan 23 '12 at 22:49\diagbox, I find such things disguisting – yo' Jan 23 '12 at 23:00\diagboxdisgusting? What would you propose instead? Eliminating "Est." or "Jumps"? Adding an extra row to label "Est." and "Jumps" separately? – lowndrul Jan 23 '12 at 23:30Est.is likely not descriptive, whence it could be left out. In that case you could right align Jumps or do Jumps: to show its relation to the row. Or further you could add Jumps after MPE and MAPE as those do seem to be related. – nickpapior Jan 23 '12 at 23:45Est.completely and think out a good caption of the table. Everybody who reads your article know what thoseJVandIVmean, and who did not,Est.abbreviation wouldn't help him anyways. Second suggestion: If you makeJumpsand0,3,10,30in bold, you visually connect them and therefore it is clear, "who is who". – yo' Jan 24 '12 at 00:07tabulara quick and dirty work around might be to reduce the space between columns slightly, e.g.\setlength{\tabcolsep}{5pt}– prettygully Jan 24 '12 at 00:11