¿Cómo hago una tabla usando \begin{table*} en LaTeX?

La tabla I que estoy tratando de crear es un poco complicado y debería verse así:

Ingrese la descripción de la imagen aquí

Lo siento por las líneas torcidas de la imagen.

Hasta ahora, solo he podido hacer algo simple:

\begin{table*}[t] \centering \begin{tabular}{ *1c | *3c | *3c | *2c | } & & & & & & & & & & & & \\ % Keep adding as many numbers of rows, etc. \end{tabular} \end{table} 

Con este código, tengo las siguientes columnas: Nombre, Texto 1, Texto 2, Texto 3, Texto 4, Texto 5, Texto 6, Texto 7 y Texto 8. Y puedo agregar tantas filas como quiera en la mesa.

No tengo las etiquetas de Categoría 1, Categoría 2 y Categoría 3 en el lado izquierdo y superior de la imagen.

Comentarios

Respuesta

Este es un punto de partida . El espaciado puede y debe ajustarse, pero esto solo tiene sentido una vez que haya llenado la tabla.

ingrese la descripción de la imagen aquí

\documentclass{article} \usepackage{rotating} \newcommand\sw[1]{\begin{sideways}#1\end{sideways}} \usepackage{multirow} \begin{document} \begin{tabular}{r|l|*8{c|}} \multicolumn{2}{c|}{} & \multicolumn{3}{c|}{Category 1} & \multicolumn{3}{c|}{Category 2} & \multicolumn{2}{c|}{Category 3} \\\cline{3-10} & Name & \sw{Text1} & \sw{Text2} & \sw{Text3} & \sw{Text4} & \sw{Text5} & \sw{Text6} & \sw{Text7} & \sw{Text8} \\\hline \multirow{4}{*}{\sw{\small Category 1}} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\hline \multirow{4}{*}{\sw{\small Category 2}} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\cline{2-10} & & & & & & & & & \\\hline \end{tabular} \end{document} 

Editar: Cómo aumentar el número de columnas en la Categoría 3 de 2 a 6, como se pide en los comentarios:

  • Cambie la línea que comienza la tabla a

    \begin{tabular}{r|l|*{12}{c|}} 
  • Cambie \multicolumn del título a

    \multicolumn{6}{c|}{Category 3} 
  • Cambie los comandos \cline a \cline{3-14} y \cline{2-14}, respectivamente.

  • Debe agregar columnas en todas las filas, incluso si permanecen vacías, para tener líneas verticales. Esto significa agregar

     & \sw{Text9} & \sw{Text10} & \sw{Text11} & \sw{Text12} 

para los encabezados de columna y extender las otras líneas a

 & & & & & & & & & & & & & 

Comentarios

  • Todavía estoy tratando de entender esto. ¿Podría dar un consejo sobre cómo aumentar el número de columnas de 2 a 6 en la categoría 3 (es decir, tengo – Texto 7,8,9,10,11,12) También, ¿cómo ajusto el espaciado? /
  • Ver la edición de mi respuesta. Definitivamente deberías leer algún tutorial sobre cómo funcionan las tablas en LaTeX, de lo contrario tienes que preguntar con cada cambio que quieras hacer. En cuanto al espaciado, pospóngalo hasta que haya terminado con la mesa; luego pregunte de nuevo si ‘ no le gusta algo en particular.
  • Así que solo tengo un problema de espaciado. ¿Cómo hago esto bien? Se ve así: drive.google.com/open?id=0B6unL1yNveR6eGlNUXZjaUdNVzA Sí, revisé la documentación y trabajaré en tablas.
  • Básicamente, el texto de la categoría 1 y la categoría 2 están colisionando en el lado izquierdo de la tabla y la sexta columna es un poco más ancha por defecto.
  • Lo descubrí. No estaba usando el número correcto en la opción de filas múltiples, pero la sexta columna es aún más ancha.

Respuesta

Es posible que prefiera utilizar las pestañas de libros.

El resultado del siguiente código

\documentclass{standalone} \usepackage{booktabs} \usepackage{rotating} \newcommand\sw[1]{\small\begin{sideways}#1 \end{sideways}} \usepackage{multirow} \begin{document} \def\arraystretch{1.25} \begin{tabular}{rl*8{c}} \toprule \multicolumn{2}{c}{} & \multicolumn{3}{c}{Category 1} & \multicolumn{3}{c}{Category 2} & \multicolumn{2}{c}{Category 3} \\ & Name & \sw{Text1} & \sw{Text2} & \sw{Text3} & \sw{Text4} & \sw{Text5} & \sw{Text6} & \sw{Text7} & \sw{Text8} \\ \midrule \multirow{4}{*}{\sw{Category 1}} & a & A & & & & & & & \\ & b & B & & & & & & & \\ & c & C & & & & & & & \\ & d & D & & & & & & & \\ \multirow{4}{*}{\sw{Category 2}} & a & A & & & & & & & \\ & b & B & & & & & & & \\ & c & C & & & & & & & \\ & d & D & & & & & & & \\ \bottomrule \end{tabular} \end{document} 

Respuesta

Puede usar \rotatebox{angle}{text} para rotar texto (requiere el paquete rotating ).

Puede utilizar \multicolumn{num_cols}{alignment}{contents} para crear celdas que abarquen varios columnas.

Puede usar \cline{from-to} para reglas horizontales que no abarcar todas las columnas.

Puede usar \multirow{num_rows}{width}{contents} para crear celdas que abarquen varias filas (requiere el paquete multirow ) .

El argumento del tabular *{11}{c|} es un atajo para once veces el c|, permitido por el array paquete .

\documentclass{article} \usepackage{array} \usepackage{rotating}% https://en.wikibooks.org/wiki/LaTeX/Rotations \usepackage{multirow}% https://tex.stackexchange.com/a/73285/120953 \newcommand{\cat}[1]{#1} \newcommand{\thead}[1]{#1} \newcommand{\catver}[1]{\rotatebox{90}{\cat{#1}}} \newcommand{\theadver}[1]{\rotatebox{90}{\thead{#1}\hspace{.7em}}} \begin{document} \begin{tabular}{*{11}{c|}} \multicolumn{2}{l|}{} & \multicolumn{3}{l|}{\cat{Category~1}} & \multicolumn{3}{l|}{\cat{Category~2}} & \multicolumn{3}{l|}{\cat{Category~3}} % https://tex.stackexchange.com/a/8555/120953 \\\cline{3-11} & \thead{Name} & \theadver{Text~1} & \theadver{Text~2} & \theadver{Text~3} & \theadver{Text~4} & \theadver{Text~5} & \theadver{Text~6} & \theadver{Text~7} & \theadver{Text~8} & \theadver{Text~9} \\\hline \multirow{5}{*}{\catver{Category~1}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \multirow{5}{*}{\catver{Category~2}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \multirow{5}{*}{\catver{Category~3}} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\cline{2-11} &&&&&&&&&&\\\hline \end{tabular} \end{document} 

Además, puede estar interesado en esta pregunta sobre el centrado vertical del contenido de una celda de varias filas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *