Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Output

\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}
\begin{document}
% ...
\[
\begin{array}{ccccc}
x(1) & = & \frac{x(0)}{1} & = & x(0)\\
x(2) & = & \frac{x(1)}{2} & = & \frac{x(0)}{2}\\
x(3) & = & \frac{x(2)}{3} & = & \frac{x(0)}{2.3}\\
x(4) & = & \frac{x(3)}{4} & = & \frac{x(0)}{4!}\\
 &  &  &  & \vdots\\
x(n) & = & \frac{x(n-1)}{n!} & = & \frac{x(0)}{n!}
\end{array}
\]
% ...
\end{document}

Because of the fractions in the array cells, array elements are vertically too close to each other, they are literally touching to each other. Also the horizontal spacing is too much as you see in the image (screen shot from the output PDF file).

How do I make these cell-spacings look better?

share|improve this question
add comment

3 Answers

up vote 11 down vote accepted
\documentclass{article}
\usepackage{amsmath}
\begin{document}
% ...
\[\arraycolsep=1.4pt\def\arraystretch{2.2}
\begin{array}{ccccc}
x(1) & = & \dfrac{x(0)}{1} & = & x(0)\\
x(2) & = & \dfrac{x(1)}{2} & = & \dfrac{x(0)}{2}\\
x(3) & = & \dfrac{x(2)}{3} & = & \dfrac{x(0)}{2.3}\\
x(4) & = & \dfrac{x(3)}{4} & = & \dfrac{x(0)}{4!}\\
 &  &  &  & \vdots\\
x(n) & = & \dfrac{x(n-1)}{n!} & = & \dfrac{x(0)}{n!}
\end{array}
\]
% ...
\end{document}

enter image description here

or for a left aligned:

\documentclass{article}
\usepackage{amsmath}
\begin{document}
% ...
\[\arraycolsep=1.4pt\def\arraystretch{2.2}
\begin{array}{rll}
x(1) &= \dfrac{x(0)}{1} &= x(0)\\
x(2) &= \dfrac{x(1)}{2} &= \dfrac{x(0)}{2}\\
x(3) &= \dfrac{x(2)}{3} &= \dfrac{x(0)}{2.3}\\
x(4) &= \dfrac{x(3)}{4} &= \dfrac{x(0)}{4!}\\
     &                  & \vdots\\
x(n) &= \dfrac{x(n-1)}{n!} &= \dfrac{x(0)}{n!}
\end{array}
\]
% ...
\end{document}

enter image description here

share|improve this answer
    
I tried applying your solution. It gives "Undefined control sequence." error on the dfrac commands. When I convert dfracs back to fracs the cells are separated as in your answer. I couldn't add the \usepackage{amsmath} command in my code, because LyX doesn't let me edit the source code. Could this error with dfrac be because of that? How should I do? –  hkBattousai Mar 21 '13 at 20:02
    
In Menu > Document > Settings... > LaTeX Preamble I added \usepackage{amsmath} in that large text box. Now when I try to preview my code in PDF it says LaTeX Error: 'amsmath.sty' not found.. I'm stuck, I don't know what to do. –  hkBattousai Mar 21 '13 at 20:08
    
@hkBattousai Herbert's solution might not work except when putting the whole "array" environment into an ERT/TeX code. Probably you want it to work with the "array" environment provided by LyX. It seems not possible to use { and } in a math environment without making a global def. Hence, you can move the part \arraycol....etch{2.2} outside of the math environment. As ERT put {\arraycolsep=1.4pt\def\arraystretch{2.2} (note the opening {) before the math environment and put } as ERT after the math environment. The opening { and the closing } will keep the change local. Working? –  e-birk Mar 21 '13 at 20:10
    
@hkBattousai If you want to tell LyX to definitely use the amsmath package go to Document > Settings... > Math Options deselect the "automatically usage" and select the other one. –  e-birk Mar 21 '13 at 20:14
    
@e-birk: You can have everything inside the ERT mode! And \arraycolsep=1.4pt\def\arraystretch{2.2} will be enough. But without the LyX code I cannot say why it dosn't work for him –  Herbert Mar 21 '13 at 20:19
show 6 more comments

Use the alignat environment from the amsmath package. You can also adjust the space between lines with the \setstretch command from the setspace package.

\documentclass{article}
\usepackage{amsmath}
\usepackage{setspace}
\begin{document}
{\setstretch{2.25}
\begin{alignat*}{2}
x(1)   &=\frac{x(0)}{1}    &&= x(0)\\
x(2)   &=\frac{x(1)}{2}    &&= \frac{x(0)}{2}\\
x(3)   &=\frac{x(2)}{3}    &&= \frac{x(0)}{2.3}\\
x(4)   &=\frac{x(3)}{4}    &&= \frac{x(0)}{4!}\\
\vdots &                   && \\
x(n)   &=\frac{x(n-1)}{n!} &&= \frac{x(0)}{n!}
\end{alignat*}}
\end{document}

sample output

share|improve this answer
add comment

For the sake of completeness, you can also adjust the vertical space between two lines of the alignat* environment (this is also true for the align* environment) by specifying the spacing to use inside square brackets (for example [.5cm]) right after the newline symbol \\. Note that this value can also be a negative measurement if you want to reduce the vertical space between two lines. This is especially useful to individually correct the spacing between lines, such as when the line heights differ from one line to another (for example, all lines contain a fraction except one).

The following example is not made to be pretty or practical, but merely to show an example.

\documentclass{article}
\usepackage{amsmath}
\usepackage{setspace}
\begin{document}
{\setstretch{2.25}
\begin{alignat*}{2}
x(1)   &=\frac{x(0)}{1}    &&= x(0)\\[.5cm]
x(2)   &=\frac{x(1)}{2}    &&= \frac{x(0)}{2}\\[2cm]
x(3)   &=\frac{x(2)}{3}    &&= \frac{x(0)}{2.3}\\[-3mm]
x(4)   &=\frac{x(3)}{4}    &&= \frac{x(0)}{4!}\\
\vdots &                   && \\
x(n)   &=\frac{x(n-1)}{n!} &&= \frac{x(0)}{n!}
\end{alignat*}}
\end{document}

Output for code above.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.