I often need a display environment which would let me easily present equally-spaced expressions in the same line, with content on successive lines appearing centred at the same x-coordinate as content on the first line. I can sort of get the effect I want like this:
\begin{align*}
x+y && e^{2 \pi i} && \sigma
\\
\text{First} && \text{Second} && \text{Third}
\end{align*}
But it's not quite perfect, as the 'columns' appear right-aligned, not centred.
Of course I can achieve this easily enough using an array. But then I have to set the spacing between the columns myself, which the align environment does for me automatically. I just wonder if any of the standard math environments can do this already. I would like to be able to code it like this:
\begin{myenvironment*}
x+y & e^{2 \pi i} & \sigma
\\
\text{First} & \text{Second} & \text{Third}
\end{myenvironment*}
Best Answer
For equally-spaced columns (different from equal-width columns), you could put your contents in a fixed-width
tabular*
environment:I define a new columntype
E
used merely as a spacer for the first/last columns. Also, the addition of@{\extracolsep{\fill}}
adds stretch before/after each column to space things out evenly across\textwidth
. Using*{3}{>{$}c<{$}}
allows for 3 similarly defined columns (centeredc
and typeset in math mode$...$
).Of course, this requires you to know how many columns you want to typeset, since you're using the
tabular*
environment. Although this is not as noticeable, you might want to add\renewcommand{\tabcolsep}{0pt}
and scope{...}
it around yourtabular*
environment in order to remove the spacing caused by theE
column type. For example the codeproduces this marginal difference