臭名昭著的 P-I-E
直观地看,饼图可以理解为围绕某个中心轴"包裹"起来的堆叠条形图。方便的是,这种直觉与在 ggplot2 中构建饼图的方式非常契合。
我们提供了代码,用于将 who_disease 数据汇总为一个数据框,其中包含 3 种疾病:measles、mumps 和 other,以及它们在数据中的病例总数。
您的任务是先把空的 ggplot 对象变成一个堆叠条形图,然后通过使用变换 coord_polar(theta = 'y') 将其转换为饼图。
请注意我在美学映射中设置了 x = 1。这是因为此处我们只需要 1 个条形图。关于多个堆叠条形图,我们会在下一课学习!
本练习是课程的一部分
R 中的可视化最佳实践
练习说明
- 在提供的 ggplot 对象上添加柱形几何(
geom_col())。 - 通过添加
coord_polar()切换到极坐标系。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Wrangle data into form we want.
disease_counts <- who_disease %>%
mutate(disease = ifelse(disease %in% c('measles', 'mumps'), disease, 'other')) %>%
group_by(disease) %>%
summarise(total_cases = sum(cases))
ggplot(disease_counts, aes(x = 1, y = total_cases, fill = disease)) +
# Use a column geometry.
___
# Change coordinate system to polar and set theta to 'y'.
___