Это очень хороший вопрос!
Сначала давайте случайным образом выберем, сколько изображений мы хотим, а затем автоматически рассчитаем, сколько строк / столбцов нам потребуется.
# Number of images from 1 to 100
N <- sample(1:1e2, 1)
print(N)
[1] 84
# How many rows/columns we will need
X <- ceiling(sqrt(N))
print(X)
[1] 10
Создать пустую панель, используя multipanelfigure
пакет с X
строками и столбцами:
library(multipanelfigure)
figure <- multi_panel_figure(columns = X, rows = X)
# Iterate from 1 to N images and append them to figure
for(i in seq_len(N)) {
# "./R.png" is path to image I'm using
# With this package you don't need to worry about importing images
figure %<>% fill_panel("./R.png", label = "", scaling = "shrink")
}
![enter image description here](https://i.stack.imgur.com/NeXtY.png)