【发布时间】:2020-07-04 09:24:47
【问题描述】:
我是 R 新手,并试图创建一个类似于此处https://klein.uk/teaching/viz/datavis-pyramids/ 的第一个人口金字塔图。我有一个包含两个变量性别和年龄组的数据集,如下所示:
sex age_group
1 Male 20-30
2 Female 50-60
3 Male 70-80
4 Male 10-20
5 Female 80-90
... ... ...
这是我使用的代码
ggplot(data = pyramid_graph(x = age_group, fill = sex)) +
geom_bar(data = subset(pyramid_graph, sex == "F")) +
geom_bar(data = subset(pyramid_graph, sex == "M")) +
mapping = aes(y = - ..count.. ),
position = "identity") +
scale_y_continuous(labels = abs) +
coord_flip()
我没有从 R 中得到任何错误,但是当我执行此代码时会生成一个空白图像。
有人可以帮忙吗? 谢谢
【问题讨论】:
-
你好克拉丽莎,欢迎来到 SO。如果您发布一个最小的可重现示例,您将最大限度地获得有用答案的机会。 This post 可能会有所帮助。具体来说,您需要包含您的输入数据。首先,您的输入数据集至少需要三个变量:年龄组、性别和要绘制的值。其次,我怀疑您的
position="identity")中有一个无与伦比的右括号。第三,使fill=sex具有美感,并且只使用一个geom_bar,并对mapping进行适当的更改。 -
有专门的人口金字塔包,例如名副其实的 pyramid 包。
-
这能回答你的问题吗? drawing pyramid plot using R and ggplot2
标签: r ggplot2 population