Недостаток интервалов в сложной структуре таблицы

Недостаток интервалов в сложной структуре таблицы

Следующийэта почта, у меня есть еще один стол из латекса:

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{mathtools}
\usepackage{tabularx}
\usepackage[math]{cellspace}
\setlength{\cellspacetoplimit}{3pt}
\setlength{\cellspacebottomlimit}{3pt}
\newcolumntype{?}{!{\vrule width 3pt}}
\usepackage{makecell}

\begin{document}

\begin{table*}[!t]
\footnotesize
\centering
\caption{Example of a table}
\label{sth}
\begin{tabular}{>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}?>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|>{$}Sc<{$}|}
\cline{2-11}
 & \multicolumn{5}{c?}{X^{tr} (\mathrm{english text})} & \multicolumn{5}{c|}{Y^{yu} (\mathrm{english text})} \\ \cline{2-11} 
\multirow{-2}{*}{} & \mathscr{A}_1 & \mathscr{A}_2 & \mathscr{A}_3 & \mathscr{A}_4 & \mathscr{A}_5 & \mathscr{A}_1 & \mathscr{A}_2 & \mathscr{A}_3 & \mathscr{A}_4 & \mathscr{A}_5 \\ \hline
\multicolumn{1}{|c|}{1} & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\ \hline
\multicolumn{1}{|c|}{2} & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\ \hline
\end{tabular}
\end{table*}

\end{document}

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

У меня возникло множество проблем с моими усилиями.

  1. почему в первом столбце появляется -2*?
  2. Я попытался избавиться от вертикальных и горизонтальных линий, но мне нужно сохранить жирный черный разделитель посередине. Поэтому я не знаю, какие линии удалять.
  3. формулы размываются в линиях, так что мне следует удалить линии. Я попытался сделать дополнительный зазор вокруг каждого поля. Есть ли лучший способ? Мой метод, похоже, не работает для первой строки сверху.
  4. «Английский текст» не отображается во второй строке, как должно быть, с пробелом между ними. Я пробовал записывать все в таблице в виде математической формулы, но это приводит к ошибкам. Может ли кто-нибудь разобраться с этим?
  5. Во втором ряду буква А должна быть написана заглавной буквой. Этого не происходит.

В основном мне нужна помощь, чтобы сделать эту таблицу более читаемой и устранить сообщения об ошибках, которые генерируются. Пожалуйста, предложите изменения.

решение1

Некоторые комментарии и наблюдения:

  • Поскольку практически весь материал таблицы должен быть в математическом режиме, arrayвместо окружения используйте tabularокружение.

  • Тип cстолбца, по-видимому, подходит для всех 11 столбцов. Пакет cellspaceимеет свои применения. Однако для настоящей таблицы использование его механизмов, похоже, излишне.

  • Чтобы уменьшить общую ширину таблицы, измените значение \arraycolsep(предполагая, что вы последовали моему совету использовать arrayокружение). Значение этого параметра по умолчанию — 5pt; в примере ниже я установил его на 2.5pt.

  • Строка "-2" появляется из-за \multirow{-2}{*}{}директивы. Чего она должна достичь? Таблица прекрасно обходится и без нее.

  • Ваш стол в порядке безлюбойВертикальные линии. Действительно. Смотрите ниже.

  • Используйте макросы рисования линий пакета booktabsвместо \hlineи \cline.

  • Не используйте \mathrm; используйте либо , \text{...}либо \textnormal{...}.

  • Чтобы \mathscrмакрос вел себя как ожидается, загрузите пакет, который предоставляет математический алфавит math-script. Попробуйте пакет mathrsfs.

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

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{mathtools,array,mathrsfs,booktabs}
\usepackage[skip=0.333\baselineskip]{caption} % optional
\newcommand\msA{\mathscr{A}}
\begin{document}

\begin{table}[!t]
\setlength\arraycolsep{2.5pt} % default value: 5pt
\footnotesize
\captionsetup{font=footnotesize} % optional
\centering
\caption{Example of a table}
\label{sth}
$\begin{array}{@{}*{11}{c}@{}}
\toprule
 & \multicolumn{5}{c}{X^{tr} (\textnormal{english text})} 
 & \multicolumn{5}{c@{}}{Y^{yu} (\text{english text})} \\ 
\cmidrule(lr){2-6} \cmidrule(l){7-11}
 & \msA_1 & \msA_2 & \msA_3 & \msA_4 & \msA_5 
 & \msA_1 & \msA_2 & \msA_3 & \msA_4 & \msA_5 \\ 
\midrule
1 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 
  & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\ 
2 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 
  & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\ 
\bottomrule
\end{array}$
\end{table}

\end{document}

решение2

Это то, чего ты хочешь?

Если это так, то вот код:

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode

\documentclass{article}
\usepackage[utf8]{inputenc}

\usepackage{mathtools}
\usepackage{multirow}
\usepackage{tabularx}
\usepackage[math]{cellspace}
\usepackage{unicode-math}
\setmathfont{XITS Math}
\setmathfont[version=setB,StylisticSet=1]{XITS Math}
\setlength{\cellspacetoplimit}{3pt}
\setlength{\cellspacebottomlimit}{3pt}

\usepackage{makecell}

\begin{document}
    \newcolumntype{?}{!{\vrule width 3pt}}
    \begin{table}[!t]
        \footnotesize
        \centering
        \caption{Example of a table}
        \label{sth}
        \begin{tabular}{>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}?>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}>{$}Sc<{$}}
            & \multicolumn{5}{c?}{$X^{tr} (\mathrm{english text})$} & \multicolumn{5}{c}{$Y^{yu} (\mathrm{english text})$} \\
             & \mathscr{A}_1 & \mathscr{A}_ 2 & \mathscr{A}_3 & \mathscr{A}_4 & \mathscr{A}_5 & \mathscr{A}_1 & \mathscr{A}_2 & \mathscr{A}_3 & \mathscr{A}_4 & \mathscr{A}_5 \\
            \multicolumn{1}{c}{1} & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\
            \multicolumn{1}{c}{2} & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35 & 5413.35  \\
        \end{tabular}
    \end{table}

\end{document}
  1. Из-за \multirow{-2}{*}{}. Ваш код не компилировался, так как у вас не было пакета multirow.

  2. Удалить все |.

  3. Твой выбор

  4. Это потому, что он находится в математическом режиме, поэтому вам нужно вручную добавить пробел, используя\,

  5. Вы не определили команду для создания букв в режиме скрипта.

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