# Centering in tabularx and X columns

How can I center the column when using X in tabularx environment like in this example?

\begin{tabularx}{\textwidth}{@{}lXXXXX@{}}
1 & 2 & 3 & 4 & 5 \\
\end{tabularx}

-
do you want to centre an entire column or just one row, or just one cell? –  ArTourter Jan 3 '13 at 20:33
Sorry... I want to center all X columns –  Matthias Jan 3 '13 at 20:36
Use c instead of X. –  m0nhawk Jan 3 '13 at 20:37

You have two solutions (well at least)

If you are bound to tabularx then you can use

\begin{tabularx}{\textwidth}{@{}l *5{>{\centering\arraybackslash}X}@{}}
1 & 2 & 3 & 4 & 5 & 6\\
\end{tabularx}


Alternatively you can use the tabu package which offers you a lot more flexibility:

\begin{tabu} to \textwidth {@{} l *5{X[c]}@{}}
1 & 2 & 3 & 4 & 5 & 6\\
\end{tabu}

-
how to do the tabularx for \ruggedright? just replacing centering doesnt work :( –  ankhi Sep 26 '14 at 19:04
@ankhi probably because it is spelt \raggedright! However, a solution to this question (and this really should be a separate question rather than a comment to a vaguely related one), is given in this answer which uses the same package as suggested by herbert below –  ArTourter Sep 27 '14 at 0:45

Although this question is somewhat old, since I recently dealt with the same task, I present my solution: I defined a new columntype Y to center the cells in a tabularxenvironment.

In the preamble define:

\newcolumntype{Y}{>{\centering\arraybackslash}X}


to typeset the example simply enter

\begin{tabularx}{\textwidth}{@{}lYYYYY@{}}
1 & 2 & 3 & 4 & 5 & 6\\
\end{tabularx}

-
This is beautiful. Works nicely! –  Trefex Apr 7 '14 at 16:15
\usepackage{tabularx,ragged2e}
\renewcommand\tabularxcolumn[1]{>{\Centering}p{#1}}


with ragged2e you do not need the \arraybackslash

-
Thanks for your answer too! –  Matthias Jan 3 '13 at 21:20