Meu alinhamento de texto dos cabeçalhos das colunas - "Número cumulativo de cursos necessários para aprovação" e "Número cumulativo de cursos superiores necessários para aprovação" está claramente errado. Reconheço que estes são cabeçalhos de colunas excepcionalmente longos, mas não consigo pensar em um termo mais preciso do que este no momento.
O que eu gostaria é que os dois cabeçalhos de coluna "envolvessem" mais em torno de "BSc" e "EDP", embora não exatamente. Talvez se o corte estiver na palavra "Cursos" (mover 'Obrigatório' para a segunda linha), isso seria bom. Também é possível mover as colunas EDP um pouco mais para a direita, para que fiquem mais alinhadas com a palavra “Cursos” acima?
MWE:
\documentclass{article}
\usepackage{booktabs, threeparttable}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\begin{document}
\begin{table}[H]
\begin{threeparttable}
\caption{Minimum Requirements for Automatic Readmission into the Science Faculty}
\label{table:sci}
\begin{tabular}{@{}p{0.18\textwidth}*{4}{L{\dimexpr0.1\textwidth-2\tabcolsep\relax}}@{}}
\toprule
& \multicolumn{2}{c}{\bfseries Cumulative Number of Courses Required to be Passed} &
\multicolumn{2}{c}{\bfseries Cumulative Number of Senior Courses Required to be Passed} \\
\cmidrule(l){2-3} \cmidrule(l){4-5}
& BSc & EDP & BSc & EDP \\
\midrule
First-year & 2 & 2 & --- & --- \\
Second-year & 7 & 6 & --- & --- \\
Third-year & 11 & 10 & 3 & 2 \\
Fourth-year & 15 & 14 & 6 & 5 \\
\bottomrule
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}
Responder1
Fiz três alterações na sua tabela:
1) eu adicionei\centering
2) Alterei a largura das 4 colunas do lado direito para 0.2\textwidth...
e
3) Coloquei os cabeçalhos, cada um no seu \Longstack
. Isso exigiu três ajustes adicionais no preâmbulo: adicionar o stackengine
pacote; diga ao pacote para usar \#
como fim de linha, pois tabular
já está em uso \\
(observe que a stackengine
versão 4.00 mais recente pode usar \\
delimitadores de fim de linha, mesmo aninhados dentro de a tabular
); e diga ao pacote para definir 12pt entre as linhas de base das linhas da pilha, pois tabular
zera o valor de \baselineskip
, que é o intervalo padrão da pilha longa. Observe que você pode fornecer o argumento \Longstack
a [l]
ou [r]
opcional para alterá-lo do [c]
alinhamento padrão.
\documentclass{article}
\usepackage{booktabs, threeparttable, stackengine}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\setstackEOL{\#}
\setstackgap{L}{12pt}
\begin{document}
\begin{table}[ht]
\centering
\begin{threeparttable}
\caption{Minimum Requirements for Automatic Readmission into the Science Faculty}
\label{table:sci}
\begin{tabular}{@{}p{0.18\textwidth}*{4}{L{\dimexpr0.20\textwidth-2\tabcolsep\relax}}@{}}
\toprule
& \multicolumn{2}{c}{\bfseries \Longstack{Cumulative Number\# of Courses Required\# to be Passed}} &
\multicolumn{2}{c}{\bfseries \Longstack{Cumulative Number of\# Senior Courses Required\# to be Passed}} \\
\cmidrule(l){2-3} \cmidrule(l){4-5}
& BSc & EDP & BSc & EDP \\
\midrule
First-year & 2 & 2 & --- & --- \\
Second-year & 7 & 6 & --- & --- \\
Third-year & 11 & 10 & 3 & 2 \\
Fourth-year & 15 & 14 & 6 & 5 \\
\bottomrule
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}
Responder2
Não use c
em \multicolumn{2}{c}{...
mas
\multicolumn{2}{L{\dimexpr0.3\linewidth-8\tabcolsep\relax}}{...
Código completo:
\documentclass{article}
\usepackage{booktabs, threeparttable}
\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
\begin{document}
\begin{table}[H]
\begin{threeparttable}
\caption{Minimum Requirements for Automatic Readmission into the Science Faculty}
\label{table:sci}
\begin{tabular}{@{}p{0.18\textwidth}*{4}{L{\dimexpr0.3\linewidth-8\tabcolsep\relax}}@{}}
\toprule
& \multicolumn{2}{L{\dimexpr0.4\linewidth-4\tabcolsep\relax}}{\bfseries Cumulative Number of Courses Required to be Passed} &
\multicolumn{2}{L{\dimexpr0.4\linewidth-4\tabcolsep\relax}}{\bfseries Cumulative Number of Senior Courses Required to be Passed} \\
\cmidrule(l){2-3} \cmidrule(l){4-5}
& BSc & EDP & BSc & EDP \\
\midrule
First-year & 2 & 2 & --- & --- \\
Second-year & 7 & 6 & --- & --- \\
Third-year & 11 & 10 & 3 & 2 \\
Fourth-year & 15 & 14 & 6 & 5 \\
\bottomrule
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}