Problema con \tabular \tabularx y \multicolumn

Problema con \tabular \tabularx y \multicolumn

Estoy intentando escribir la siguiente tabla "gótica" pero tengo muchos problemas con el espaciado y el tamaño del texto distribuidos equitativamente.

Intento lo siguiente con tabular:

    \begin{table}
        \begin{center}
            \begin{tabular*}{\textwidth}{p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}p{0.2\textwidth}}
                \hline \hline 
                \rule[-1ex]{0pt}{4ex} \multirow{6}{*}{\includegraphics[width=20mm]{./Muscles/biceps.jpg}} & \bf{Origin} & \multicolumn{3}{l}{Short head: tip of coracoid process of scapula; Long head: supraglenoid tubercle of scapula}\\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Insertion} & \multicolumn{3}{l}{Tuberosity of radius and fascia of forearm via bicipital aponeurosis} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Action} & \multicolumn{3}{l}{Supinates forearm and, when it is supine, flexes forearm} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Innervation} & \multicolumn{3}{l}{Musculocutaneous nerve (C5 and C6 ) (C5, C6)} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & $F^{max}_{iso}$ & $\alpha$ & $l^{CE}_{opt}$ & $l^{T}_{sclack}$ \\
                \rule[-1ex]{0pt}{4ex} & [N] & [deg] & [m] & [m] \\
                \hline \hline
            \end{tabular*}
            \caption{Threshold and saturation values for the experimental subject.}
            \label{tabpar2}
        \end{center}
    \end{table}

Con este código obtengo lo siguiente, donde el error es que la línea no se rompe al final: resultado con tabular

Por otro lado, si pruebo el siguiente código, los saltos de línea y las últimas columnas están distribuidas uniformemente, pero multicolumna no funciona:

    \begin{table}
        \begin{center}
            \begin{tabularx}{\textwidth}{clXXX}
                \hline \hline 
                \rule[-1ex]{0pt}{4ex} \multirow{6}{*}{\includegraphics[width=20mm]{./Muscles/biceps.jpg}} & \bf{Origin} & \multicolumn{3}{X}{Short head: tip of coracoid process of scapula; Long head: supraglenoid tubercle of scapula}\\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Insertion} & \multicolumn{3}{X}{Tuberosity of radius and fascia of forearm via bicipital aponeurosis} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Action} & \multicolumn{3}{X}{Supinates forearm and, when it is supine, flexes forearm} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & \bf{Innervation} & \multicolumn{3}{X}{Musculocutaneous nerve (C5 and C6 ) (C5, C6)} \\
                \cline{2-5} \rule[-1ex]{0pt}{4ex} & $F^{max}_{iso}$ & $\alpha$ & $l^{CE}_{opt}$ & $l^{T}_{sclack}$ \\
                \rule[-1ex]{0pt}{4ex} & [N] & [deg] & [m] & [m] \\
                \hline \hline
            \end{tabularx}
            \caption{Threshold and saturation values for the experimental subject.}
            \label{tabpar2}
        \end{center}
    \end{table}

Y este es el resultado: Resultado con X tabular

¿Hay alguna solución para arreglar esto????

Muchas gracias

Respuesta1

El truco consiste básicamente en utilizar

\multicolumn{3}{>{\hsize=3\hsize}X}

con un pequeño ajuste. Definiría un nuevo entorno para este tipo de tabla, con los datos de la imagen como argumento. La imagen en sí se coloca mediante un \muscleimagecomando fijo para evitar códigos complicados tanto como sea posible.

\documentclass{article}
\usepackage[demo]{graphicx} % demo is just for the example
\usepackage{tabularx,booktabs,amsmath,adjustbox}

\newcommand{\muscleimage}{}
\newenvironment{muscle}[2][]
 {%
  \renewcommand{\muscleimage}{%
    \adjustbox{valign=t,set depth=0pt}{\includegraphics[#1]{#2}}%
  }%
  \tabularx{\textwidth}{clXXX}
 }
 {%
  \endtabularx
 }
\newcommand{\fulltable}[1]{%
  \multicolumn{3}{>{\hsize=\dimexpr3\hsize+4\tabcolsep\raggedright\arraybackslash}X}{#1}%
}

\begin{document}

\begin{table}
\centering
\begin{muscle}[height=40mm,width=20mm]{./Muscles/biceps.jpg}
\toprule
\muscleimage
& \textbf{Origin}
& \fulltable{
    Short head: tip of coracoid process of scapula; Long head: supraglenoid tubercle of scapula
  } \\
\cmidrule{2-5}
& \textbf{Insertion}
& \fulltable{
    Tuberosity of radius and fascia of forearm via bicipital aponeurosis
  } \\
\cmidrule{2-5}
& \textbf{Action}
& \fulltable{
    Supinates forearm and, when it is supine, flexes forearm
  } \\
\cmidrule{2-5}
& \textbf{Innervation}
& \fulltable{
    Musculocutaneous nerve (C5 and C6 ) (C5, C6)
  } \\
\cmidrule{2-5}
& $F^{\textup{max}}_{\textup{iso}}$
& $\alpha$ & $l^{\textup{CE}}_{\textup{opt}}$
& $l^{T}_{\textup{sclack}}$ \\
& [N] & [deg] & [m] & [m] \\
\bottomrule
\end{muscle}
\caption{Threshold and saturation values for the experimental subject.}
\label{tabpar2}
\end{table}

\end{document}

ingrese la descripción de la imagen aquí

Respuesta2

Aquí hay una solución con tabularxy booktabs. Hice las últimas tres Xcolumnas y definí un nuevo Ytipo de columna, que se comporta como X, pero tres veces más ancha, para usar en el archivo multicolumn{3}. No hay necesidad de reglas verticales invisibles: se reemplazan en el preámbulo conad hocvalores de \aboverulesepy \belowrulesep. El multirowcomando puede requerir otro ajuste para centrarse verticalmente, dependiendo de la imagen real.

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[showframe, nomarginpar]{geometry}
\usepackage{multirow}
\usepackage{mathtools}
\usepackage{array, caption, tabularx, booktabs}
\usepackage[demo]{graphicx}

\setlength{\aboverulesep}{1ex}
\setlength{\belowrulesep}{1.5ex}
\newcolumntype{Y}{{>{\hsize=3\hsize}X}}

\begin{document}
\begin{table}
    \centering
        \begin{tabularx}{\linewidth}{ll*{3}{X}}
            \toprule\midrule
            \multirow{6}{*}[-5.25ex]{\includegraphics[width=20mm]{./Muscles/biceps.jpg}} & \bf{Origin} & \multicolumn{3}{Y}{Short head: tip of coracoid process of scapula; Long head: supraglenoid tubercle of scapula}\\
            \cmidrule{2-5} & \bf{Insertion} & \multicolumn{3}{Y}{Tuberosity of radius and fascia of forearm via bicipital aponeurosis} \\
            \cmidrule{2-5} & \bf{Action} & \multicolumn{3}{Y}{Supinates forearm and, when it is supine, flexes forearm} \\
            \cmidrule{2-5} & \bf{Innervation} & \multicolumn{3}{Y}{Musculocutaneous nerve (C5 and C6 ) (C5, C6)} \\
            \cmidrule{2-5}& $F^{\max}_\mathrm{iso}$ & $\alpha$ & $l^{CE}_\mathrm{opt}$ & $l^{T}_\mathrm{sclack}$ \\
    \addlinespace[1.5ex]
             & [N] & [deg] & [m] & [m] \\
            \midrule \bottomrule
        \end{tabularx}
        \caption{Threshold and saturation values for the experimental subject.}
        \label{tabpar2}
\end{table}

\end{document} 

ingrese la descripción de la imagen aquí

información relacionada