scaling table vs changing font vs some other approach

subjective, but not opinionated

At "normal" font sizes, my tables typically exceed page margins. I am asking for guidelines on how to solve this, having in mind the following:

I am an academic and I write papers in the social sciences. My papers typically have a few (say around 10) tables -- the typical tables you find in social science papers, with lots of numbers (as opposed to formulas, figures, etc) and always table notes.

I use statistical software (R, Stata) to construct my tables.

Although I have good command of these tools, I constantly struggle with setting standards to the tables I generate. So I keep asking myself:

1. Should I change font sizes inside the table environment (eg with a \small command inside the table environment -- which happens to be the approach I usually take), or
2. Should I do this globally (as shown in this post.), or
3. Should I \resizebox or use something similar?

When building my tables, I have in mind:

1. I better be able to re-use the same code for my beamer presentations;
2. Although all my .tex code will go through the a journal-specific publishing process, I like to have nice-looking working paper versions;
3. Although around 10 tables make it to the final version of my paper, I typically generate around one hundred tables in the writing process.

So my question then is, in this context, what guidelines are there that I could use to help me planning how to construct my LaTex tables? I am not asking for general booktabs-like guidelines; rather, I want to know how to write good latex code to consistently fit large-ish tables in a page, without generating eyesores.

• If they don't get too crazy, you could try something like standalone in a file with your table, and then import that PDF via \includegraphics. – bombcar Mar 27 '14 at 3:44

I'm usually against the third option (scaling) although it seems quite popular. Perhaps I'm biased against it though because (a) I implemented \resizebox and (b) at the time most text was using bitmap fonts and so scaling text made things unreadable. However I think if possible it is better to have consistent font sizes and so choosing to use a fixed size such as \small is I think preferable.

A fourth option is to steal some space from the marginpar area. LaTeX default classes use a relatively narrow text block in single column mode for lots of good reasons, but those reasons don't really apply to a multi-column table. The design includes extra space of width \marginparsep+\marginparwidth which is assumed not to run off the page and is available for side nodes, that probably are not being used for tables. So you could (although some may question the aesthetics of the design) allow the table to be that much wider.

• glad to know I wasn't too much off track. I never found \resibox an elegant solution. But then , if I'll be using \small in every table, then I'd better set it globally, no? – djas Mar 28 '14 at 12:45
• If you want to set it globally add it to \@floatboxreset (but then it would apply to figures as well) or don't bother and just consider \small part of the boilerplate surround for tables same as \begin{table} – David Carlisle Mar 28 '14 at 14:45