让桌子看起来更美观

让桌子看起来更美观

我正在尝试创建一个吸引人的表格。到目前为止,这是我的结果:

当前表

如您所见,表格看起来不正确。例如,工作Komplexität没有正确连字符。并且列标题KriterienGewichtungsfaktor与其他列标题在同一行。

有人能给出一些提示如何修复这些错误,或者如何将整个表格转换为表格booktabs吗?

梅威瑟:

%!TEX TS-program = lualatex

\documentclass[
    a4paper,
    oneside,
    titlepage=firstiscover
]{scrartcl}

\usepackage[
onehalfspacing
]{setspace}
\usepackage{polyglossia}
\usepackage{float}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{colortbl}
\usepackage{ragged2e}
\usepackage{rotating}
\usepackage{booktabs}

\setmainlanguage{german}

% rotate text in table heads
\newcommand\rotateText[2]{\rotatebox{90}{\parbox{#2cm}{\raggedright#1}}}

% Tabularx cells
\newcolumntype{R}[1]{>{\raggedleft\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{L}[1]{>{\raggedright\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{C}[1]{>{\centering\hsize=#1\hsize\arraybackslash}X}

\usepackage{hyphenat}

\hyphenation{Um-setz-bar-keit Kom-ple-xi-tät}

\begin{document}

    \begin{table}[ht]
        \centering
        \begin{tabularx}{\textwidth}{C{0.1}L{0.39}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}}
            & \multirow{2}{*}{\rotateText{\textbf{Kriterien}}{4}} & \multirow{2}{*}{\rotateText{\textbf{Gewichtungsfaktor}}{4}} & \multicolumn{2}{l}{\textbf{RSS}} & \multicolumn{2}{l}{\textbf{FP}} & \multicolumn{2}{l}{\textbf{Prox.}} & \multicolumn{2}{l}{\textbf{Opt.}} \\
            & & & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} \\
            \toprule
            \multirow{3}{*}{\rotateText{Komplexität}{1.75}} & Installationsaufwand & 4 & 4 & 16 & 2 & 8 & 3 & 12 & 5 & 20 \\
            & Hardware & 2 & 4 & 8 & 4 & 8 & 4 & 8 & 5 & 10 \\
            & Software & 2 & 4 & 8 & 3 & 6 & 5 & 10 & 5 & 10 \\
            \midrule
            \multirow{3}{*}{\rotateText{Kosten}{0.5}} & Installation & 2 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            & Anzahl Sensoren & 4 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            \midrule
            & Energieverbrauch & 4 & 3 & 12 & 3 & 12 & 4 & 16 & 5 & 20 \\
            \\[-1em]
            & \multicolumn{3}{l}{Punkte} & 62 & & 58 & & 66 & & 90 \\
            & \multicolumn{3}{l}{Wirtschaftliche Wertigkeit} & 0.69 & & 0.64 & & 0.73 & & 1 \\
        \end{tabularx}
    \end{table}


\end{document}

答案1

我建议仔细考虑使用颜色并实际利用设施booktabs

考虑作为一个起点(或者如果@TeXnician 的改变他的回答- 确实看起来更好 - 但太激进了): 在此处输入图片描述

%!TEX TS-program = lualatex

\documentclass[
    a4paper,
    oneside,
    titlepage=firstiscover
]{scrartcl}

\usepackage[onehalfspacing]{setspace}
\usepackage{polyglossia}
\usepackage{float}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{colortbl}
\usepackage{ragged2e}
\usepackage{rotating}
\usepackage{booktabs}

\setmainlanguage{german}

% rotate text in table heads
\newcommand\rotateText[2]{\rotatebox{90}{\parbox{#2cm}{\raggedright#1}}}

% Tabularx cells
\newcolumntype{R}[1]{>{\raggedleft\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{L}[1]{>{\raggedright\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{C}[1]{>{\centering\hsize=#1\hsize\arraybackslash}X}

\usepackage{hyphenat}

\hyphenation{Um-setz-bar-keit Kom-ple-xi-tät}

\begin{document}

    \begin{table}[ht]
        \centering
        \begin{tabularx}{\textwidth}{%
            C{0.1}%
            L{0.39}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
            C{0.06}%
        }
            \toprule
            & \multirow{2}{*}{\rotateText{\textbf{Kriterien}}{3.8}} & \multirow{2}{*}{\rotateText{\textbf{Gewichtungsfaktor}}{3.8}} & \multicolumn{2}{c}{\textbf{RSS}} & \multicolumn{2}{c}{\textbf{FP}} & \multicolumn{2}{c}{\textbf{Prox.}} & \multicolumn{2}{c}{\textbf{Opt.}} \\
            \cmidrule(lr){4-5}\cmidrule(lr){6-7}\cmidrule(lr){8-9}\cmidrule(lr){10-11}
            & & & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} \\
            \midrule
            \multirow{3}{*}{\rotateText{Komplexität}{1.4}} & Installationsaufwand & 4 & 4 & 16 & 2 & 8 & 3 & 12 & 5 & 20 \\
            & Hardware & 2 & 4 & 8 & 4 & 8 & 4 & 8 & 5 & 10 \\
            & Software & 2 & 4 & 8 & 3 & 6 & 5 & 10 & 5 & 10 \\
            \cmidrule(lr){1-11}
            \multirow{3}{*}{\rotateText{Kosten}{0.4}} & Installation & 2 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            & Anzahl Sensoren & 4 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            \cmidrule(lr){1-11}
            & Energieverbrauch & 4 & 3 & 12 & 3 & 12 & 4 & 16 & 5 & 20 \\
            \midrule
            & \multicolumn{3}{l}{Punkte} & 62 & & 58 & & 66 & & 90 \\
            & \multicolumn{3}{l}{Wirtschaftliche Wertigkeit} & 0.69 & & 0.64 & & 0.73 & & 1 \\
            \bottomrule
        \end{tabularx}
    \end{table}


\end{document}

答案2

什么是花哨的,什么是美学的(关于表格设计)......是非常个人的观点:-),所以我只是重写了你的代码以使其更简单,并给出与你类似的结果姆韦

在此处输入图片描述

(红线表示文本边距)。姆韦下面是用于makecell列标题的包,booktabs仅用于确定\cmidrule,简化了列的确定等

\documentclass[
    a4paper,
    oneside,
    titlepage=firstiscover
]{scrartcl}

\usepackage[onehalfspacing]{setspace}
\usepackage{polyglossia}
\usepackage{rotating}
\usepackage{booktabs, makecell, tabularx}
\renewcommand\theadfont{\bfseries}

\usepackage[table]{xcolor}
\usepackage{ragged2e}

\usepackage{hyphenat}

\hyphenation{Um-setz-bar-keit Kom-ple-xi-tät}
%-------------------------------- show page layout, only for test
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%

\begin{document}
    \begin{table}
\settowidth\rotheadsize{\theadfont Gewichtungsfaktor }
\setlength\tabcolsep{4pt}
\renewcommand\arraystretch{1.2}
\renewcommand{\belowrulesep}{0pt}
\centering
\begin{tabularx}{\linewidth}{@{}        l l
                                        c c
    >{\columncolor{gray!10}\centering}  X c
    >{\columncolor{gray!10}\centering}  X c
    >{\columncolor{gray!10}\centering}  X c
    >{\columncolor{gray!10}[\tabcolsep][0pt]\centering\arraybackslash}  X
                            @{}}
    \Xhline{1pt}
    &   &   \multicolumn{3}{c}{\textbf{RSS}}
                &   \multicolumn{2}{c}{\textbf{FP}}
                    &   \multicolumn{2}{c}{\textbf{Prox.}}
                        &   \multicolumn{2}{c}{\textbf{Opt.}}                       \\
    \cmidrule(l{2.5pt}){4-5}
    \cmidrule(l{2.5pt}){6-7}
    \cmidrule(l{2.5pt}){8-9}
    \cmidrule(l{2.5pt}){10-11}
    &   \rothead{\textbf{Kriterien}}
        &   \rothead{\textbf{Gewichtungsfaktor}}
            &   \rothead{Erfüllungsgrad}
                &   \rothead{Werte}
                    &   \rothead{Erfüllungsgrad}
                        &   \rothead{Werte}
                            &   \rothead{Erfüllungsgrad}
                                &   \rothead{Werte}
                                    &   \rothead{Erfüllungsgrad}
                                        &   \rothead{Werte}                         \\
    \Xhline{0.75pt}
\thead[l]{Komplexität}
    &   Installationsaufwand    & 4 & 4 & 16    & 2 &  8    & 3 & 12    & 5 & 20    \\
    &   Hardware                & 2 & 4 &  8    & 4 &  8    & 4 &  8    & 5 & 10    \\
    &   Software                & 2 & 4 &  8    & 3 &  6    & 5 & 10    & 5 & 10    \\
    \hline
\thead[l]{Kosten}
    &   Installation            & 2 & 3 &  6    & 2 &  4    & 4 &  8    & 5 & 10    \\
    &   Anzahl Sensoren         & 4 & 3 &  6    & 2 &  4    & 4 &  8    & 5 & 10    \\
    &   Energieverbrauch        & 4 & 3 & 12    & 3 & 12    & 4 & 16    & 5 & 20    \\

    \hline
    & \multicolumn{3}{l}{Punkte}        & 62    &   & 58    &   & 66    &   & 90    \\
    & \multicolumn{3}{l}{Wirtschaftliche Wertigkeit}
                                        & 0.69  &   & 0.64  &   & 0.73  &   & 1     \\
    \Xhline{0.75pt}
\end{tabularx}
    \end{table}
\end{document}

编辑:看完之后技术员评论我看到上面姆韦不完整。现在我纠正这一点。在修正中我也考虑了提到的评论。

答案3

我将交换列和行,并开始使用booktabs以及rotating。作为初学者:

桌子

%!TEX TS-program = lualatex

\documentclass[
    a4paper,
    oneside,
    titlepage=firstiscover
]{scrartcl}

\usepackage[
onehalfspacing
]{setspace}
\usepackage{polyglossia}
\usepackage{float}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{colortbl}
\usepackage{ragged2e}
\usepackage{rotating}
\usepackage{booktabs}

\setmainlanguage{german}

% rotate text in table heads
\newcommand\rotateText[2]{\rotatebox{90}{\parbox{#2cm}{\raggedright#1}}}

% Tabularx cells
\newcolumntype{R}[1]{>{\raggedleft\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{L}[1]{>{\raggedright\hsize=#1\hsize\arraybackslash}X}%
\newcolumntype{C}[1]{>{\centering\hsize=#1\hsize\arraybackslash}X}

\usepackage{hyphenat}

\hyphenation{Um-setz-bar-keit Kom-ple-xi-tät}

\begin{document}

    \begin{table}[ht]
        \centering
        \begin{tabularx}{\textwidth}{C{0.1}L{0.39}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}|C{0.06}>{\columncolor[gray]{0.9}}C{0.06}}
            & \multirow{2}{*}{\rotateText{\textbf{Kriterien}}{4}} & \multirow{2}{*}{\rotateText{\textbf{Gewichtungsfaktor}}{4}} & \multicolumn{2}{l}{\textbf{RSS}} & \multicolumn{2}{l}{\textbf{FP}} & \multicolumn{2}{l}{\textbf{Prox.}} & \multicolumn{2}{l}{\textbf{Opt.}} \\
            & & & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} & \rotateText{Erfüllungsgrad}{3.18} & \rotateText{Werte}{3.18} \\
            \toprule
            \multirow{3}{*}{\rotateText{Komplexität}{1.75}} & Installationsaufwand & 4 & 4 & 16 & 2 & 8 & 3 & 12 & 5 & 20 \\
            & Hardware & 2 & 4 & 8 & 4 & 8 & 4 & 8 & 5 & 10 \\
            & Software & 2 & 4 & 8 & 3 & 6 & 5 & 10 & 5 & 10 \\
            \midrule
            \multirow{3}{*}{\rotateText{Kosten}{0.5}} & Installation & 2 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            & Anzahl Sensoren & 4 & 3 & 6 & 2 & 4 & 4 & 8 & 5 & 10 \\
            \midrule
            & Energieverbrauch & 4 & 3 & 12 & 3 & 12 & 4 & 16 & 5 & 20 \\
            \\[-1em]
            & \multicolumn{3}{l}{Punkte} & 62 & & 58 & & 66 & & 90 \\
            & \multicolumn{3}{l}{Wirtschaftliche Wertigkeit} & 0.69 & & 0.64 & & 0.73 & & 1 \\
        \end{tabularx}
    \end{table}

        \begin{sidewaystable}
            \centering
            \renewcommand{\arraystretch}{1.1}
            \begin{tabularx}{\textwidth}{l*{8}{X}}
                \toprule & \multicolumn{3}{c}{Komplexität} &  \multicolumn{2}{c}{Kosten} & & &\\\cmidrule(lr){2-4}\cmidrule(lr){5-6}
                Produkt & Installationsaufwand (4) & Hardware (2) & Software (2) & Installation (2) & Anzahl Sensoren (4) & Energieverbrauch (4) & Punkte & Wirtsch. Wertigkeit\\\midrule
                RSS\\
                \hskip.5em Erfüllungsgrad & 4 & 4 & 4 & 3 & 3 & 3 & &\\
                \hskip.5em Werte & 16 & 8 & 8 & 6 & 6 & 12 & 62 & 0.69\\\addlinespace
                RSS\\
                \hskip.5em Erfüllungsgrad & 4 & 4 & 4 & 3 & 3 & 3 & &\\
                \hskip.5em Werte & 16 & 8 & 8 & 6 & 6 & 12 & 62 & 0.69\\\addlinespace
                RSS\\
                \hskip.5em Erfüllungsgrad & 4 & 4 & 4 & 3 & 3 & 3 & &\\
                \hskip.5em Werte & 16 & 8 & 8 & 6 & 6 & 12 & 62 & 0.69\\\bottomrule
            \end{tabularx}\medbreak
            Zahlen in Klammern bezeichnen die Gewichtungsfaktoren der einzelnen Komponenten zur Gesamtpunktzahl.
        \end{sidewaystable}
\end{document}

相关内容