我有一个模拟 NFL 赛季的数据框,它有 2 列:团队和排名。我正在尝试使用 ggridges 绘制每个团队在 1-10 的每个级别的频率分布图。我可以让情节正常工作,但我想在每个箱子中显示每个团队/排名的计数。到目前为止,我一直没有成功。
ggplot(results,
aes(x=rank, y=team, group = team)) +
geom_density_ridges2(aes(fill=team), stat='binline', binwidth=1, scale = 0.9, draw_baseline=T) +
scale_x_continuous(limits = c(0,11), breaks = seq(1,10,1)) +
theme_ridges() +
theme(legend.position = "none") +
scale_fill_manual(values = c("#4F2E84", "#FB4F14", "#7C1415", "#A71930", "#00143F", "#0C264C", "#192E6C", "#136677", "#203731"), name = NULL)
这创造了这个情节:
我尝试在这一行中添加以将计数添加到每个 bin,但它不起作用。
geom_text(stat='bin', aes(y = team + 0.95*stat(count/max(count)),
label = ifelse(stat(count) > 0, stat(count), ""))) +
不是确切的数据集,但这应该足以至少运行原始图:
results = data.frame(team = rep(c('Jets', 'Giants', 'Washington', 'Falcons', 'Bengals', 'Jaguars', 'Texans', 'Cowboys', 'Vikings'), 1000), rank = sample(1:20,9000,replace = T))