Cómo dibujar una línea lateral en la tabla (el uso de varias filas excederá el ancho)

Cómo dibujar una línea lateral en la tabla (el uso de varias filas excederá el ancho)
\documentclass{article}
\usepackage{}
\usepackage{makecell, multirow, tabularx}
\begin{document}

\begin{table}[h!]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
    \begin{tabularx}{\textwidth}{X |c |c |c |c |}
    \cline{2-5}
     & Mean & N & Std. Deviation & Std. Error Mean \\
         \hline
    Testing123 Testin123 Testing123 Testin123 & 23\% & 10\% & 279\% & 233\% \\
    \hline
    \end{tabularx}
\caption{Testing123 Testin123Testing123 Testin123}
\end{table}

Resultado: ingrese la descripción de la imagen aquí

había agregado en varias columnas

    \begin{table}[h!]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
    \begin{tabularx}{\textwidth}{X |c |c |c |c |}
    \cline{2-5}
     & Mean & N & Std. Deviation & Std. Error Mean \\
         \hline
    \multicolumn{1}{|c|}{Testing123 Testin123 Testing123 Testin123} & 23\% & 10\% & 279\% & 233\% \\
    \hline
    \end{tabularx}
\caption{Testing123 Testin123Testing123 Testin123}
\end{table}

Resultado:

ingrese la descripción de la imagen aquí

y quería convertir "Testing123 Testin123 Testing123 Testin123" en 2 filas.

Respuesta1

Si observa el código de @Jennifer, verá que la línea vertical izquierda en la primera celda del encabezado (Media) no se alinea con la línea vertical en la siguiente fila. Esto se debe a que las barras verticales ( |) no están colocadas correctamente. Debe configurar a |la derecha de Xla columna en la primera \multicolumnyeliminarel \multicolumncomando de la segunda celda del encabezado. La primera fila dirá:

\multicolumn{1}{X|}{} & Mean & N & Std. Deviation & Std. Error Mean \\

Aquí hay un MWE completo:

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{tabularx, caption}        % Load package caption for better captions
\usepackage{booktabs, ragged2e}       % Use ragged2e to improve ragged text
\setlength\extrarowheight{1pt}        % Both line necessary for decent spacing
\renewcommand{\arraystretch}{1.2}

\begin{document}

\begin{table}[!ht]
\caption{Testing123 Testin123Testing123 Testin123%   % Caption above table
    \label{tab:test123}%                             % Label inside caption
    }
    \begin{tabularx}{\textwidth}{|>{\RaggedRight\arraybackslash}X|c |c |c |c |}
    \cline{2-5}
     \multicolumn{1}{X|}{}   % Right vertical rules in first header cell 
     & Mean                  % Remove `multicolumn` from second header cell 
     & N & Std. Deviation
     & Std. Error Mean \\
     \hline
    Testing123 Testin123 Testing123 Testin123 & 23\% & 10\% & 279\% & 233\% \\
    \hline
    \end{tabularx}
\end{table}

Sin embargo, te sugiero que escribas el tabular de una manera diferente:

  1. Usarpestañaspor mejores reglas
  2. Deshágase de todas las reglas verticales (consulte lamanual de pestañas)
  3. Úselo @{}para deshacerse de los cojinetes del lado izquierdo y derecho.
  4. Establezca las cuatro columnas con figuras de igual ancho definiendo un nuevo tipo de columna
  5. Establecer columnas de figuras alineadas a la derecha
  6. Mover el signo de porcentaje al encabezado

El preámbulo tabular es:

\begin{tabularx}{\textwidth}{@{}M*{4}{N}@{}}

lo que significa:

  1. @{}= retire el soporte lateral a la izquierda de la columna uno, es decir, el pequeño espacio que ve al comienzo de la primera columna
  2. M= establecer una columna de tipo M(que hemos definido usando el comando \newcolumntypeen el preámbulo del documento).
  3. *{4}{N}= significa crear cuatro columnas de tipo N(que hemos definido usando el comando \newcolumntypeen el preámbulo del documento). Es lo mismo que escribir cuatro NNNNen este MWE, pero normalmente es un atajo.
  4. @{}= igual que el punto 1 anterior para la última columna: Retire el cojinete lateral albiende la columna cinco,es decirel pequeño espacio que ves al final de la última columna.

Con suerte, ahora es más comprensible.

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{tabularx, caption}          % Load package caption for decent foramtting and spacing
\usepackage{booktabs, ragged2e}         % Use booktabs rules and get rid of vertical rules,
                                        % ragged2e to improved ragged right and left text
\setlength\extrarowheight{1pt}          % Both line necessary for decent spacing, unless you are using booktabs rules.
\renewcommand{\arraystretch}{1.2}

\newcolumntype{Y}{>{\RaggedRight\arraybackslash\hsize=2\hsize\linewidth=\hsize}X}
\newcolumntype{W}{>{\RaggedLeft\arraybackslash\hsize=0.75\hsize\linewidth=\hsize}X}


\begin{document}
    
\begin{table}[!ht]
\caption{Testing123 Testin123Testing123 Testin123%
    \label{tab:test123}% 
    }
    \begin{tabularx}{\textwidth}{@{}Y*{4}{W}@{}}
    \toprule
     & \small Mean (\%)
     & \small N (\%)& \small Std. Deviation~(\%)
     & \small Std. Error Mean (\%)\\
     \midrule
    Testing123 Testin123 Testing123 Testin123 & 23 & 10 & 279 & 233 \\
    \bottomrule
    \end{tabularx}
\end{table}
\end{document}

Respuesta2

Adjunté una columna múltiple dos veces a la fila del encabezado. Espero que esto sea algo que estés buscando.

\documentclass{article}
\usepackage{}
\usepackage{makecell, multirow, tabularx}
\begin{document}

\begin{table}[h!]
\setlength\extrarowheight{2pt} % for a ever so slightly more open "look"
    \begin{tabularx}{\textwidth}{|X|c |c |c |c |}
    \cline{2-5}
     \multicolumn{1}{l}{}
     & \multicolumn{1}{|l|}{Mean} & N & Std. Deviation & Std. Error Mean \\
         \hline
    Testing123 Testin123 Testing123 Testin123 & 23\% & 10\% & 279\% & 233\% \\
    \hline
    \end{tabularx}
\caption{Testing123 Testin123Testing123 Testin123}
\end{table}


\end{document}

ingrese la descripción de la imagen aquí

información relacionada