首页 > 解决方案 > 修复动画地图

问题描述

我正在对我一直在制作的动画地图进行最后润色;以下是总共的代码:

library(ggmap)
library(lubridate)
library(ggplot2)
library(dplyr)
library(data.table)
library(ggrepel)
library(tidyverse)
library(tibble)
library(gganimate)
library(gifski)
register_google(key = )

file <- file.choose(new = TRUE)
origAddress <- read.csv(file name, header = TRUE, stringsAsFactors = FALSE)

Minneapolis <- ggmap(get_googlemap(center = c(lon = -93.2638397, lat = 44.979969),
                                   zoom = 12, scale = 2,
                                   maptype = "terrain",
                                   color = "color"))

Properties <- data.frame(origAddress)
Properties

ghost_points_ini <- tibble(
  Closing.Date = as.numeric(2004/8),
  lon = 0, lat = 0)
ghost_points_fin <- tibble(
  Closing.Date = seq(as.numeric(2019/10),
                     as.numeric(2023/10),
                     by = "Year"),
  lon = 0, lat = 0)

Final_View <- Minneapolis + geom_point(aes(x = lon, y = lat, color = Year), data = Properties, size = 1) +
  geom_point(aes(x = lon, y = lat, size = 1),                
             data = ghost_points_ini, alpha = 0) +
  geom_point(aes(x = lon, y = lat, size = 1),
             data = ghost_points_fin, alpha = 0) +
  transition_time(Year) +
  shadow_mark(past = TRUE) +
  labs(title = "title")

animate(Final_View, nframes = 500)

有四件事并没有像我希望的那样出现,无论我做了多少修补和谷歌搜索,我都无法修复它们,所以任何提示或指向正确的方向都会有所帮助:

首先,地图是按年份制作的,所以点是按事件发生的年份绘制的。但是,我希望让它们简单地出现,但我的代码中的某些东西使它们从以前的事件中“移动”,而不是仅仅出现。有什么我需要添加到我的代码中以使每个点出现而不是痕迹吗?

其次,在地图的一侧是颜色的图例,但在其上方是另一个图例,它只是一个写着“大小”的白色方块。我怎样才能摆脱这个?

第三,目前我有一个标准标题,它不会随着地图的动画而改变,但我想改变它,以便随着每年的流逝,它会将标题更改为那一年。我认为制作我的代码:

labs(title = "{Year}")

会让我这样做,但是使上面的代码似乎完全改变了我的整个动画,因此当我调用它时它甚至不会出现。以上我错了怎么办?

第四,我试图在代码中包含一些在“真实”点开始添加之前和之后的点,所以会有一个停顿,尤其是在最后。对于最后的暂停,我添加了ghost_points_fin一点,但它不会使地图暂停,以便人们能够在几秒钟内看到最终产品。我输入的seq零件有误吗?

感谢您的任何帮助。

标签: ranimationmapsmappinggganimate

解决方案


推荐阅读