我正在尝试使用该包制作表格multicolumn
。我知道您可以使用以下方法对齐单元格:
\multicolumn{[# of columns]}{l, c or r}{[text]}
或者您可以使用以下方法设置所述多列的宽度:
\multicolumn{[# of columns]}{p{whatever size you wish}{[text]}
我的问题是:是否可以同时设置列的大小并使其水平对齐?
这是我正在处理的表格:
如您所见,单元格“Detection humaine à l'intérieur du perimetre radius”(法语)的大小固定为 4 厘米(随机选择)并且不再位于中心。
以下是生成它的代码:
感谢您的帮助。
\section{Synth\`ese} \label{s:synthese}
\begin{table}[!ht]
\begin{center}
\begin{tabular}{ccccc}
\hline
\multicolumn{1}{|c|}{} & \multicolumn{4}{c|}{\textbf{Concept}} \\ \hline
%------------------------------------------------
\multicolumn{1}{|c|}{\textbf{Critères d'évaluations}} & \multicolumn{1}{c|}{Perfomance} & \multicolumn{1}{c|}{Économie} & \multicolumn{1}{c|}{Légèreté} & \multicolumn{1}{c|}{Simplicité} \\ \hline
%------------------------------------------------
\multicolumn{1}{|c|}{Précision des images thermiques [mK]} & \multicolumn{1}{c|}{50} & \multicolumn{1}{c|}{100} & \multicolumn{1}{c|}{65} & \multicolumn{1}{c|}{65} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Résolution spatiale [mm]} & \multicolumn{1}{c|}{19} & \multicolumn{1}{c|}{3.3} & \multicolumn{1}{c|}{19} & \multicolumn{1}{c|}{19} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Stockage des données [To]} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{8} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{12} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Résolution temporelle des images thermiques [fps]} & \multicolumn{1}{c|}{60} & \multicolumn{1}{c|}{64} & \multicolumn{1}{c|}{50} & \multicolumn{1}{c|}{50} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Signal de sortie de la caméra thermique [bits]} & \multicolumn{1}{c|}{16} & \multicolumn{1}{c|}{bites me} & \multicolumn{1}{c|}{14} & \multicolumn{1}{c|}{14} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Interface de communication} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Facilité du pilotage} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Inspection autonome} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{0.75} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Vitesse de vol [m/s]} & \multicolumn{1}{c|}{10} & \multicolumn{1}{c|}{20} & \multicolumn{1}{c|}{6} & \multicolumn{1}{c|}{10} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Résistence au vent [km/h]} & \multicolumn{1}{c|}{36} & \multicolumn{1}{c|}{64} & \multicolumn{1}{c|}{97} & \multicolumn{1}{c|}{39.6} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Autonomie de vol [min]} & \multicolumn{1}{c|}{75} & \multicolumn{1}{c|}{34} & \multicolumn{1}{c|}{50} & \multicolumn{1}{c|}{70} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Poids du drone [kg]} & \multicolumn{1}{c|}{3.25} & \multicolumn{1}{c|}{2.27} & \multicolumn{1}{c|}{3.31} & \multicolumn{1}{c|}{2.915} \\\hline
%------------------------------------------------
\multicolumn{1}{|p{4cm}|}{Détection humaine à l'intérieur du périmètre radial [m]} & \multicolumn{1}{c|}{33.1} & \multicolumn{1}{c|}{33.1} & \multicolumn{1}{c|}{33.1} & \multicolumn{1}{c|}{33.1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Efficacité des mesures d'urgence} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Sécurité constante des données} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Respect constant des conditions de vol} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{0.5} \\\hline
%------------------------------------------------
\multicolumn{1}{|c|}{Coût total de production [\$]} & \multicolumn{1}{c|}{70 744} & \multicolumn{1}{c|}{13 920} & \multicolumn{1}{c|}{24 128} & \multicolumn{1}{c|}{67 130} \\\hline
\end{tabular}
\end{center}
\end{table}
答案1
也许你正在寻找这样的东西:
编辑(六年后!): 对于表格的设计,你首先需要阅读一些关于 LaTeX 的基本文献,例如https://en.wikibooks.org/wiki/LaTeX/Tables(第 2.8 节)。
大部分\multicolumns
表格都很杂乱。似乎您在编写表格时使用了一些表格生成器,这些生成器倾向于在不需要时生成表格。因此,结果很糟糕......
对于上图,我彻底清理了你的代码。现在它更短更清晰了:
\documentclass[twocolumn]{article}
\usepackage{array}
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\begin{document}
\begin{table}[htb]\centering
\begin{tabular}{|P{5cm}|c|c|c|c|}
\hline
\multicolumn{1}{|c|}{}& \multicolumn{4}{c|}{\textbf{Concept}}\\ \hline
%------------------------------------------------
\textbf{Critères d'évaluations}& Perfomance& Économie& Légèreté& Simplicité\\ \hline
%------------------------------------------------
Précision des images thermiques [mK]& 50& 100& 65& 65 \\\hline
%------------------------------------------------
Résolution spatiale [mm]& 19& 3.3& 19& 19\\\hline
%------------------------------------------------
Stockage des données [To]& 4& 8& 4& 12\\\hline
%------------------------------------------------
Résolution temporelle des images thermiques [fps]& 60& 64& 50& 50\\\hline
%------------------------------------------------
Signal de sortie de la caméra thermique [bits]& 16& bites me & 14& 14\\\hline
%------------------------------------------------
Interface de communication& 1& 1& 1& 1\\\hline
%------------------------------------------------
Facilité du pilotage& 1& 1& 1& 1\\\hline
%------------------------------------------------
Inspection autonome& 1& 0.75& 1& 1\\\hline
%------------------------------------------------
Vitesse de vol [m/s]& 10& 20& 6& 10\\\hline
%------------------------------------------------
Résistence au vent [km/h]& 36& 64& 97& 39.6\\\hline
%------------------------------------------------
Autonomie de vol [min]& 75& 34& 50& 70\\\hline
%------------------------------------------------
Poids du drone [kg]& 3.25& 2.27& 3.31& 2.915\\\hline
%------------------------------------------------
Détection humaine à l'intérieur du périmètre radial [m] & 33.1& 33.1& 33.1& 33.1\\\hline
%------------------------------------------------
Efficacité des mesures d'urgence& 1& 1& 1& 1\\\hline
%------------------------------------------------
Sécurité constante des données& 1& 1& 1& 1\\\hline
%------------------------------------------------
Respect constant des conditions de vol& 1& 1& 1& 0.5 \\\hline
%------------------------------------------------
Coût total de production [\$]& 70 744& 13 920& 24 128& 67 130\\\hline
\end{tabular}
\end{table}
\end{document}
如您所见,为了使p{...}
列类型的单元格中的文本居中,我定义了新的列类型P
。为此,您需要加载包array
。
如何设计更好看的表格本次在线演示。在这个网站上 (TeX:SE) 可以找到许多设计精美的表格示例。
也许在第一步中您要删除垂直线并使用siunitx
包进行数字对齐。
编辑:同时,我玩弄了你的表格,看看如何改善你的表格外观,Heiko 用很好的例子说服了我。无论如何,由于我的建议略有不同,看看你是否可以在未来的表格设计中使用/学习
\documentclass[twocolumn]{article}
\usepackage[utf8]{inputenc}
\usepackage{siunitx}
\usepackage{ragged2e}
\usepackage{array,booktabs,makecell}
\renewcommand\theadfont{\bfseries\sffamily}
\newcolumntype{P}[1]{>{\RaggedRight\arraybackslash}p{#1}}
\begin{document}
\begin{table}[htb]\centering
\renewcommand{\arraystretch}{1.2}
\begin{tabular}{P{5cm}*{4}{S[table-format=3.3]}}%c|c|c|c|
\toprule
& \multicolumn{4}{c}{\thead{Concept}}
\\ \cmidrule{2-5}
\thead{Critères d'évaluations}
& {\thead{Perfomance}}
& {\thead{Économie}}
& {\thead{Légèreté}}
& {\thead{Simplicité}}
\\ \midrule
Précision des images thermiques [mK]
& 50 & 100 & 65 & 65 \\
Résolution spatiale [mm]
& 19 & 3.3 & 19 & 19 \\
Stockage des données [To]
& 4 & 8 & 4 & 12 \\
Résolution temporelle des images thermiques [fps]
& 60 & 64 & 50 & 50 \\
Signal de sortie de la caméra thermique [bits]
& 16 & {bites me} & 14 & 14 \\
Interface de communication
& 1 & 1 & 1 & 1 \\
Facilité du pilotage
& 1 & 1 & 1 & 1 \\
Inspection autonome
& 1 & 0.75 & 1 & 1 \\
Vitesse de vol [m/s]
& 10 & 20 & 6 & 10 \\
Résistence au vent [km/h]
& 36 & 64 & 97 & 39.6 \\
Autonomie de vol [min]
& 75 & 34 & 50 & 70 \\
Poids du drone [kg]
& 3.25 & 2.27 & 3.31 & 2.915 \\
Détection humaine à l'intérieur du périmètre radial [m]
& 33.1 & 33.1 & 33.1 & 33.1 \\
Efficacité des mesures d'urgence
& 1 & 1 & 1 & 1 \\
Sécurité constante des données
& 1 & 1 & 1 & 1 \\
Respect constant des conditions de vol
& 1 & 1 & 1 & 0.5 \\
Coût total de production [\$]
& \num{70 744} & \num{13 920} & \num{24 128} & \num{67 130}
\\ \bottomrule
\end{tabular}
\end{table}
\end{document}
编辑2:(使用tabularray):
同时,我们开发了新的、非常强大的包tabularray
。使用它来编写表格更加一致。生成的表格具有简洁的代码特点:
\documentclass{article}
%\usepackage{geometry}
%---------------- show page layout. don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\usepackage{tabularray}
\UseTblrLibrary{booktabs, siunitx}
\ExplSyntaxOn
\NewChildSelector{eachtwo}
{
\int_step_inline:nnnn {5}{2}{\l_tblr_childs_total_tl}
{ \clist_put_right:Nn \l_tblr_childs_clist {##1} }
}
\ExplSyntaxOff
\begin{document}
\begin{table}[htb]
\centering
% \small
\begin{tblr}{colsep = 4pt,
colspec = {@{} X[l, m, font=\linespread{0.84}\selectfont,
cmd={\hangafter=1\hangindent=1em}]
*{4}{Q[c, si={table-format=3.3}]}
@{}},
row{1,2} = {font=\small\bfseries},
row{3-Z} = {rowsep = 0.5pt},
row{eachtwo} = {abovesep=1.5ex},
}
\toprule
\SetCell[r=2]{c} Critères d'évaluations
& \SetCell[c=4]{c} {{{Concept}}}
& & & \\
\midrule
& {{{Perform.}}}
& {{{Économie}}}
& {{{Légèreté}}}
& {{{Simplicité}}} \\
\midrule
Précision des images thermiques [mK]
& 50 & 100 & 65 & 65 \\
Résolution spatiale [mm]
& 19 & 3.3 & 19 & 19 \\
Stockage des données [To]
& 4 & 8 & 4 & 12 \\
Résolution temporelle des images thermiques [fps]
& 60 & 64 & 50 & 50 \\
Signal de sortie de la caméra thermique [bits]
& 16 & {{{bites me}}}
& 14 & 14 \\
Interface de communication
& 1 & 1 & 1 & 1 \\
Facilité du pilotage
& 1 & 1 & 1 & 1 \\
Inspection autonome
& 1 & 0.75 & 1 & 1 \\
Vitesse de vol [m/s]
& 10 & 20 & 6 & 10 \\
Résistence au vent [km/h]
& 36 & 64 & 97 & 39.6 \\
Autonomie de vol [min]
& 75 & 34 & 50 & 70 \\
Poids du drone [kg]
& 3.25 & 2.27 & 3.31 & 2.915 \\
Détection humaine à l'intérieur du périmètre radial [m]
& 33.1 & 33.1 & 33.1 & 33.1 \\
Efficacité des mesures d'urgence
& 1 & 1 & 1 & 1 \\
Sécurité constante des données
& 1 & 1 & 1 & 1 \\
Respect constant des conditions de vol
& 1 & 1 & 1 & 0.5 \\
Coût total de production [\$]
& {{{\num{70 744}}}}
& {{{\num{13 920}}}}
& {{{\num{24 128}}}}
& {{{\num{67 130}}}}
\\
\bottomrule
\end{tblr}
\end{table}
\end{document}
使用新版本的软件包(2022B,已经在 CTAN 上可用),代码将变得更加简短和简单。
(红线表示文本区域边框)
答案2
为了获得更好的输出,我会减少行数(参见文档的包裹booktabs
)。
表格非常宽(对于标准页面布局来说太宽了)。前几列中的其他单元格可能也需要多行。软件包tabularx
提供了X
列规范,可占用剩余空间。
下面的示例将第一行设置为左对齐,但它会缩进连续的行,以便视觉提示哪些行属于一起:
\documentclass{article}
\usepackage{array}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{tabularx}
\usepackage[utf8]{inputenc}
\begin{document}
\section{Synth\`ese} \label{s:synthese}
\begin{table}[!ht]
\centering
\small % since the table is still quite broad
\begin{tabularx}{\linewidth}{
>{\raggedright\hangindent1em\hangafter1\relax}X
cccc
}
\toprule
& \multicolumn{4}{c}{\textbf{Concept}} \\
\cmidrule{2-5}
%------------------------------------------------
\textbf{Critères d'évaluations} &
Perfomance & Économie & Légèreté & Simplicité \\
\midrule
%------------------------------------------------
Précision des images thermiques [mK] &
50 & 100 & 65 & 65 \\
%------------------------------------------------
Résolution spatiale [mm] &
19 & 3.3 & 19 & 19 \\
%------------------------------------------------
Stockage des données [To] &
4 & 8 & 4 & 12 \\
%------------------------------------------------
Résolution temporelle des images thermiques [fps] &
60 & 64 & 50 & 50 \\
%------------------------------------------------
Signal de sortie de la caméra thermique [bits] &
16 & bites me & 14 & 14 \\
%------------------------------------------------
Interface de communication &
1 & 1 & 1 & 1 \\
%------------------------------------------------
Facilité du pilotage &
1 & 1 & 1 & 1 \\
%------------------------------------------------
Inspection autonome &
1 & 0.75 & 1 & 1 \\
%------------------------------------------------
Vitesse de vol [m/s] &
10 & 20 & 6 & 10 \\
%------------------------------------------------
Résistence au vent [km/h] &
36 & 64 & 97 & 39.6 \\
%------------------------------------------------
Autonomie de vol [min] &
75 & 34 & 50 & 70 \\
%------------------------------------------------
Poids du drone [kg] &
3.25 & 2.27 & 3.31 & 2.915 \\
%------------------------------------------------
Détection humaine à l'intérieur du périmètre radial [m] &
33.1 & 33.1 & 33.1 & 33.1 \\
%------------------------------------------------
Efficacité des mesures d'urgence &
1 & 1 & 1 & 1 \\
%------------------------------------------------
Sécurité constante des données &
1 & 1 & 1 & 1 \\
%------------------------------------------------
Respect constant des conditions de vol &
1 & 1 & 1 & 0.5 \\
%------------------------------------------------
Coût total de production [\$] &
\num{70 744} & \num{13 920} & \num{24 128} & \num{67 130} \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}