我正在写一篇长论文,必须添加很多图表,而论文中添加所有这些图表的代码行使得代码难以阅读。
有没有办法,例如创建一个 figure1.tex ... figure20.tex,然后将它们插入到我的主论文中以看起来更干净?
答案1
你问,
有没有办法,例如创建一个
figure1.tex
...figure20.tex
,然后将它们插入到我的主要论文中?
简短回答:是的。
答案稍长一点:是的。首先,创建文件figure1.tex
(可能位于其中) figure<n>.tex
,总体格式如下:<n>
20
\begin{figure}[htbp]
% insert relevant code here
\end{figure}
其次,使用\input
主 tex 文件中的指令将它们加载到所需的位置,例如,
...
\input figure1
...
请注意不是需要指定.tex
扩展名或将文件名括在花括号中(a la \input{figure1}
)。
话虽如此,你也应该找到一个可以代码折叠,即能够选择性地隐藏和显示(即“折叠”)当前正在编辑的文件部分的编辑器。这些代码部分可能包括 LaTeX 文档的序言、整个部分(即从指令开始\section
并运行到下一个指令之前)、整个环境(\section
例如table
、、、、等)等等。现代编辑器可以轻松提供figure
theorem
lstlisting
comment
层级结构或者嵌套tabular
代码折叠。例如,您可以选择“折叠”与环境内的长环境相关的代码table
。
使用可以提供代码折叠功能的编辑器的一个主要好处是,不再需要为了保持整洁和易于管理而维护大量的二级文件;所有代码部分都可以折叠或“展开”,同时保存在一个文件中。
答案2
我从以下解决方案得到ChatGPT。看起来好多了。这个想法是为每个图形创建一个不同的命令,并在需要时调用该命令。虽然我宁愿不创建新的命令,但这是我迄今为止发现的最好的命令。
将每个图形定义为一个命令
figures.tex
:% figures.tex \newcommand{\figureOne}{ \begin{figure}[htbp] \centering \includegraphics[width=0.5\textwidth]{figure1.png} \caption{Caption for Figure 1} \label{fig:figure1} \end{figure} } \newcommand{\figureTwo}{ \begin{figure}[htbp] \centering \includegraphics[width=0.5\textwidth]{figure2.png} \caption{Caption for Figure 2} \label{fig:figure2} \end{figure} } % Define other figures similarly
在您的
main.tex
文件中,在您希望图形出现的任何位置调用以下命令:% main.tex \documentclass{article} \usepackage{graphicx} % Include the figures \input{figures.tex} \begin{document} \section{Introduction} This is some text introducing the figures. % Place figures wherever you want in the document \figureOne \section{Discussion} This section discusses the figures. \figureTwo % You can reference the figures as usual Figure \ref{fig:figure1} shows something interesting. \end{document}