Líneas de guiones verticales discontinuas en tabularx, entorno booktabs

Líneas de guiones verticales discontinuas en tabularx, entorno booktabs

Tengo una tabla muy grande que incluye resultados de 4 métodos diferentes y mi supervisor me sugirió usar líneas verticales para separar los métodos para facilitar la lectura. Sin embargo, cuando uso líneas discontinuas verticales, no son continuas y, según tengo entendido, este es un problema muy común en el entorno de booktabs. Generalmente, la solución sugerida es no usar líneas verticales, pero quiero usarlas. ¿Hay algún trabajo alrededor? También estoy abierto a sus sugerencias para mejorar la legibilidad.

Aquí está el ejemplo práctico. Perdón por los nombres de las columnas sin sentido.

\documentclass[journal]{IEEEtran}
\usepackage[utf8]{inputenc}
\usepackage{amsmath} % assumes amsmath package installed
\usepackage{amssymb} 
\usepackage{caption}
\usepackage{tabularx, booktabs}

\usepackage{arydshln}


\begin{document}

\begin{table*}
\caption{a $\rightarrow$ b}
\label{tabAB}
\begin{tabularx}{\textwidth}{@{\extracolsep{\fill}}ccc:cccc:cccc:cccc}
\toprule
 & \multicolumn{2}{c}{\begin{tabular}[c]{@{}c@{}}a \\ b \end{tabular}} & \multicolumn{4}{c}{\begin{tabular}[c]{@{}c@{}}c \\$\downarrow$\\ d \end{tabular}} & \multicolumn{4}{c}{\begin{tabular}[c]{@{}c@{}}e \\ $\downarrow$\\ f \end{tabular}} & \multicolumn{4}{c}{\begin{tabular}[c]{@{}c@{}}g \\ $\downarrow$\\ h \end{tabular}}\\ 
& & & \multicolumn{2}{c}{q} & \multicolumn{2}{c}{w} & \multicolumn{2}{c}{e} & \multicolumn{2}{c}{r} & \multicolumn{2}{c}{t} & \multicolumn{2}{c}{y}\\
\cmidrule(lr){2-15}
 & u & w & \begin{tabular}[c]{@{}c@{}}a\\ b \end{tabular} & \begin{tabular}[c]{@{}c@{}}c.\\ d \end{tabular} & \begin{tabular}[c]{@{}c@{}}e.\\ f \end{tabular} & \begin{tabular}[c]{@{}c@{}}h.\\ g \end{tabular} & \begin{tabular}[c]{@{}c@{}}j.\\ j \end{tabular}  & \begin{tabular}[c]{@{}c@{}}k.\\ t \end{tabular} & \begin{tabular}[c]{@{}c@{}}y.\\ v \end{tabular} & \begin{tabular}[c]{@{}c@{}}z.\\ w \end{tabular} & \begin{tabular}[c]{@{}c@{}}q.\\ w \end{tabular} & \begin{tabular}[c]{@{}c@{}}a.\\ t \end{tabular} & \begin{tabular}[c]{@{}c@{}}y.\\ u \end{tabular} & \begin{tabular}[c]{@{}c@{}}z.\\ x \end{tabular} \\ \hline\\
\begin{tabular}[c]{@{}c@{}}q\\ a No \\\ t \end{tabular} & & \multicolumn{13}{c}{err(\%)} \\
\cmidrule(lr){2-15}
1        & 1.33  & 1.10 & 2.43 & 1.92 & 1.57 & 1.79 & 1.58  & 1.57 & 1.19 & 1.77 & 1.42 & 1.41 & 1.89 & \textbf{1.52} \\
2        & 2.48  & 2.53 & 2.60 & 2.31 & 2.82 & 2.80 & 2.84  & 2.82 & 2.50 & 2.79 & 2.60 & 2.59 & 2.13 & \textbf{2.51} \\
3        & 2.94  & 2.75 & 2.90 & 2.46 & 4.82 & 3.48 & 2.83  & 4.82 & 2.30 & 2.45 & 3.78 & 2.77 & 2.41 & \textbf{2.67} \\
4        & 3.36  & 3.53 & 3.45 & 0.54 & 9.69 & 2.34 & 2.70  & 2.68 & 2.17 & \textbf{2.28} & 3.53 & 3.52 & 2.03 & 2.30 \\
5        & \textbf{2.38}  & 2.65 & 3.60 & 2.32 & 2.31 & 2.10 & 2.34  & 2.31 & 4.92 & 2.05 & 2.81 & 2.78 & 2.08 & 2.33 \\\\
Overall        & 2.90  & 2.11 &  2.80 & 2.11 & 2.84 & 2.30 & 3.86  & 3.84 & 2.02 & 2.27 & 2.23 & 3.21 & 2.51 & \textbf{2.87} \\\\
\begin{tabular}[c]{@{}c@{}}t\\ w \end{tabular} & \textbf{1.55} & 1.88 & 2.09 & 1.59 & 1.15 & 1.01 & 1.15 & 1.15 & 1.64 & 1.98 & 1.85 & 1.85 & 1.24 & 1.68 \\
\bottomrule

\end{tabularx}
\end{table*}

\end{document}

descontado.

Las líneas discontinuas deben continuar desde la primera fila hasta el final.

Respuesta1

Aquí hay una solución que elimina la necesidad de líneas verticales (discontinuas o continuas). Lo hace proporcionando más estructura, a través de \cmidruledirectivas colocadas juiciosamente, en el material del encabezado. También cambia de un entorno tabularxa otro tabular*; Se indica hacer este cambio porque no parece haber ninguna necesidad de salto de línea automático dentro de las celdas.

ingrese la descripción de la imagen aquí

\documentclass[journal]{IEEEtran}
\usepackage[utf8]{inputenc}
\usepackage{amsmath,amssymb,caption,booktabs}
%% Handy shortcut macro:
\newcommand\mytab[1]{\begin{tabular}[c]{@{}c@{}} #1 \end{tabular}}

\begin{document}

\begin{table*}
\caption{a$\to$b} \label{tabAB}
\setlength\tabcolsep{0pt} % let LaTeX figure out intecol. whitespace
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}} *{15}{c} }
\toprule
 \mytab{q\\a No\\t} 
 & \multicolumn{2}{c}{\mytab{a\\$\downarrow$\\ b}} 
 & \multicolumn{4}{c}{\mytab{c\\$\downarrow$\\ d}}  
 & \multicolumn{4}{c}{\mytab{e\\$\downarrow$\\ f}}
 & \multicolumn{4}{c}{\mytab{g\\$\downarrow$\\ h}}\\ 
\cmidrule{4-7} \cmidrule{8-11} \cmidrule{12-15} 
& & & \multicolumn{2}{c}{q} & \multicolumn{2}{c}{w} 
    & \multicolumn{2}{c}{e} & \multicolumn{2}{c}{r} 
    & \multicolumn{2}{c}{t} & \multicolumn{2}{c}{y}\\
\cmidrule{2-3} \cmidrule{4-5} \cmidrule{6-7} \cmidrule{8-9} 
\cmidrule{10-11} \cmidrule{12-13} \cmidrule{14-15} 
 & u & w 
 & \mytab{a\\b} & \mytab{c.\\d} & \mytab{e.\\f} & \mytab{h.\\g} 
 & \mytab{j.\\j}& \mytab{k.\\t} & \mytab{y.\\v} & \mytab{z.\\w} 
 & \mytab{q.\\w}& \mytab{a.\\t} & \mytab{y.\\u} & \mytab{z.\\x}\\
\midrule
 & \multicolumn{14}{c}{err(\%)} \\
\cmidrule{2-15}
1  & 1.33  & 1.10 & 2.43 & 1.92 & 1.57 & 1.79 & 1.58  & 1.57 
   & 1.19 & 1.77 & 1.42 & 1.41 & 1.89 & \textbf{1.52} \\
2  & 2.48  & 2.53 & 2.60 & 2.31 & 2.82 & 2.80 & 2.84  & 2.82 
   & 2.50 & 2.79 & 2.60 & 2.59 & 2.13 & \textbf{2.51} \\
3  & 2.94  & 2.75 & 2.90 & 2.46 & 4.82 & 3.48 & 2.83  & 4.82 
   & 2.30 & 2.45 & 3.78 & 2.77 & 2.41 & \textbf{2.67} \\
4  & 3.36  & 3.53 & 3.45 & 0.54 & 9.69 & 2.34 & 2.70  & 2.68 
   & 2.17 & \textbf{2.28} & 3.53 & 3.52 & 2.03 & 2.30 \\
5  & \textbf{2.38}  & 2.65 & 3.60 & 2.32 & 2.31 & 2.10 & 2.34  
   & 2.31 & 4.92 & 2.05 & 2.81 & 2.78 & 2.08 & 2.33 \\[1ex]
Overall  & 2.90  & 2.11 &  2.80 & 2.11 & 2.84 & 2.30 & 3.86  
   & 3.84 & 2.02 & 2.27 & 2.23 & 3.21 & 2.51 & \textbf{2.87} \\[1ex]
\mytab{t\\w} & \textbf{1.55} & 1.88 & 2.09 & 1.59 & 1.15 & 1.01 & 1.15 
   & 1.15 & 1.64 & 1.98 & 1.85 & 1.85 & 1.24 & 1.68 \\
\bottomrule
\end{tabular*}
\end{table*}

\end{document}

información relacionada