我正在写一篇论文,需要插入各种表格。我已经在 Latex 中创建了一个表格,并将其插入到一个小节中,但在检查 pdf 时,该表格没有出现在该小节中,而是出现在 pdf 的末尾。代码如下:
\usepackage{booktabs}
\usepackage{tabularx}
\newcolumntype{Y}{>{\raggedleft\arraybackslash}X}
\begin{table}[htb]
\caption{Trade volume evolution Costa Rica - EFTA}
\label{tbl:tradeevo-costa-efta}
\begin{tabularx}{\linewidth}{l*{6}{Y}}
\toprule
\multicolumn{7}{l}{\textbf{Total trade by country and by year (in US\$)}} \\
\midrule
& 2003 & 2004 & 2005 & 2006 & 2007 & 2008 & 2009 & 2010 & 2011 & 2012 & 2013 \\[0pt]
& & & & & & & & & & &\\
Iceland & 217485 & 82'034 & 100'930 & 165'910 & 206'076 & 124'758 & 170'320 & 82'184 & 40'581 & 120'586 & 118'403 \\
Liechtenstein & 17'393 & 2'102 & 4'609 & - & 593 & 13'953 & 23'487 & 49'776 & 343 & 992 & 14'691 \\
Norway & 1'495'263 & 6'196'520 & 9'195'019 & 4'795'410 & 9'392'502 & 29'178'247 & 1'705'243 & 8'465'267 & 22'790'298 & 25'114'597 & 28'565'568 \\
Switzerland & 58'469'274 & 74'207'631 & 72'062'971 & 90'193'274 & 111'686'784 & 143'911'048 & 128'379'696 & 135'943'205 & 120'894'216 & 135'890'813 & 156'921'000 \\
Total & 60'199'414 & 80'488'287 & 81'363'530 & 95'154'594 & 121'285'955 & 173'228'006 & 130'278'746 & 144'540'432 & 143'725'438 & 161'126'988 & 185'619'661 \\
\end{tabularx}
\begin{tabularx}{\linewidth}{l*{7}{Y}}
\toprule
\multicolumn{7}{l}{\textbf{Share of total trade (in \%)}} \\
\midrule
Iceland & 0.4\% & 0.1\% & 0.1\% & 0.2\% & 0.2\% & 0.1\% & 0.1\% & 0.1\% & 0.0\% & 0.1\% & 0.1\% \\
Liechtenstein & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & \\
Norway & 2.5\% & 7.7\% & 11.3\% & 5.0\% & 7.7\% & 16.8\% & 1.3\% & 5.9\% & 15.9\% & 15.6\% & 15.4\% \\
Switzerland & 97.1\% & 92.2\% & 88.6\% & 94.8\% & 92.1\% & 83.1\% & 98.5\% & 94.1\% & 84.1\% & 84.3\% & 84.5\% \\
\bottomrule
\end{tabularx}
\end{table}
如果有人能帮助我解决以下问题那就太好了:
a) 表格不在我插入的位置,而是在 pdf 的末尾。如何更改这种情况?
b) 由于表格比较宽,数据似乎没有排序。例如,年份(2003 年至 2013 年)应全部显示在一行中,4 个国家/地区应显示在一列中。相应的数字应按这些年份排序。如何更改这种情况?表格必须小一点吗?还是必须是横向的?也许它太大了,一页放不下?
c) 标题“表 1:xxxxxx”怎么能出现在整个表格下面呢?
答案1
这是一个解决方案。一些评论:
- 你写了两个表,但实际上你只需要一个
- 您定义了 8 列 (
\begin{tabularx}{\linewidth}{l*{7}{Y}}
),但实际上有 13 列!我之所以这么写是l*{12}l
因为... - ...我认为您不需要这里的任何东西
tabularx
或Y
专栏。 - 即使是横向,表格也太大了。我设置了
\footnotesize
字体\setlength{\tabcolsep}{3pt}
和列间距较小,但考虑了转置表格的可能性(使行变成列)。 - 要使表格横向显示,您可以使用包
pdflscape
并在环境中编写表格\begin{landscape}...\end{landscape}
。将所有内容放在\afterpage{...}
(afterpage
包)中可确保表格前后的文本正确换行。 - 正如其他人在评论中所说,表格是一个浮动环境,因此它不会准确地显示在您在代码中编写的位置。即使有解决方案可以实现该行为,但它可能会导致严重的布局问题(尤其是对于像这样大的表格)。也就是说,如果您不使用
\afterpage{...}
它,表格可能会(检查一下)准确地位于您想要的位置(但之前的页面会不够满) - 要想有下面的标题...好吧,就写在下面 ;-)
- 我添加了
\renewcommand{\arraystretch}{1.5}
,以便行之间有更多空间。
代码
\documentclass{article}
\usepackage{booktabs}
\usepackage{pdflscape}
\usepackage{afterpage}
\renewcommand{\arraystretch}{1.5}
\begin{document}
\afterpage{
\begin{landscape}
\begin{table}
\footnotesize
\setlength{\tabcolsep}{3pt}
\begin{tabular}{l*{12}l}
\toprule
\multicolumn{12}{l}{\textbf{Total trade by country and by year (in US\$)}} \\
\midrule
& 2003 & 2004 & 2005 & 2006 & 2007 & 2008 & 2009 & 2010 & 2011 & 2012 & 2013 \\[0pt]
& & & & & & & & & & &\\
Iceland & 217485 & 82'034 & 100'930 & 165'910 & 206'076 & 124'758 & 170'320 & 82'184 & 40'581 & 120'586 & 118'403 \\
Liechtenstein & 17'393 & 2'102 & 4'609 & - & 593 & 13'953 & 23'487 & 49'776 & 343 & 992 & 14'691 \\
Norway & 1'495'263 & 6'196'520 & 9'195'019 & 4'795'410 & 9'392'502 & 29'178'247 & 1'705'243 & 8'465'267 & 22'790'298 & 25'114'597 & 28'565'568 \\
Switzerland & 58'469'274 & 74'207'631 & 72'062'971 & 90'193'274 & 111'686'784 & 143'911'048 & 128'379'696 & 135'943'205 & 120'894'216 & 135'890'813 & 156'921'000 \\
Total & 60'199'414 & 80'488'287 & 81'363'530 & 95'154'594 & 121'285'955 & 173'228'006 & 130'278'746 & 144'540'432 & 143'725'438 & 161'126'988 & 185'619'661 \\
\midrule
\multicolumn{7}{l}{\textbf{Share of total trade (in \%)}} \\
\midrule
Iceland & 0.4\% & 0.1\% & 0.1\% & 0.2\% & 0.2\% & 0.1\% & 0.1\% & 0.1\% & 0.0\% & 0.1\% & 0.1\% \\
Liechtenstein & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & 0.0\% & \\
Norway & 2.5\% & 7.7\% & 11.3\% & 5.0\% & 7.7\% & 16.8\% & 1.3\% & 5.9\% & 15.9\% & 15.6\% & 15.4\% \\
Switzerland & 97.1\% & 92.2\% & 88.6\% & 94.8\% & 92.1\% & 83.1\% & 98.5\% & 94.1\% & 84.1\% & 84.3\% & 84.5\% \\
\bottomrule
\end{tabular}
\caption{Trade volume evolution Costa Rica - EFTA}
\label{tbl:tradeevo-costa-efta}
\end{table}
\end{landscape}}
\end{document}