我正处于与表格属性相关的 LaTeX 大战之中,到目前为止,我已经得到了上面所看到的内容和我下面发布的代码:
\begin{center}
\begin{table}
\begin{tabular} {p{1.2cm}p{0.5cm}p{0.9cm}p{1.2cm}p{0.5cm}p{0.9cm}p{0.5cm}p{1.1cm}p{0.5cm}}
\rowcolor[rgb]{0.34,0.58,0.52} categoria & Durata & 2008 & 2009 & 2010 & 2011 & 2012 & Aggregato & Altro \\
infocommercio\cite{citaz121} & 3Q & 2.9\% & 21.0\% & 15.0\% & 52.5\% & 2.2\% & 1.5\% & 0.9\% \\
camera commercio\cite{citaz2} & 2Q & 33.1\% & 18.1\% & 28.5\% & 36.9\% & 12.7\% & 24.3\% & 18.4\% \\
Istat\cite{citazistat} & 12Q & 15.19\% & 89.76\% & 77.49\% & 65.76\% & 70.4\% & 84.5\% & .30\% \\
\end{tabular}
\caption{Percentuali PET dei GDO lombardi}
\label{tabella_gdo_2}
\end{table}
\end{center}
问题是我可以指定列宽但不能指定填充,所以正如您所看到的,有很多浪费的空间,下面我发布了我希望表格看起来或多或少的样子。
到目前为止,我已经听从了http://en.wikibooks.org/wiki/LaTeX/Tables通过删除列之间的间距,{@{}c@{}c@{}}
但是表格内容被挤压,而列之间的空间保持不变。有人能帮忙吗?
答案1
我的建议是使用tabularx
:
\documentclass{article}
\usepackage[margin=1in]{geometry}% http://ctan.org/pkg/geometry
\usepackage[table]{xcolor}% http://ctan.org/pkg/xcolor
\usepackage{tabularx}% http://ctan.org/pkg/tabularx
\begin{document}
\begin{table}
\begin{tabularx}{\linewidth}{X*{8}{@{\hspace{2mm}}p{13mm}}}
\rowcolor[rgb]{0.34,0.58,0.52} categoria & Durata & 2008 & 2009 & 2010 & 2011 & 2012 & Aggregato & Altro \\
infocommercio[5] & 3Q & 2.9\% & 21.0\% & 15.0\% & 52.5\% & 2.2\% & 1.5\% & 0.9\% \\
camera commercio[6] & 2Q & 33.1\% & 18.1\% & 28.5\% & 36.9\% & 12.7\% & 24.3\% & 18.4\% \\
Istat[7] & 12Q & 15.19\% & 89.76\% & 77.49\% & 65.76\% & 70.4\% & 84.5\% & .30\% \\
\end{tabularx}
\caption{Percentuali PET dei GDO lombardi}
\label{tabella_gdo_2}
\end{table}
\end{document}
在上面的例子中,tabularx
采用宽度参数,指定为\linewidth
。这意味着表格将跨越环境中文本块的宽度table
。此外,为了保持一致性,8 列(2-9)中的每一列都被赋予固定宽度13mm
(使用)p{13mm}
和固定列间隙2mm
(使用@{\hspace{2mm}}
)。也可以使用其他对齐方式,方法是包括array
包裹。然而,当前的 MWE 似乎提供了您所追求的东西。
表格\tabcolsep
两侧仍有一些内边距 (a)。如果需要,也可以修改。
geometry
用于修改页边距,因为似乎有必要在文本块内水平放置那么多信息。