Здравствуйте. Пытаюсь сделать следующее: а) сузить ширину столбца и б) выровнять по центру значения в столбце. Получается следующее:
Выравнивал вот так:
\begin{center}
\begin{tabular}{|c|p{3cm}|p{3cm}|c|c|c|}
\hline
Время $n$ & Время изм., напр. 1,01 & Интервал времени изм. при данном врем. изм. & Конечн. знач. & $\tg a$ & Исх.знач.\\
\hline
0 & 0 & 0-10 & 0,3973 & tg 0,0112 & 0,3989 \\
\hline
\end{tabular}
Хочется, чтобы ширина столбца соответствовала количеству текста.
Спасибо.
1. Оригинал взят
здесь.
2. Т.к. вы ничего не сказали о каком именно выравнивании по центру идёт речь (вертикальном или горизонтальном), пример ниже для горизонтального.
а. Создадим новую команду в преабуле (до \begin{document}):
\newcommand{\specialcell}[2][c]{%
\begin{tabular}[#1]{@{}c@{}}#2\end{tabular}}
б. Используем её в таблице:
\begin{tabular}{|c|c|c|c|c|c|}
\hline
Время $n$ & \specialcell[t]{Время изм.,\\напр. 1,01} & \specialcell[t]{Интервал времени изм.\\при данном врем. изм.} & Конечн. знач. & $\tg a$ & Исх.знач.\\
\hline
0 & 0 & 0-10 & 0,3973 & tg 0,0112 & 0,3989 \\
\hline
\end{tabular}
В этом примере вы указываете с помощью \\, где делать перенос строки внутри ячейки, а далее LaTeX делает ширину ячейки соответствующей ширине самой длинной строке (после переноса) в ячейке и выравнивает текст по центру в ней. Указание переноса необходимо, иначе не ясно, на сколько именно строк разбивать каждую ячейку.