Tengo la siguiente tabla:
¿Alguien con talento para el diseño tiene una buena idea de cómo puedo hacerlo menos feo? Idealmente, quiero que los lectores vean inmediatamente que la tabla consta de dos partes ("largo plazo" y "corto plazo") y que cada parte tiene sus propios números. Intenté usar una línea entre las dos secciones, pero realmente no parecía "profesional"...
Agradecería cualquier consejo o sugerencia, ¡gracias!
\documentclass[12pt]{article}
\usepackage{setspace,amsmath,graphicx,float}
\usepackage[english]{babel}
\usepackage[natbibapa]{apacite}
\usepackage{boldline}
\usepackage{array}
\usepackage{ragged2e}
\usepackage{url}
\usepackage{fancyhdr}
\usepackage{changepage}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{newtxtext, newtxmath}
\usepackage{eurosym}
\usepackage{nameref}
\usepackage[nottoc]{tocbibind}
\usepackage[bottom]{footmisc}
\edef\restoreparindent{\parindent=\the\parindent\relax}
\usepackage{parskip}
\usepackage{enumitem}
\usepackage{tabularx}
\usepackage{threeparttable}
\usepackage{color}
\usepackage{tikz}
\usetikzlibrary{arrows, arrows.meta, calc, positioning, quotes, shapes, patterns}
\usepackage[margin=1cm]{caption}
\captionsetup[figure]{skip=18pt}
\usepackage[labelfont=bf]{caption}
\usepackage{etoolbox}
\usepackage{multirow}
\usepackage{booktabs}
\usepackage{amssymb}
\usepackage{nccmath}
\begin{document}
\begin{table}
\caption[Comparison of critical diversion ratios and switching levels (A)]
{Comparison of critical diversion ratios and switching levels (A).}
\label{Comparison1}
\centering
\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}} c c c c}
\toprule
& \multicolumn{2}{c}{5\% Critical Price Increase} & \multicolumn{2}{c}{10\% Critical Price Increase} \\
\cmidrule(r){2-3} \cmidrule(lr){4-5}
& \vtop{\hbox{\strut One-sided}\hbox{\strut calculation}} & \vtop{\hbox{\strut Two-sided}\hbox{\strut calculation}} & \vtop{\hbox{\strut One-sided}\hbox{\strut calculation}} & \vtop{\hbox{\strut Two-sided}\hbox{\strut calculation}} \\
\midrule
Long-run: & & & & \\
Critical diversion ratios & 8.7\% & 5.4\% & 16\% & 13.5\% \\[1ex]
Critical switching levels & 16.5\% & 11.1\% & 30.4\% & 27.5\% \\[1ex]
Short-run: & & & & \\
Critical diversion ratios & 8.7\% & 5.4\% & 16\% & 13.5\% \\[1ex]
Critical switching levels & 16.5\% & 11.1\% & 30.4\% & 27.5\% \\
\bottomrule
\end{tabular*}
\end{table}
\end{document}
Respuesta1
Hasta ahora tu mesa no es tan fea... pero yo rediseñaría tu mesa para:
Sin embargo, la respuesta sólo puede basarse en opiniones: diferentes personas, diferentes gustos :)
Del preámbulo de su MWE conservo solo los paquetes relacionados con la tabla y agrego siunitx
(verDavid Carlislecomentario):
\documentclass[12pt]{article}
\usepackage[left=3cm,top=3.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{newtxtext, newtxmath}
\usepackage[margin=1cm, labelfont=bf]{caption}
\usepackage{array, booktabs, multirow, tabularx, threeparttable}% <-- collected here
\newcommand\mcx[1]{\multicolumn{1}{X}{\centering#1}}% <-- added
\usepackage{siunitx}% <-- added
\begin{document}
\begin{table}
\caption[Comparison of critical diversion ratios and switching levels (A)]
{Comparison of critical diversion ratios and switching levels (A).}
\label{Comparison1}
\centering
\begin{tabularx}{\textwidth}{l
*{4}{S[table-format=2.1,
table-space-text-post=\si{\%},
table-align-text-post=false]<{\,\%}}
}
\toprule
& \multicolumn{2}{c}{\SI{5}{\%} Critical Price Increase}
& \multicolumn{2}{c}{\SI{10}{\%} Critical Price Increase} \\
\cmidrule(r){2-3} \cmidrule(lr){4-5}
\multicolumn{1}{r}{Calculations:}
& \mcx{One-sided} & \mcx{Two-sided} & \mcx{One-sided} & \mcx{Two-sided} \\
\midrule
\emph{Long-run:} & \multicolumn{4}{c}{} \\
Critical diversion ratios & 8.7 & 5.4 & 16 & 13.5 \cr
Critical switching levels & 16.5 & 11.1 & 30.4 & 27.5 \cr
\addlinespace
\emph{Short-run:} & \multicolumn{4}{c}{} \\
Critical diversion ratios & 8.7 & 5.4 & 16 & 13.5 \cr
Critical switching levels & 16.5 & 11.1 & 30.4 & 27.5 \cr
\bottomrule
\end{tabularx}
\end{table}
\end{document}
Nota:
para alinear números se utiliza
S
el tipo de columna desdesiunitx
donde- con opciones
table-format
(se reservan dos espacios de caracteres para números enteros y uno para decimales - con la opción
table-space-text-post=\si{\%}
hay un espacio reservado para%
el cual siguen los números en las columnas - con opción
table-align-text-post=false
se ordena que el signo de porcentaje siga imidiatel hasta el último dígito del número (y no al espacio reservado para números) - con
<{\,\%}
es a cada celda agregada%. Consequently, the cell, where it shouldn't appear had to be
\multicolumn{...}{..}}
- con opciones
el comando
\mcx{...}
se define por dos razones:- para código de tabla más corto (menos importante)
- para reservar el mismo ancho para todas las columnas con número. Con esto, la suma de los anchos de dos columnas es mayor que el ancho natural
\multicolumn{2}{c}{\SI{10}{\%} Critical Price Increase}
y, en consecuencia, las columnas bajo este encabezado conservan el mismo ancho.
- El paquete añadido
siunitx
es muy útil y complejo, no sólo para diseñar una hermosa tabla, sino también, en primer lugar, para la escritura correcta de unidades, formación de números, incertidumbre de números, etc. Vale la pena leer su documentación y ver cómo puede mejorar su escritura. .