
\documentclass{article}
\usepackage{tabularx}
\usepackage{multirow}
\begin{document}
\begin{table}[h!]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
\begin{tabularx}{\textwidth}{c X | c | c | c |}
\cline{3-5}
& & \multicolumn{3}{c|}{Paired Differences} \\
\cline{3-5}
& & Mean & Std. Deviation & Std. Error Mean \\
\hline
Pair 1 & Testing 1 and Testing 2 and Testing 3 & 4.20\% & 44.6\% & 4.54\% \\
\hline
\end{tabularx}
\caption{Testing 123}
\end{table}
\end{document}
Исход:
Я не могу понять. Если я добавлю, \begin{tabularx}{\textwidth}{|c X | c | c | c |}
это не будет работать.
решение1
так?
\documentclass{article}
\usepackage{multirow, tabularx}
\usepackage{xparse}
\NewExpandableDocumentCommand\mcc{O{1}m}
{\multicolumn{#1}{c|}{#2}}
\usepackage{siunitx} \begin{document}
\begin{table}[ht]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
\begin{tabularx}{\linewidth}{|c X | % <---
*{3}{S[table-format=2.2, % <---
table-space-text-post=\,\%]<{\,\%}|}}
\cline{3-5}
\mcc[2]{} % <---
& \mcc[3]{Paired Differences} \cr
\cline{3-5}
\mcc[2]{} % <---
& \mcc{Mean} & \mcc{Std. Deviation} & \mcc{Std. Error Mean} \cr
\hline
Pair 1 & Testing 1 and Testing 2 and Testing 3
& 4.20 & 44.6 & 4.54 \cr
\hline
\end{tabularx}
\caption{Testing 123}
\end{table}
\end{document}
Приложение: Менее сложная версия ответа выше:
\documentclass{article}
\usepackage{multirow, tabularx}
\usepackage{siunitx}
\begin{document}
\begin{table}[ht]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
\begin{tabularx}{\linewidth}{|c X | % <---
*{3}{S[table-format=2.2, % <---
table-space-text-post=\,\%]<{\,\%}|}}
\cline{3-5}
\multicolumn{2}{c|}{}
& \multicolumn{3}{c|}{Paired Differences} \cr
\cline{3-5}
\multicolumn{2}{c|}{}
& \multicolumn{1}{c|}{Mean}
& \multicolumn{1}{c|}{Std. Deviation}
& \multicolumn{1}{c|}{Std. Error Mean} \cr
\hline
Pair 1 & Testing 1 and Testing 2 and Testing 3
& 4.20 & 44.6 & 4.54 \cr
\hline
\end{tabularx}
\caption{Testing 123}
\end{table}
\end{document}
где S
тип столбца определен в siunitx
пакете. Подробности его опций и использования см. в документации пакета, (под)раздел5.14 Табличный материал, стр. 44. Краткое содержание:
в
tabular
преамбуле определены количество столбцов их типы:c
тип столбца центрирует содержимое ячеек (и он широкий, поскольку текст длинный)X
Тип столбца существует вtabularx
табличной среде. Его ширина рассчитывается пакетом, содержимое в нем устанавливается как абзац, что означает, что автоматически переносятся строки- Вертикальные полосы
|
определяют вертикальные линии в таблице. Они присутствуют во всех ячейках, которыенетперезаписать\multicolumn
ячейками.
\multicolumn
команда объединяет смежные ячейки в одну ячейку (или определяет новый тип столбца для отдельных ячеек)table-format=2.2
средства<integer part>.<decimal part>
числа. Числа в столбце выравниваются по десятичной точкеtable-space-text-post=\,\%
определить дополнительный к горизонтальному пробел после числа (зарезервирован для небольшого пробела\,
и символа%
Для получения дополнительной информации я настоятельно рекомендую вам прочитать вводный текст о написании таблиц. НапримерВики-книга: Таблицыи, конечно, в документации пакетов. Они являются частью вашей установки LaTeX (в latex/doc
папке) или они доступны в архиве CTAN.
Относительно оригинального ответа: - пакет xparse
(хранится в doc/generic
папке, как указано в его документации):
Пакет xparse предоставляет высокоуровневый интерфейс для создания команд на уровне документа. Таким образом, он предназначен для замены макроса LATEX 2ε \newcommand. Однако xparse работает так, что интерфейс к функции (например, необязательные аргументы, звездочки и обязательные аргументы) отделен от внутренней реализации. xparse предоставляет нормализованный ввод для внутренней формы функции, независимо от расположения аргументов на уровне документа.
так с \NewExpandableDocumentCommand\mcc{O{1}m}{...}
определена новая команда, которая позволяет писать более короткий код. Например:
O{1}
— параметр1
(в нашем случае количество столбцов. Параметр не используется, количество столбцов равно1
.m
— обязательный аргумент, который в нашем случае представляет собой текст в ячейке с несколькими столбцами.- Примеры его использования:
\mcc{text}
определяется как эквивалент кода\multicolumn{1}{c|}{text}
(см. преамбулу в исходном ответе)\mcc[r]{text over three columns}
эквивалентно \multicolumn{3}{c|}{текст в трех столбцах}`