mesa com várias colunas
Estou lutando para obter a distribuição certa para a tabela com várias colunas por linhas. Meu código LaTeX é:
\documentclass{book}
\begin{document}
\begin{table}[]
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\hline
\multicolumn{7}{|c|}{0} & \multicolumn{7}{c|}{1}\\ \hline
\multicolumn{7}{|c|}{Negative} & \multicolumn{7}{c|}{Positive}\\ \hline
\multicolumn{4}{|c|}{-1} & \multicolumn{6}{c|}{0} & \multicolumn{4}{c|}{1} \\ \hline
\multicolumn{4}{|c|}{Negative} & \multicolumn{6}{c|}{Neutral} & \multicolumn{4}{c|}{Positive} \\ \hline
\multicolumn{2}{|c|}{1} & \multicolumn{3}{c|}{2} & \multicolumn{4}{c|}{3} & \multicolumn{3}{c|}{4} & \multicolumn{2}{c|}{5} \\ \hline
\multicolumn{2}{|c|}{\begin{tabular}[c]{@{}c@{}}Strongly\\ Negative\end{tabular}} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Weakly\\ Negative\end{tabular}} & \multicolumn{4}{c|}{Neutral} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Weakly\\ Positive\end{tabular}} & \multicolumn{2}{c|}{\begin{tabular}[c]{@{}c@{}}Strongly\\ Positive\end{tabular}} \\ \hline
\begin{tabular}[c]{@{}c@{}}Very\\ Negative\end{tabular} & \multicolumn{2}{c|}{Negative} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Mostly\\ Negative\end{tabular}} & \multicolumn{2}{c|}{Neutral} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Mostly \\ Positive\end{tabular}} & \multicolumn{2}{c|}{Positive} & \begin{tabular}[c]{@{}c@{}}Strongly \\ Positive\end{tabular} \\ \hline
\end{tabular}
\end{table}
\end{document}
Essa codificação resulta em:
Mas eu realmente quero isso:
Respostas
Aqui está uma solução que usa um tabularxambiente para (a) garantir que a tabela caiba dentro da largura do bloco de texto, (b) garantir que as 7 células na linha inferior tenham larguras iguais e (c) permitir quebra automática de linha dentro do células.
Como na resposta de David Carlisle , o tabularxenv. é configurado para ter não 7, mas 14 colunas subjacentes. Cada célula visível na linha inferior, na verdade, abrange 2 colunas subjacentes. O conteúdo das células visíveis deve ser inserido em \mc(ou \md) wrappers, para indicar quantas colunas subjacentes devem se estender.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{tabularx}
\renewcommand\tabularxcolumn[1]{m{#1}}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcommand\newhsize[1]{\hsize= \dimexpr #1\hsize
+#1\tabcolsep+#1\tabcolsep-2\tabcolsep
+#1\arrayrulewidth-\arrayrulewidth \relax}
\newcommand{\mc}[2]{\multicolumn{#1}{ >{\newhsize{#1}}C|}{#2}}
\newcommand{\md}[2]{\multicolumn{#1}{|>{\newhsize{#1}}C|}{#2}} % for first col. in row
\begin{document}
\setlength\tabcolsep{3pt} % default: 6pt
\setlength\extrarowheight{2pt} % for a more open "look"
\noindent
\begin{tabularx}{\textwidth}{|*{14}{C|}}
\hline
\md{7}{0} & \mc{7}{1} \\ \hline
\md{7}{Negative} & \mc{7}{Positive}\\ \hline
\md{5}{$-1$} & \mc{4}{0} & \mc{5}{1}\\ \hline
\md{5}{Negative} & \mc{4}{Neutral} & \mc{5}{Positive} \\ \hline
\md{3}{1} & \mc{2}{2} & \mc{4}{3} & \mc{2}{4} & \mc{3}{5}\\ \hline
\md{3}{Strongly Negative} & \mc{2}{Weakly Negative} & \mc{4}{Neutral} &
\mc{2}{Weakly Positive} & \mc{3}{Strongly Positive}\\ \hline
\md{2}{Very Positive} & \mc{2}{Positive} & \mc{2}{Mostly Positive} & \mc{2}{Neutral} &
\mc{2}{Mostly Negative} & \mc{2}{Negative} & \mc{2}{Strongly Negative} \\ \hline
\end{tabularx}
\end{document}
Em sua \halignatribuição de coluna de tabela de nível mais baixo , Tex faz uma "simplificação" de que, se houver um limite de célula estendido em cada linha, ele será essencialmente removido da estrutura interna.
Então, aqui você quer garantir que você realmente tenha 14 colunas efetivas para que possa ter uma última linha final com cada célula presente e sem extensões, isso normalmente forçaria o espaço vertical visível extra e as regras verticais, então usei o \omitprimitivo para evitar a adição do regras e o \strutque o látex normalmente adiciona a uma linha.
\documentclass{article}
\addtolength\textwidth{2pt}
\begin{document}
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\hline
\multicolumn{7}{|c|}{0} & \multicolumn{7}{c|}{1} \\ \hline
\multicolumn{7}{|c|}{Negative} & \multicolumn{7}{c|}{Positive}\\ \hline
\multicolumn{4}{|c|}{-1} & \multicolumn{6}{c|}{0} & \multicolumn{4}{c|}{1} \\\hline
\multicolumn{4}{|c|}{Negative}& \multicolumn{6}{c|}{Neutral}& \multicolumn{4}{c|}{Positive}\\ \hline
\multicolumn{2}{|c|}{1}& \multicolumn{3}{c|}{2}& \multicolumn{4}{c|}{3} & \multicolumn{3}{c|}{4} & \multicolumn{2}{c|}{5}\\ \hline
\multicolumn{2}{|c|}{\begin{tabular}[c]{@{}c@{}}Strongly\\ Negative\end{tabular}} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Weakly\\ Negative\end{tabular}}& \multicolumn{4}{c|}{Neutral}& \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Weakly\\ Positive\end{tabular}}& \multicolumn{2}{c|}{\begin{tabular}[c]{@{}c@{}}Strongly\\ positive\end{tabular}} \\ \hline
\begin{tabular}[c]{@{}c@{}}Very\\ Positive\end{tabular}& \multicolumn{2}{c|}{Positiv}& \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Mostly\\ Positive\end{tabular}} & \multicolumn{2}{c|}{Neutral} & \multicolumn{3}{c|}{\begin{tabular}[c]{@{}c@{}}Mostly \\ Negative\end{tabular}} & \multicolumn{2}{c|}{Negative}& \begin{tabular}[c]{@{}c@{}}Strongly \\ Negative\end{tabular}\\ \hline
\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit&\omit
\end{tabular}
\end{document}
Deixei o conteúdo da tabela como não relacionado à questão, mas os números deveriam estar no modo matemático, $-1$não é -1, eu também usaria \setlength\extrarowheight{2pt}para manter o \hlinelonge do conteúdo da célula.