Проблема с \tabular \tabularx и \multicolumn

Проблема с \tabular \tabularx и \multicolumn

Я пытаюсь написать следующую «готическую» таблицу, но у меня возникли проблемы с равномерным распределением интервалов и размера текста.

Я пробую следующее с табличным форматом:

    \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}

С помощью этого кода я получаю следующее, где ошибка в том, что строка не разрывается в конце: результат с табличным

С другой стороны, если я попробую следующий код, строки будут разорваны, а последние столбцы будут равномерно распределены, но многостолбцовость не будет работать:

    \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}

И вот результат: Результат с табличным X

Есть ли решение, чтобы исправить это????

Большое спасибо

решение1

Хитрость в том, чтобы в основном использовать

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

с небольшой корректировкой. Я бы определил новую среду для такого типа таблиц с данными изображения в качестве аргумента. Само изображение размещается фиксированной командой, \muscleimageчтобы максимально избежать сложного кода.

\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}

введите описание изображения здесь

решение2

Вот решение с tabularxи booktabs. Я создал последние три Xстолбца и определил новый Yтип столбца, который ведет себя как X, но в три раза шире, для использования в multicolumn{3}. Нет необходимости в невидимых вертикальных линиях: они заменены в преамбуле надля этого случаязначения \aboverulesepи \belowrulesep. multirowКоманда может потребовать еще одной настройки для вертикального центрирования, в зависимости от реального изображения.

\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} 

введите описание изображения здесь

Связанный контент