Я разработал код для создания анимированной дорожки на карте мира.Который я сначала сохраняю как .png, а затем хотел бы превратить в файл .gif.
Я скачал ImageMagick и попробовал то, что было предложено здесь: Создание фильма из серии сюжетов в R но не могу заставить его работать.Может ли кто-нибудь мне помочь?
Это моя библиотека:
library(purrr)
library(magick)
library(ggplot2)
library(animation)
library(png)
library(caTools) # for write.gif
мои данные - это координаты, поэтому что-то вроде этого:
x y
1 100.3 13.4
2 101.3 13.3
3 101.4 13.2
4 101.4 13.0
5 102.4 12.9
6 102.4 12.7
7 103.5 12.5
8 103.5 12.4
9 105.5 12.2
10 105.5 12.1
MP <- NULL
mapWorld <- borders("world", colour="gray50", fill="gray50")
mp <- ggplot() + mapWorld
for (i in 1:10) {
MP[i] <- mp + geom_point(aes(x=df$x[i*10], y=df$y[i*10]) ,color="blue", size=1)
picture_name <- paste0("newsheet",i,".png")
png(filename=picture_name)
MP[[i]]
dev.off()
}
all_images <- list.files(path = "./", pattern = "*.png", full.names = T)
P1 <- readPNG(all_images)
Я ожидаю GIF, который показываетодна координата на карте мира за раз как синяя точка, но единственное, что я до сих пор получил, это то, что R интерпретировал P1 только с одним изображением с этой ошибкой:
Предупреждающее сообщение: Вif (col == "jet") col = colorRampPalette (c ("# 00007F", "blue",: условие имеет длину> 1, и будет использоваться только первый элемент