tabularx 和 mathmode 的布局问题

tabularx 和 mathmode 的布局问题

我在硕士论文中使用的特定 tabularx 存在问题。

我制作了这段代码:

\documentclass[headsepline,titlepage,oneside,12pt]{report}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsbsy}
\usepackage{mathtools}
\usepackage{tabularx}
\usepackage{textcomp}
\usepackage{multirow}

\begin{document}

\begin{table}[ht!]
\centering
\newcolumntype{C}{>{\centering\arraybackslash}X}%
\newcolumntype{L}{>{\raggedright\arraybackslash}X}%

    \begin{tabularx}{\textwidth}{|L|C|*{6}{C|}}\firsthline
    \multirow{2}{*}{\bfseries Integrationsart}  &   \multirow{2}{*}{\bfseries Berechnung}   &   \multicolumn{6}{c|}{\bfseries Skala (0 - 5)}\\\cline{3-8}
                                                &                                           &   0   &   1   &   2   &   3   &   4   &   5\\\hline
    Datenintegration                    &   $BK2 + BK5_{admin. Anmeld.} + BK5_{Abrechnung}$ & $>$8 & 7 - 8 & 5 - 6 & 3 - 4 & 1 - 2 & 0\\\hline
    Prozessintegration                  &   $BK4_{admin. Anmeld.} + BK4_{Abrechnung} + BK5_{admin. Anmeld.} + BK5_{Abrechnung}$ & $>$10 & 9 - 10 & 7 - 8 & 5 - 6 & 3 - 4 & $\leq$2\\\hline
    \end{tabularx}

\caption{Abbildung der Wertebereiche der Bewertungskriterien auf die Skala der Integrationsqualitäten}
\label{tab:BKtoSpider}
\end{table}

\end{document}

但 PDF 布局如下所示: tabularx 表格的 PDF 布局

我不知道为什么 Skala 列比里面的数字宽得多,以及为什么“Berechnung”列没有空间。

有任何想法吗?

我感谢你们抽出时间,我期待你们对我在这个平台上的第一个问题的建议。;-)

彼得

答案1

您指定了宽度,但内容太宽。您不希望tabularx数据表,它旨在控制表格中的换行符文本. 也不要对多字母的单词使用数学斜体。

像这样,尽管它可能太宽,但您没有表明您的页面大小。

\documentclass{article}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsbsy}
\usepackage{mathtools}
\usepackage{tabularx}
\usepackage{textcomp}
\usepackage{multirow}

\begin{document}
\begin{table}[htp]
\centering

    \begin{tabular}{|l|>{\centering}p{3cm}|*{6}{c|}}\firsthline
    \multirow{2}{*}{\bfseries Integrationsart}  &  
 \multirow{2}{*}{\bfseries Berechnung}   &   \multicolumn{6}{c|}{\bfseries Skala (0 - 5)}\\\cline{3-8}
                                                &                                           &   0   &   1   &   2   &   3   &   4   &   5\\\hline
    Datenintegration                    &   $BK2 + BK5_{\textrm{admin. Anmeld.}} + BK5_{\textrm{Abrechnung}}$ & $>$8 & 7 - 8 & 5 - 6 & 3 - 4 & 1 - 2 & 0\\\hline
    Prozessintegration                  &   $BK4_{\textrm{admin. Anmeld.}} + BK4_{\textrm{Abrechnung}} + BK5_{\textrm{admin. Anmeld.}} + BK5_{\textrm{Abrechnung}}$ & $>$10 & 9 - 10 & 7 - 8 & 5 - 6 & 3 - 4 & $\leq$2\\\hline
    \end{tabular}

\caption{Abbildung der Wertebereiche der Bewertungskriterien auf die Skala der Integrationsqualitäten}
\label{tab:BKtoSpider}
\end{table}

\end{document}

答案2

如果您想要保留设置tabularx,则需要加宽第二列并减小第 3 至第 8 列的宽度。(计算提示:2.6+6*0.7333=7= 宽度增加或减少的列数。)

您还需要拆分第二列中的长类数学表达式,以便 LateX 可以真正插入换行符。您还需要对第一列进行一些操作,以便允许在每个单元格中的第一个单词(事实证明,只有第一个单词)上使用连字符;我建议您为此目的插入。说到连字符,加载包并提供更多连字符点\hspace{0pt}可能也是一个好主意。babel

在此处输入图片描述

\documentclass{article}
\usepackage{amsfonts,amssymb,amsthm,amsbsy}
\usepackage{mathtools}
\usepackage[ngerman]{babel}
\hyphenation{inte-gra-tionsart daten-integra-tion prozess-integra-tion}
\usepackage{tabularx}
\newcolumntype{C}{>{\centering\arraybackslash\hspace{0pt}}X}%
\newcolumntype{L}{>{\raggedright\arraybackslash\hspace{0pt}}X}%

\usepackage{textcomp}
\usepackage{multirow}
\usepackage[utf8]{inputenc}
\begin{document}
\begin{table}[ht!]
\setlength{\tabcolsep}{2pt} % default value: 6pt
\begin{tabularx}{\textwidth}{|L|>{\hsize=2.6\hsize}L|*{6}{>{\hsize=0.7333\hsize}C|}}
\firsthline
\bfseries Integrationsart  &   \bfseries Berechnung   &   \multicolumn{6}{c|}{\bfseries Skala (0 -- 5)}\\
\cline{3-8}
 & & 0 & 1 & 2 & 3 & 4 & 5\\
 \hline
Datenintegration  &   
BK2 $+$ 
BK5$_{\text{admin. Anmeld.}}$ $+$ 
BK5$_{\text{Abrechnung}}$ & 
$>8$ & 7 -- 8 & 5 -- 6 & 3 -- 4 & 1 -- 2 & 0\\
\hline
Prozessintegration&   
BK4$_{\text{admin. Anmeld.}}$ $+$ 
BK4$_{\text{Abrechnung}}$ $+$ 
BK5$_{\text{admin. Anmeld.}}$ $+$ 
BK5$_{\text{Abrechnung}}$ & 
$>10 $& 9 -- 10 & 7 -- 8 & 5 -- 6 & 3 -- 4 & $\leq2$\\
\hline
\end{tabularx}

\caption{Abbildung der Wertebereiche der Bewertungskriterien auf die Skala der Integrationsqualitäten}
\label{tab:BKtoSpider}
\end{table}
\end{document}

附录,在 OP 表明report文档类正在使用后发布:在第一列的单词中不允许换行可能是一个好主意。将列类型从切换Ll并删除所有竖线,并使用规则绘制宏书签包生成以下更“开放”的表格外观:

在此处输入图片描述

\documentclass[headsepline,titlepage,oneside,12pt]{report}
\usepackage{amsfonts,amssymb,amsthm,amsbsy,mathtools}
\usepackage[ngerman]{babel}

\usepackage{tabularx}
\newcolumntype{C}{>{\centering\arraybackslash\hspace{0pt}}X}
\newcolumntype{L}{>{\raggedright\arraybackslash\hspace{0pt}}X}

\usepackage{booktabs}
\usepackage[utf8]{inputenc}

\begin{document}

\begin{table}[ht!]
\setlength{\tabcolsep}{2pt} % default value: 6pt
\begin{tabularx}{\textwidth}{@{} l >{\hsize=2.6\hsize}L *{6}{>{\hsize=0.7333\hsize}C} @{}}
\toprule
Integrationsart & Berechnung & \multicolumn{6}{c@{}}{Skala (0--5)}\\
\cmidrule(l){3-8}
 & & 0 & 1 & 2 & 3 & 4 & 5\\
\midrule
Datenintegration  &   
BK2\,$+$ 
BK5$_{\text{admin. Anmeld.}}$\,$+$ 
BK5$_{\text{Abrechnung}}$ & 
$>$8 & 7--8 & 5--6 & 3--4 & 1--2 & 0\\
\addlinespace
Prozessintegration&   
BK4$_{\text{admin. Anmeld.}}$\,$+$ 
BK4$_{\text{Abrechnung}}$\,$+$ 
BK5$_{\text{admin. Anmeld.}}$\,$+$ 
BK5$_{\text{Abrechnung}}$ & 
$>$10& 9--10 & 7--8 & 5--6 & 3--4 & $\leq$2\\
\bottomrule
\end{tabularx}

\caption{Abbildung der Wertebereiche der Bewertungskriterien 
auf die Skala der Integrationsqualitäten}
\label{tab:BKtoSpider}
\end{table}
\end{document}

相关内容