如何让这个特定的表格看起来更好看?

如何让这个特定的表格看起来更好看?
  \documentclass[twoside,12pt,a4paper]{mwrep} % dwustronnie

\usepackage[inner=4cm,outer=2cm]{geometry}  % Marginesy (dwustronnie)
\usepackage[utf8]{inputenc}                 % język polski
\usepackage{polski}
\usepackage[polish]{babel, varioref}
\usepackage{graphicx}                       % wstawianie zdjęć
\usepackage{siunitx}                        % jednostki SI
\usepackage{booktabs}                       % linie poziome w tab.
\usepackage{float}                          % zafiksowanie wstawek w danym miejscu
\usepackage{url}                            % adresy url
\usepackage{array, multirow}                % pomoc do tabel
\usepackage{tabulary}                       % tabele 
\usepackage{placeins}                       % FloatBarrier
\usepackage{lscape}                         % poziomy układ strony
\usepackage{chngcntr}                       % odmienne numerowanie tabel, obrazków itd.
\usepackage{adjustbox}
\counterwithout{table}{chapter}             % numerowanie tabel po kolei 1,2,3,...

\begin{document}

\begin{tabulary}{13cm \tymax=0.4\linewidth}{CCm{2.5cm}CCC}
\toprule
Lp. & Miejscowość & \multicolumn{2}{c}{Zapotrzebowanie na wodę, $\si{m^3/\day}$} & \multicolumn{2}{c}{Odpływ ścieków, $\si{m^3/\day}$} \\
\hphantom & \hphantom & $Q_{\text{ś}rd}$ & $Q_{maxd}$ & $Q_{\text{ś}rd}$ & $Q_{maxd}$ \\
\midrule
1.    & X1 & 57,2  & 74,4  & 54,3  & 70,7 \\
2.    & X2 & 82,5  & 107,3 & 78,4  & 101,9 \\
3.    & X3 & 47,3  & 61,5  & 44,9  & 58,4 \\
4.    & X4 & 24,2  & 31,5  & 23,0  & 29,9 \\
5.    & X5 & 211,2 & 274,7 & 200,6 & 260,9 \\
\bottomrule
\end{tabulary}

\end{document}

结果:
我认为第三列太大了

我尝试了很多方法(例如将第三列从 C 更改为 m{}、调整 \tymax 和长度等),但没有取得很好的效果。

答案1

恐怕我无法解析您的tabulary代码。这里有一个解决方案,它利用tabularx以及siunitx包将四个数字列中的数字与小数点对齐。

在此处输入图片描述

\documentclass{article}
\usepackage[polish]{babel} 
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[inner=4cm,outer=2cm]{geometry}
\usepackage{siunitx,tabularx,booktabs}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcommand\mC[1]{\multicolumn{1}{C}{#1}}
\begin{document}

\begin{table}
\centering
\begin{tabularx}{13cm}{@{}cc
    *{4}{S[table-format=3.1,output-decimal-marker={,}]}@{}}
\toprule
Lp. & Miejscowość 
& \multicolumn{2}{c}{Zapotrzebowanie na wodę, \si{m^3/\day}} 
& \multicolumn{2}{c}{Odpływ ścieków, \si{m^3/\day}} \\
& & \mC{$Q_{\text{ś}rd}$} & \mC{$Q_{maxd}$} & 
    \mC{$Q_{\text{ś}rd}$} & \mC{$Q_{maxd}$} \\
\midrule
1.    & X1 & 57,2  & 74,4  & 54,3  & 70,7 \\
2.    & X2 & 82,5  & 107,3 & 78,4  & 101,9 \\
3.    & X3 & 47,3  & 61,5  & 44,9  & 58,4 \\
4.    & X4 & 24,2  & 31,5  & 23,0  & 29,9 \\
5.    & X5 & 211,2 & 274,7 & 200,6 & 260,9 \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}

答案2

我永远不会对这样的数据表使用tabularxtabulary(尽管这两个包都是我写的)。它们旨在通过控制单元格内的换行来影响整个表格宽度,并且(除了标题行)您永远都不希望在这样的表格中换行。您可以使用,tabular*但强制表格比其自然宽度更宽只会使表格更难阅读,因为您的眼睛必须扫描间隙,所以我会使用tabular

另外,永远不要对多字母标识符使用数学斜体,因此_{maxd}绝对不要\text{ś}rd在单词中间改变字体。

我使用 Mico 的例子作为基础,因为它比问题中的例子更现实、更简约。

在此处输入图片描述

\documentclass{article}
\usepackage[polish]{babel} 
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[inner=4cm,outer=2cm]{geometry}
\usepackage{siunitx,tabularx,booktabs}
\newcommand\mC[1]{\multicolumn{1}{c}{#1}}
\begin{document}

\begin{table}
\centering

\begin{tabular}{@{}cc
    *{4}{S[table-format=6.3,output-decimal-marker={,}]}
@{}}
\toprule
Lp. & Miejscowość 
& \multicolumn{2}{@{}c}{Zapotrzebowanie na wodę, \si{m^3/\day}} 
& \multicolumn{2}{c@{}}{Odpływ ścieków, \si{m^3/\day}} \\
& & \mC{$Q_{\text{śrd}}$} & \mC{$Q_{\text{maxd}}$} & 
    \mC{$Q_{\text{rdś}}$} & \mC{$Q_{\text{maxd}}$} \\
\midrule
1.    & X1 & 57,2  & 74,4  & 54,3  & 70,7 \\
2.    & X2 & 82,5  & 107,3 & 78,4  & 101,9 \\
3.    & X3 & 47,3  & 61,5  & 44,9  & 58,4 \\
4.    & X4 & 24,2  & 31,5  & 23,0  & 29,9 \\
5.    & X5 & 211,2 & 274,7 & 200,6 & 260,9 \\
\bottomrule
\end{tabular}
\end{table}
\end{document}

相关内容