latex - 从文件夹中自动在表格中插入多个图像
问题描述
我需要将图像输入到我在乳胶中创建的表中,问题是我有数百个这样的表和各种表要制作,因此我正在寻找一种方法,让我不要在命令。我将所有图像放在一个背页文件夹中,它们都有类似的名称,例如: fake_image_MPI_rank_0_Epoch_92_Batch_400_N_image_16.png
我的桌子看起来像这样:
\begin{table}[H]
\centering
\begin{tabular}{|c|c|c|c|c|c|}}
\hline
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} \\
\hline
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
\includegraphics[width=20mm]{} &
...
...
\end{tabular}
\end{table}
通过在线查看,我意识到这可以通过 for 循环或类似的东西来完成。但是,并没有真正找到很多示例或文档可以让我编写那一堆乳胶代码。有人知道该怎么做吗?
文件名背后的逻辑
纪元:从 0 到 1000 以上,但我只对其中一些感兴趣(比如从 998 到 1000)
批次:从 0 到 400 并以 100 递增(因此 0、100、200、...)
图像:从 1 到 10,增量为 1
MPI_rank:不变(始终为 0)
迭代几个时期(比如从 998 到 1100)并插入所有批次的所有图像将产生足够的内容来创建这些表之一。
解决方案
所有这些图片可能不会放在一个页面上,所以我建议放弃桌子,将它们并排放置。这将是允许分页符的最简单方法。\captionof
您可以使用包中的宏添加标题caption
。
\foreach
如果没有桌子,可以从pgffor
包装中轻松完成循环。如果您需要线条,您可以将图像放入\fbox
es 中,但是在表格中使用这么多线条无论如何都是不好的风格,所以最好将它们删除。
其他一些评论:
不要多次加载同一个包
hyperref
最后加载
\documentclass{article}
\usepackage[utf8]{inputenc}
%\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{amsmath,amsfonts,amssymb}
\usepackage{xcolor}
%\usepackage{url}
\usepackage[margin=1.0in]{geometry}
\usepackage{algorithm}
\usepackage[noend]{algpseudocode}
\usepackage{comment}
\usepackage{ifthen}
\usepackage{placeins}
\usepackage{authblk}
\usepackage{afterpage}
\usepackage{amsthm}
\usepackage{soul}
\usepackage[english]{babel}
%\usepackage{xcolor}
\graphicspath{ {./images/} }
\newtheorem*{remark}{\textbf{Remark}}
\usepackage{subcaption}
\usepackage{textgreek}
\usepackage[font={it}]{caption}
\usepackage{titlesec}
\usepackage{titling}
\usepackage{pgffor}
\usepackage{hyperref}
\date{November 2020}
\begin{document}
\section{Introduction}
In the IMAGES folder i loaded images from epoch 1218 batch 200 to epoch 1220 batch 0
\begingroup
\raggedright%
\foreach \epoche in {998,...,1000}{%
\foreach \batch in {0,100,...,400}{%
\foreach \x in {1,...,10}{%
\includegraphics[width=20mm]{IMAGES/fake_image_MPI_rank_0_Epoch_\epoche _Batch_\batch_N_image_\x }\hspace{0pt}%
}}}
\captionof{table}{Bla Bla bla}
\label{somekey}
\endgroup
\clearpage
\begingroup
\raggedright%
\foreach \epoche in {1219,...,1219}{%
\foreach \batch in {0,100,...,400}{%
\foreach \x in {1,...,10}{%
\fbox{\includegraphics[width=20mm]{IMAGES/fake_image_MPI_rank_0_Epoch_\epoche _Batch_\batch_N_image_\x }}\hspace{0pt}%
}}}
\captionof{table}{Bla Bla bla}
\label{somekeyy}
\endgroup
\end{document}
推荐阅读
- regex - 正则表达式:PCRE 原子组不起作用
- sql - 如何使用 LISTAGG 和 Regexp_replace 获得不同的值
- c# - 删除某些控件后如何删除(删除)文本框之间的空格?
- c++ - 在c ++中使用向量在带有循环的动态数组中插入值
- javascript - 变量未定义(TypeError:无法读取属性'todos' of null)ReactJS
- java - 自动化 POST 请求的 Java 后台服务
- html - Bootstrap 下拉菜单不会在不滚动的情况下在附加位置打开
- deep-learning - 我可以在更差的 GPU 上运行预训练模型吗?
- angular - 告诉 Angular 组件重新加载
- ruby-on-rails - Rails 范围内的时区独立到期日比较