Configurar

Configurar

Configurar

Usando o MWE abaixo, estou tentando centralizar "Título 1" com os 4 subtítulos e "Título 2" e "Título 3" com seus subtítulos, respectivamente:

MWE

\documentclass[12pt, oneside]{book}

%MARGIN SETTINGS
    \usepackage{geometry}
    \geometry{
    paper=a4paper, 
    inner=2.5cm, 
    outer=2.5cm, 
    bindingoffset=0.0cm, 
    top=2.5cm, 
    bottom=2.5cm,
    headsep=4.5mm, 
    footskip=7.4mm, 
    %showframe
    }

%FOR TABLES
\usepackage{float}
\usepackage{graphicx} 

\usepackage{booktabs}
\usepackage{multirow}
\usepackage{siunitx}
\newcolumntype{?}{!{\vrule width 1pt}}


%----------------------BEGIN-------------------------

\begin{document}


\begin{table}[H]
\centering
\resizebox{\textwidth}{!}{%
  \begin{tabular}{l|l ? S|S|S|S  ? S|S ? S|S} %S centres
  %\begin{tabular}{l|l ? S|S|S|S  | S|S | S|S}
    \toprule
    \multirow{2}{*}{Column 1} & 
    \multirow{2}{*}{Column 2} &  %& &
      \multicolumn{2}{c}{Heading 1} & %& 
      \multicolumn{2}{c}{Heading 2} & 
      \multicolumn{2}{c}{Heading 3} \\
       & & {Sub 1} & {Sub 2} & {Sub 3} & {Sub 4} & {Sub 1} & {Sub 2} & {Sub 1} & {Sub 2} \\
          \midrule
    A1 = item1 & 0.0001  & 1 & 1 & 1 & 2 & 3 & 4 & 5 & 6 \\
    %\hline
    A2 = item2 & 0.0002 & 1 & 1 & 7 & 8 & 9 & 10 & 11 & 12 \\
    %\hline
    A3 = item3 & 0.0003  & 1 & 1 & 13 & 14 & 15 & 16 & 17 & 18 \\
    \bottomrule
  \end{tabular}}
    \caption{Test Table} \label{tbl:BPF}
\end{table}

\end{document}

O problema

Se eu usar more &para alinhar os títulos, recebo o seguinte erro. As linhas verticais transbordaram para o topo:

insira a descrição da imagem aqui

Meta

Como centralizar os títulos (como acima), mas sem as linhas verticais transbordantes entre “Sub 1 Sub 2” e “Sub 4 Sub 1”

Responder1

Não tenho certeza do que você quer. Você quer dizer assim? Se sim: você deve especificar o número correto de colunas \multicolumn(4 no caso de "Título 1"). Para ter as regras verticais, basta adicioná-las à especificação do tipo de coluna de \multicolumn.

\documentclass[12pt, oneside]{book}

%MARGIN SETTINGS
    \usepackage{geometry}
    \geometry{
    paper=a4paper, 
    inner=2.5cm, 
    outer=2.5cm, 
    bindingoffset=0.0cm, 
    top=2.5cm, 
    bottom=2.5cm,
    headsep=4.5mm, 
    footskip=7.4mm, 
    %showframe
    }

%FOR TABLES
\usepackage{float}
\usepackage{graphicx} 

\usepackage{booktabs}
\usepackage{multirow}
\usepackage{siunitx}
\newcolumntype{?}{!{\vrule width 1pt}}


%----------------------BEGIN-------------------------

\begin{document}


\begin{table}[H]
\centering
\resizebox{\textwidth}{!}{%
  \begin{tabular}{l|l ? S|S|S|S  ? S|S ? S|S} %S centres
  %\begin{tabular}{l|l ? S|S|S|S  | S|S | S|S}
    \toprule
    \multirow{2}{*}{Column 1} & 
    \multirow{2}{*}{Column 2} &  %& &
      \multicolumn{4}{c?}{Heading 1} & %& 
      \multicolumn{2}{c?}{Heading 2} & 
      \multicolumn{2}{c}{Heading 3} \\
       & & {Sub 1} & {Sub 2} & {Sub 3} & {Sub 4} & {Sub 1} & {Sub 2} & {Sub 1} & {Sub 2} \\
          \midrule
    A1 = item1 & 0.0001  & 1 & 1 & 1 & 2 & 3 & 4 & 5 & 6 \\
    %\hline
    A2 = item2 & 0.0002 & 1 & 1 & 7 & 8 & 9 & 10 & 11 & 12 \\
    %\hline
    A3 = item3 & 0.0003  & 1 & 1 & 13 & 14 & 15 & 16 & 17 & 18 \\
    \bottomrule
  \end{tabular}}
    \caption{Test Table} \label{tbl:BPF}
\end{table}

\end{document}

insira a descrição da imagem aqui

Em geral, é considerado uma má prática redimensionar uma tabela. Em vez disso, você pode usar \smallpara ajustá-lo à largura do texto. Além disso, as tabelas tendem a ficar melhores com menos (leia-se 'não') linhas verticais. Você pode considerar usar o seguinte:

\documentclass[12pt, oneside]{book}

%MARGIN SETTINGS
    \usepackage{geometry}
    \geometry{
    paper=a4paper, 
    inner=2.5cm, 
    outer=2.5cm, 
    bindingoffset=0.0cm, 
    top=2.5cm, 
    bottom=2.5cm,
    headsep=4.5mm, 
    footskip=7.4mm, 
    %showframe
    }

%FOR TABLES
\usepackage{float}
\usepackage{graphicx} 

\usepackage{booktabs}
\usepackage{multirow}
\usepackage{siunitx}


%----------------------BEGIN-------------------------

\begin{document}


\begin{table}[H]
  \small
\centering
  \begin{tabular}{ll  SSSS   SS  SS} %S centres
  %\begin{tabular}{l|l ? S|S|S|S  | S|S | S|S}
    \toprule
     & &
      \multicolumn{4}{c}{Heading 1} & %& 
      \multicolumn{2}{c}{Heading 2} & 
      \multicolumn{2}{c}{Heading 3} \\
      \cmidrule(rl){3-6}
      \cmidrule(rl){7-8}
      \cmidrule(rl){9-10}
     Column 1& Column 2& {Sub 1} & {Sub 2} & {Sub 3} & {Sub 4} & {Sub 1} & {Sub 2} & {Sub 1} & {Sub 2} \\
          \midrule
    A1 = item1 & 0.0001  & 1 & 1 & 1 & 2 & 3 & 4 & 5 & 6 \\
    %\hline
    A2 = item2 & 0.0002 & 1 & 1 & 7 & 8 & 9 & 10 & 11 & 12 \\
    %\hline
    A3 = item3 & 0.0003  & 1 & 1 & 13 & 14 & 15 & 16 & 17 & 18 \\
    \bottomrule
  \end{tabular}
    \caption{Test Table} \label{tbl:BPF}
\end{table}

\end{document}

insira a descrição da imagem aqui

informação relacionada