Подогнать таблицу под ширину страницы

Подогнать таблицу под ширину страницы

Я новичок в Latex и делаю таблицы с помощью Booktab.

Я сделал таблицу с иерархией по оси x, так что у меня есть 3 столбца, и каждый столбец имеет 3 подстолбца. Но таблица не помещается в ширину страницы, как показано ниже

введите описание изображения здесь

Я перепробовал много решений, таких как tabu, adjustbox, resize box и tabular*, но они, похоже, не решают проблему или я не знаю правильного синтаксиса.

Код, который я использовал, приложен ниже вместе с полем изменения размера.

\documentclass{article}
\usepackage{amsmath}
\usepackage{tabularx,booktabs}
\usepackage{array}
\usepackage{graphicx}

\newcolumntype{L}{>{$}l<{$}}
\newcolumntype{C}{>{$}c<{$}} 
\newcolumntype{R}{>{$}r<{$}}
\newcommand{\nm}[1]{\textnormal{#1}}

\begin{document}

\begin{table} [h!]
\centering
\resizebox{\textwidth}{!} {%
\begin{tabular}{LCCCCCCCCC}
\toprule
\multicolumn{1}{l}{} &
\multicolumn{3}{c}{N N}    &
\multicolumn{3}{c}{MM}    &
\multicolumn{3}{c}{DW}    \\ 
\cmidrule(lr){2-4}
\cmidrule(lr){5-7}
\cmidrule(lr){8-10}

&
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column two} &
\multicolumn{1}{c}{column One+col2} &
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column Two} &
\multicolumn{1}{c}{column One+col2} &
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column two} &
\multicolumn{1}{c}{column One+col2}     \\
\midrule

experiment1 & a  & b & c & d \\
experiment2 & p & q & r & s \\ 

\midrule[\heavyrulewidth]
\bottomrule

\end{tabular}%
}
\caption{Description of the table}\label{beta}
\end{table}

\end{document}

После изменения размера я получаю следующее

введите описание изображения здесь

Кто-нибудь может мне помочь? Спасибо большое заранее.

решение1

Пример решения без использования более продвинутых методов, таких как вращение. Он суммирует мои предложения из комментариев. Жирная линия показывает ширину текста и отделяет его от исходного (не масштабированного) примера. В тексте есть некоторые изменения, но, вероятно, без потери его понимания.

\documentclass{article}
\usepackage{amsmath}
\usepackage{tabularx,booktabs}
\usepackage{array}
\usepackage{graphicx}

\oddsidemargin-1cm
\textwidth17cm
\def\COMP#1{\begin{tabular}{c}#1\end{tabular}}

\newcolumntype{L}{>{$}l<{$}}
\newcolumntype{C}{>{$}c<{$}} 
\newcolumntype{R}{>{$}r<{$}}
\newcommand{\nm}[1]{\textnormal{#1}}

\begin{document}

\begin{table} [h!]
\centering
%\resizebox{\textwidth}{!} {%
\begin{tabular}{LCCCCCCCCC}
\toprule
\multicolumn{1}{l}{} &
\multicolumn{3}{c}{N N}    &
\multicolumn{3}{c}{MM}    &
\multicolumn{3}{c}{DW}    \\ 
\cmidrule(lr){2-4}
\cmidrule(lr){5-7}
\cmidrule(lr){8-10}

&
\multicolumn{1}{c}{\COMP{col.\\ One}} &
\multicolumn{1}{c}{\COMP{col.\\ two} }&
\multicolumn{1}{c}{\COMP{col.\\ One\\+col2}} &
\multicolumn{1}{c}{\COMP{col.\\ One}} &
\multicolumn{1}{c}{\COMP{col.\\ Two}} &
\multicolumn{1}{c}{\COMP{col.\\ One\\+col2}} &
\multicolumn{1}{c}{\COMP{col.\\ One}} &
\multicolumn{1}{c}{\COMP{col.\\ two}} &
\multicolumn{1}{c}{\COMP{col.\\ One\\+col2}}     \\
\midrule

ex1 & a  & b & c & d \\
ex2 & p & q & r & s \\ 

\midrule[\heavyrulewidth]
\bottomrule

\end{tabular}%
%}
\caption{Description of the table}\label{beta}
\end{table}

\noindent\rule{\textwidth}{1mm}

\begin{table} [h!]
\centering
%\resizebox{\textwidth}{!} {%
\begin{tabular}{LCCCCCCCCC}
\toprule
\multicolumn{1}{l}{} &
\multicolumn{3}{c}{N N}    &
\multicolumn{3}{c}{MM}    &
\multicolumn{3}{c}{DW}    \\ 
\cmidrule(lr){2-4}
\cmidrule(lr){5-7}
\cmidrule(lr){8-10}

&
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column two} &
\multicolumn{1}{c}{column One+col2} &
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column Two} &
\multicolumn{1}{c}{column One+col2} &
\multicolumn{1}{c}{column One} &
\multicolumn{1}{c}{column two} &
\multicolumn{1}{c}{column One+col2}     \\
\midrule

experiment1 & a  & b & c & d \\
experiment2 & p & q & r & s \\ 

\midrule[\heavyrulewidth]
\bottomrule

\end{tabular}%
%}
\caption{Description of the table}\label{beta}
\end{table}


\end{document}

введите описание изображения здесь

решение2

Еще одно решение

\documentclass{article}
\usepackage{amsmath}
\usepackage{tabularx,booktabs}
\usepackage{array}
        \newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}           
\usepackage{graphicx}
\newcommand{\nm}[1]{\textnormal{#1}}

\begin{document}

\begin{table} [h!]
\centering
\resizebox{\textwidth}{!} {%
\begin{tabular}{@{\hspace{1cm}}cc cc cc cc c}
\toprule

\multicolumn{3}{c}{N N}    &
\multicolumn{3}{c}{MM}    &
\multicolumn{3}{c}{DW}    \\ 
\cmidrule(lr){1-3}
\cmidrule(lr){4-6}
\cmidrule(lr){7-9}


\multicolumn{1}{C{1.5cm}}{column One} &
\multicolumn{1}{C{1.5cm}}{column two} &
\multicolumn{1}{C{1.5cm}}{column One+col2} &
\multicolumn{1}{C{1.5cm}}{column One} &
\multicolumn{1}{C{1.5cm}}{column Two} &
\multicolumn{1}{C{1.5cm}}{column One+col2} &
\multicolumn{1}{C{1.5cm}}{column One} &
\multicolumn{1}{C{1.5cm}}{column two} &
\multicolumn{1}{C{1.5cm}}{column One+col2}     \\
\midrule

\multicolumn{9}{l}{Experiment 1}\\ \cmidrule{1-2}
 a  & b & c & d \\
\multicolumn{9}{l}{Experiment 2} \\ \cmidrule{1-2}
  p & q & r & s \\ 

\midrule[\heavyrulewidth]
\bottomrule

\end{tabular}%
}
\caption{Description of the table}\label{beta}
\end{table}

\end{document}

Связанный контент