Por favor me gustaría hacer una tabla como esta pero tengo algún problema para hacer un texto inclinado y centrado en las celdas.
\documentclass[11pt]{book}
\usepackage{geometry}
\usepackage{array,caption,color}
\usepackage{graphicx,rotating,multirow}
\usepackage[latin1]{inputenc}
\begin{document}
\begin{table}[htbp]
\centering\tiny
\caption{Add caption}
\begin{tabular}{|rp{1 pt}|l|l|p{3cm}|l|}
\cline{3-6} \multicolumn{2}{c|}{\multirow{2}[4]{*}{}} & \multicolumn{1}{c|}{\multirow{2}[4]{*}{\textbf{Variable}}} & \multicolumn{1}{c|}{\multirow{2}[4]{*}{\textbf{Description}}} & \multicolumn{2}{c|}{\textbf{Modalité}} \\
\cline{5-6} \multicolumn{2}{c|}{} & \multicolumn{1}{c|}{} & \multicolumn{1}{c|}{} & \textbf{Unité ou codage} & \textbf{Nbre} \\
\hline
\multicolumn{1}{|c}{\multirow{4}[8]{*}{\begin{sideways}\textbf{Les facteurs}\end{sideways}}} & \multicolumn{1}{c|}{\multirow{4}[8]{*}{\begin{sideways}\textbf{démographique}\end{sideways}}} & Sex & Sexe & 1 = Masculin; 2=Féminin & 2 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Agemer & \multicolumn{1}{l|}{Âge de la mère à la naissance } & 1 = Moins de 20 ans \par
2 = 20-34 ans \par
3 = 35 et plus & 3 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Gemeli & Gémellité & 1 = Singleton \par
2 = Jumeaux \par
3 = Triplé & 3 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Morta & Mortalité des enfants & 1= Décédé av. 5 ans ; 2 = Vivant ap. 5ans & 2 \\
\hline
\multicolumn{6}{c}{} \\
\hline
\multicolumn{2}{|c|}{\multirow{5}[10]{*}{\begin{sideways}\textbf{Facteurs Socio-économique}\end{sideways}}} & Milresi & Milieu de résidence & 1 = Urbain ; 2 = Rural & 2 \\
\cline{3-3}\cline{5-6} \multicolumn{2}{|c|}{} & Appeau & Type d'approvisionnement en eau & 1 = Eau potable ; 2 = Eau non conseillé & 2 \\
\cline{3-6} \multicolumn{2}{|c|}{} & Instrumer & Niveau d'instruction de la mère & 1 = Aucun \par
2 = Primaire \par
3 = Sécondaire et plus & 3 \\
\cline{3-6} \multicolumn{2}{|c|}{} & Ehtnie & Ethnie & 1 = Bamilike/Bamoun \par
2 = Des regions cotier \par
3 = Du grand nord \par
4 = Etranger et autres & 4 \\
\cline{3-6} \multicolumn{2}{|c|}{} & Religion & Réligion & 1 = Catholic
2 = Protestant \par
3 = Moslem \par
4 = Other & 4 \\
\hline
\multicolumn{6}{c}{} \\% \bigstrut[t]\\
\multicolumn{1}{r}{} & \multicolumn{1}{r}{} & \multicolumn{1}{r}{} & \multicolumn{1}{r}{} & \multicolumn{1}{r}{} & \multicolumn{1}{c}{} \\ %\bigstrut[b]\\
\hline
\multicolumn{1}{|c}{\multirow{4}[8]{*}{\begin{sideways}\textbf{Les facteurs
liés à }\end{sideways}}} & \multicolumn{1}{c|}{\multirow{4}[8]{*}{\begin{sideways}\textbf{ l'attitude la mère}\end{sideways}}} & Consulpre & Consultations prénatales & 1 = Aucune visite \par
2 = Moins de dix visites \par
3 = dix visite et plus & 3 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Lieuaccou & Lieu d'accouchement & 1 = Dans un hôpital ou centre de santé
2 = A domicile & 2 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Vacci & N'a jamais été vacciner & 1 = Oui ; 2 = Non & 2 \\
\cline{3-6} \multicolumn{1}{|c}{} & \multicolumn{1}{c|}{} & Poidsnass & Poids à la naissance & 1 = [0-3[ ; \par 2 = [3-6[ ; \par 3 = [6-8[ ; \par 4 = NSP & 4 \\
\hline
\end{tabular}%
\label{tab:addlabel}%
\end{table}%
\end{document}
Pero al final me gustaría obtener algo como esto:
Gracias por ayudarme!!
Respuesta1
Aquí está la solución, con los paquetes makecell
y enumitem
. El primero permite saltos de línea en las celdas y un formato común, a través de los comandos \thead
, makecell
y . Con este último, definí un nuevo entorno similar a una enumeración, con parámetros adaptados para su uso en celdas de la tabla, luego un nuevo tipo de columna, con celdas dentro de este nuevo entorno de lista.rothead
\rotcell
E
Finalmente, cambié algunas opciones de formato de tabla para adaptarlas a mi gusto personal.
\documentclass[11pt]{book}
\usepackage{geometry}
\usepackage{array,caption,color}
\usepackage{graphicx,rotating,multirow}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{ragged2e}
\usepackage{enumitem}
\newlist{tabenum}{enumerate}{1}
\setlist[tabenum]{label={\arabic*${}={}$}, labelsep=0pt, wide=0pt, leftmargin=1.85em,nosep, itemsep=1pt}%
\newcolumntype{E}{>{\RaggedRight\tabenum\item[]}m{3.2cm}<{\endtabenum\vspace*{-2ex}}}
\usepackage{makecell}
\renewcommand\theadfont{\bfseries}
\renewcommand\cellset{\bfseries}
\renewcommand\cellalign{lt}
\settowidth\rotheadsize{\theadfont{Facteurs Socio-économiques}}
\renewcommand\cellalign{lc}
\begin{document}
\begin{table}[!htbp]
\centering\setlength\tabcolsep{5pt}
\sffamily\scriptsize
\caption{Add caption}
\begin{tabular}{r| >{\ttfamily}l|l|E|c|}%p{15 pt}
\cline{2-5}
& \multirowthead{4}[4pt]{Variable} & \multirowthead{4}[4pt]{Description} & \multicolumn{2}{c|}{\thead{Modalité}} \\
\cline{4-5} \multicolumn{1}{c|}{} & \multicolumn{1}{c|}{} & \multicolumn{1}{c|}{} & \thead{Unité ou codage} & \thead{Nbre} \\
\cline{2-5}
& Sex & Sexe & \item Masculin \item Féminin & 2 \\
\cline{2-5}
& Agemer & \multicolumn{1}{l|}{Âge de la mère à la naissance } & \item Moins de 20 ans \item 20-34 ans \item 35 et plus & 3 \\
\cline{2-5}
\multicolumn{1}{c|}{} & Gemeli & Gémellité & \item Singleton \item Jumeaux \item Triplés & 3 \\
\cline{2-5}
\multirow{-11}{*}[17ex]{\rotcell{Facteurs démographiques}}
& Morta & Mortalité des enfants & \item Décédé av. 5 ans \item Vivant ap. 5ans & 2 \\
\cline{2-5}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\multicolumn{5}{c}{} \\
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\cline{2-5}
& Milresi & Milieu de résidence & \item Urbain \item Rural & 2 \\
\cline{2-5}
& Appeau & Type d'approvisionnement en eau & \item Eau potable \item Eau non conseillée & 2 \\
\cline{2-5}
& Instrumer & Niveau d'instruction de la mère & \item Aucun \item Primaire \item Secondaire et plus & 3 \\
\cline{2-5}
& Ethnie & Ethnie & \item Bamiléké/Bamoun \ \item Des régions côtières \item Du grand nord \item Étrangers et autres & 4 \\
\cline{2-5}
\multirow{-15}{*}[9ex]{\rotcell{Facteurs socio-économiques}} & Religion & Religion & \item Catholique \item Protestant \item Musulman \item Autre & 4 \\
\cline{2-5}
%%%%%%%%%%%%%%%%%%%%%%ùùù%%%%%
\multicolumn{5}{c}{} \\
%%%%%%%%%%%%%%%%%%%%%%ùùù%%%%%
\cline{2-5}
& Consulpre & Consultations prénatales & \item Aucune visite \item Moins de dix visites \item Dix visite et plus & 3 \\
\cline{2-5}
& Lieuaccou & Lieu d'accouchement & \item Dans un hôpital ou centre de santé \item À domicile & 2 \\
\cline{2-5}
& Vacci & N'a jamais été vacciné & \item Oui \item Non & 2 \\
\cline{2-5}
\multirow{-13}{*}[13ex]{\rotcell{ Facteurs liés \\à l'attitude de la mère}}
& Poidsnass & Poids à la naissance & \item{} [0-3[ \item{} [3-6[ \item{} [6-8[ \item NSP & 4 \\
\cline{2-5}
\end{tabular}%
\label{tab:addlabel}%
\end{table}%
\end{document}
Respuesta2
Le sugiero que elimine por completo el contenido rotado y pruebe algo como esto (basado en la solución de Bernard):
\documentclass[11pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{lmodern,ragged2e}
\usepackage{enumitem,array,booktabs,caption}
\newlist{tabenum}{enumerate}{1}
\setlist[tabenum]{label={\arabic*${}={}$},
labelsep=0pt, wide=0pt, leftmargin=1.85em, nosep}
\newcolumntype{E}{%
>{\RaggedRight\tabenum\item[]\vspace{-1\baselineskip}}%
p{3.2cm}%
<{\endtabenum\vspace*{-1\baselineskip}}}
\begin{document}
\begin{table}[tbp]
\centering\sffamily\scriptsize
\caption{Add caption}
\begin{tabular}{@{}>{\ttfamily}llEc@{}}
\toprule
& \multicolumn{3}{l}{Facteurs démographiques} \\\cmidrule(r){1-1}\cmidrule(l){2-4}
\multicolumn{1}{@{}l}{Variable} & Description & \multicolumn{2}{l}{Modalité} \\\cmidrule(l){3-4}
&& \multicolumn{1}{l}{Unité ou codage} & \multicolumn{1}{l}{Nbre}\\
\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(lr){3-3}\cmidrule(l){4-4}
%%
Sex & Sexe & \item Masculin \item Féminin & 2 \\\addlinespace
Agemer & Âge de la mère à la naissance
& \item Moins de 20 ans \item 20-34 ans \item 35 et plus & 3 \\\addlinespace
Gemeli & Gémellité & \item Singleton \item Jumeaux \item Triplés & 3 \\\addlinespace
Morta & Mortalité des enfants & \item Décédé av. 5 ans \item Vivant ap. 5ans & 2 \\
\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(lr){3-3}\cmidrule(l){4-4}
%%
& \multicolumn{3}{l}{Facteurs socio-économiques}\\\cmidrule(r){1-1}\cmidrule(l){2-4}
Milresi & Milieu de résidence & \item Urbain \item Rural & 2\\\addlinespace
Appeau & Type d'approvisionnement en eau
& \item Eau potable \item Eau non conseillée & 2 \\\addlinespace
Instrumer & Niveau d'instruction de la mère
& \item Aucun \item Primaire \item Secondaire et plus & 3 \\\addlinespace
Ethnie & Ethnie & \item Bamiléké/Bamoun \item Des régions côtières
\item Du grand nord \item Étrangers et autres & 4 \\\addlinespace
Religion & Religion
& \item Catholique \item Protestant \item Musulman \item Autre & 4 \\
\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(lr){3-3}\cmidrule(l){4-4}
%%
& \multicolumn{3}{l}{Facteurs liés à l'attitude de la mère} \\
\cmidrule(r){1-1}\cmidrule(l){2-4}
Consulpre & Consultations prénatales & \item Aucune visite
\item Moins de dix visites \item Dix visite et plus & 3 \\\addlinespace
Lieuaccou & Lieu d'accouchement & \item Dans un hôpital
ou centre de santé \item À domicile & 2 \\\addlinespace
Vacci & N'a jamais été vacciné & \item Oui \item Non & 2 \\\addlinespace
Poidsnass & Poids à la naissance & \item{} [0-3[ \item{} [3-6[
\item{} [6-8[ \item NSP & 4 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}