如何在R的gganimate动画中放大已映射的点尺寸?
解决gganimate中点尺寸放大无效的问题
你的代码里有两个关键问题导致scale_size_continuous的设置没生效:
- 图层连接符号缺失:
scale_size_continuous(range = c(5, 100))这一行末尾没加+号,ggplot会把这行当成独立代码,不会把尺寸缩放规则加入到绘图对象里。 - 函数拼写错误:你写的
ntransition_time是错的,gganimate里控制时间过渡的正确函数是transition_time()。
修正后的完整代码如下:
p <- ggplot(gapminder, aes(gdpPercap, lifeExp, size = pop, color=continent)) + geom_point(alpha=0.5) + scale_size_continuous(range = c(5, 100)) + # 补上+号 scale_x_log10() + theme_bw() + labs(title = "year; {frame_time}", x= "GDP", y= "LE") + transition_time(year) # 修正函数名 animate(p, renderer = gifski_renderer())
另外提醒:如果设置range = c(5,100)后点的尺寸过大、重叠严重,可以适当降低上限值(比如改成c(3,30)),根据实际可视化效果调整即可。
内容的提问来源于stack exchange,提问作者Anna Ridgway
相关产品推荐
相关产品推荐

