我创建了一个动画的条形图,显示玩家得分(虚构)的目标。
请参见示例的复制数据:
df <- data.frame(Player = rep(c("Aguero", "Salah", "Aubameyang", "Kane"), 6),
Team = rep(c("ManCity", "Liverpool", "Arsenal", "Tottenham"), 6),
Gameday = c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6),
Goals = c(0,1,2,0,1,1,3,1,2,1,3,2,2,2,4,3,3,2,4,5,5,3,5,6),
stringsAsFactors = F)
Run Code Online (Sandbox Code Playgroud)
以下动画条形图由以下代码创建。
# loading required
library(tidyverse)
library(gganimate)
library(png)
Run Code Online (Sandbox Code Playgroud)
编辑: 我想为每个玩家添加以下图标:
icon1.png <- image_read('https://raw.githubusercontent.com/sialbi/examples/master/player1.png')
icon2.png <- image_read('https://raw.githubusercontent.com/sialbi/examples/master/player2.png')
icon3.png <- image_read('https://raw.githubusercontent.com/sialbi/examples/master/player3.png')
icon4.png <- image_read('https://raw.githubusercontent.com/sialbi/examples/master/player4.png')
gap <- df %>%
group_by(Gameday) %>%
mutate(rank = min_rank(-Goals) * 1,
Value_rel = Goals/Goals[rank==1],
Value_lbl = paste0(" ", Goals)) %>%
filter(rank <=10) %>%
ungroup()
gap %>%
group_by(Player) %>%
arrange(Gameday) %>%
mutate(prev.rank = …Run Code Online (Sandbox Code Playgroud)