我有一个表格,最后一列超出了页面。我不想缩小文本,而是希望表格不遵守其开始处的边距。我想将其移到左侧。我正在使用flushleft
,但不起作用。以下是代码:
\begin{figure}
\begin{flushleft}
\begin{tabular}{l|l|l|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\multicolumn{21}{l}{a)text}\\ \hline
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20\\ \hline
day1&9.2&8.6&8.1&6.3&7.7&7.3&8.0&8.4&5.9&6.8&7.3&7.6&9.0&7.4&6.6&7.0& 5.3&7.0&8.0&5.2\\
day2&6.7&6.9&0&7.0&0&8.1&9.0&6.1&0&6.9&0&7.3&7.8&5.3&0&8.9&0&8.4&8.4&7.5\\
day3&0&5.2&0&0&7.5&0&0&8.2&0&0&5.4&0&0&8.3&0&0&7.7&0&0&7.3
\end{tabular}
\end{flushleft}
\caption{\label{fig:text}text experiment}
\end{figure}
可以修改什么?有哪些可能的解决方案?
答案1
您可以adjustwidth
使用changepage
包裹它允许您从左侧或右侧加宽或缩短页面宽度。
我加载了geometry
包裹这样showframe=true
您就可以看到页面边界在哪里。
\documentclass{article}
\usepackage[showframe=true]{geometry}
\usepackage{changepage}
\begin{document}
\begin{figure}
\begin{adjustwidth}{-2cm}{}
\begin{tabular}{l|l|l|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\multicolumn{21}{l}{a)text}\\ \hline
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20\\ \hline
day1&9.2&8.6&8.1&6.3&7.7&7.3&8.0&8.4&5.9&6.8&7.3&7.6&9.0&7.4 &6.6&7.0&5.3&7.0&8.0&5.2\\
day2&6.7&6.9&0&7.0&0&8.1&9.0&6.1&0&6.9&0&7.3&7.8&5.3&0&8.9&0&8.4&8.4&7.5\\
day3&0&5.2&0&0&7.5&0&0&8.2&0&0&5.4&0&0&8.3&0&0&7.7&0&0&7.3
\end{tabular}
\caption{\label{fig:text}text experiment}
\end{adjustwidth}
\end{figure}
\end{document}
答案2
实现它的最简单的方法是 插入\hskip-4.0cm\begin{tabular}
...。\end{figure}
这hskip-4.0cm
将告诉 LaTeX 将框向左移动 4.0cm。
答案3
我建议不要将表格移动到任意距离,而是调整表格大小或使其居中。LaTeX 将完成繁琐的工作,确定表格在页面上适合的距离。该graphicx
包将允许在\figure
或\table
环境中调整大小。只需将您的\tabular
或\includegraphics
括在
\resizebox{1 \textwidth}{!}{
.
.
}
类似地,makebox
使表格和图形居中:
\makebox[1 \textwidth][c]{
.
.
}
将输入更改为 ,\resizebox{<width>}{<height>}
直至您认为合适。请注意,这些输入可以超出 的边界makebox
。请参阅以下示例:
\documentclass{article}
\usepackage{graphicx} % enable graphics, images and resizebox
\usepackage{multicol} % enable multicolumn
\usepackage{lipsum} % generate example text
\begin{document}
\section{Before}
\begin{figure}[!h]
\begin{tabular}{l|l|l|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\multicolumn{21}{l}{a)text}\\ \hline
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20\\ \hline
day1&9.2&8.6&8.1&6.3&7.7&7.3&8.0&8.4&5.9&6.8&7.3&7.6&9.0&7.4&6.6 &7.0&5.3&7.0&8.0&5.2\\
day2&6.7&6.9&0&7.0&0&8.1&9.0&6.1&0&6.9&0&7.3&7.8&5.3&0&8.9&0&8.4&8.4&7.5\\
day3&0&5.2&0&0&7.5&0&0&8.2&0&0&5.4&0&0&8.3&0&0&7.7&0&0&7.3
\end{tabular}
\caption{\label{fig:text}text experiment}
\end{figure}
\section{Resize}
\begin{figure}[!h]
\resizebox{1 \textwidth}{!}{ %resize table
\begin{tabular}{l|l|l|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\multicolumn{21}{l}{a)text}\\ \hline
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20\\ \hline
day1&9.2&8.6&8.1&6.3&7.7&7.3&8.0&8.4&5.9&6.8&7.3&7.6&9.0&7.4&6.6 &7.0&5.3&7.0&8.0&5.2\\
day2&6.7&6.9&0&7.0&0&8.1&9.0&6.1&0&6.9&0&7.3&7.8&5.3&0&8.9&0&8.4 &8.4&7.5\\
day3&0&5.2&0&0&7.5&0&0&8.2&0&0&5.4&0&0&8.3&0&0&7.7&0&0&7.3
\end{tabular}
} %close resize
\caption{\label{fig:text2}text experiment}
\end{figure}
\section{Center}
\begin{figure}[!h]
\makebox[1 \textwidth][c]{ %centering table
\resizebox{1.3 \textwidth}{!}{ %resize table
\begin{tabular}{l|l|l|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|}
\multicolumn{21}{l}{a)text}\\ \hline
& 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10& 11& 12& 13& 14& 15& 16& 17& 18& 19& 20\\ \hline
day1&9.2&8.6&8.1&6.3&7.7&7.3&8.0&8.4&5.9&6.8&7.3&7.6&9.0&7.4&6.6&7.0&5.3&7.0&8.0&5.2\ day2&6.7&6.9&0&7.0&0&8.1&9.0&6.1&0&6.9&0&7.3&7.8&5.3&0&8.9&0&8.4&8.4&7.5\ day3&0&5.2&0&0&7.5&0&0&8.2&0&0&5.4&0&0&8.3&0&0&7.7&0&0&7.3
\end{tabular}
} %close resize
} %close centering
\caption{\label{fig:text3}text experiment}
\end{figure}
\lipsum[1-1]
\end{document}
这将生成以下包含虚拟文本的文档,以便与边距进行比较。
答案4
简单回答:如果你想向左移动 6 个 em,你可以这样做
\hspace*{-6em}
\begin{tabular}{ m{5em} m{14em} m{17em} m{4em} }
\hline
\textbf{Year} & \textbf{Degree/Certificate} & \textbf{Institute} & \textbf{CGPA}
\end{tabular}