【发布时间】:2020-05-29 11:59:21
【问题描述】:
我目前有一个结构为as below的数据框:
Establishment.date Species Shade.Tol Ele Kipuka
1 1980 PSEMEN Intolerant Under 1050m On Kipuka
2 1981 PINCON Intolerant Above 1050m On Kipuka
3 1981 ABIPRO Intolerant Under 1050m On Kipuka
4 1981 ABIPRO Intolerant Under 1050m On Kipuka
5 1981 ABILAS Tolerant Above 1050m On Kipuka
6 1982 ABILAS Tolerant Above 1050m On Kipuka
7 1983 PSEMEN Intolerant Under 1050m On Kipuka
8 1984 TSUHET Tolerant Under 1050m On Kipuka
9 1984 TSUHET Tolerant Under 1050m On Kipuka
10 1984 PSEMEN Intolerant Under 1050m On Kipuka
11 1984 PINCON Intolerant Under 1050m On Kipuka
12 1984 ABIPRO Intolerant Above 1050m On Kipuka
13 1984 ABIPRO Intolerant Above 1050m On Kipuka
我正在尝试制作一个条形图,以突出显示在高海拔和低海拔地区出现的设施数量,这些设施的数量由它们的阴影容差构成,并将每个类别的数量显示为标签。我目前的方法是过滤数据框以获得新的汇总数据框,如下所示as below:
# A tibble: 9 x 4
# Groups: Establishment.date, Shade.Tol [7]
Establishment.date Shade.Tol Ele count
<int> <fct> <fct> <int>
1 1980 Intolerant Under 1050m 1
2 1981 Intolerant Above 1050m 1
3 1981 Intolerant Under 1050m 2
4 1981 Tolerant Above 1050m 1
5 1982 Tolerant Above 1050m 1
6 1983 Intolerant Under 1050m 1
7 1984 Intolerant Above 1050m 2
8 1984 Intolerant Under 1050m 2
9 1984 Tolerant Under 1050m 2
并将新信息绘制到 ggplot 中,如下所示:
cores_clean %>%
group_by(Establishment.date,Shade.Tol,Ele) %>%
summarise(count = n()) %>%
ggplot(aes(x = Ele, y=count, label=count)) +
geom_bar(stat = "identity",position = "dodge") +
geom_text(aes(label=count),size = 3)+
facet_wrap(~ Shade.Tol)+
#scale_fill_grey()+
theme_bw() +
labs(x = "Elevation Range",
y = "Count",
title = "Establishments")+
theme(plot.title = element_text(hjust = 0.5))
但是当我运行代码时,图形输出会打印出如下堆叠的一行值,
不代表在数据框中找到的那些 (n=740)。我尝试添加geom_text(aes(label=sum(count))),但打印的数字位置相同,并且观察的总数重复了多次。不确定我是否错误地过滤了数据或没有正确地将其添加到 ggplot。
【问题讨论】:
-
请包含您的数据,例如发布
cores_clean %>% group_by(Establishment.date,Shade.Tol,Ele) %>% summarise(count = n()) %>% dput的输出 -
@Roman 我将输出发布为图像,其中显示“新汇总数据框”。如果这就是您的意思,我不确定如何在此处上传 csv 文件
-
数据集的图像没有那么有用。将@Roman 中的代码输入到控制台,它应该会为您提供以
structure(...开头的输出。将该输出作为代码直接复制并粘贴到您的问题中。它将允许其他人复制和粘贴该代码以重新创建您的精确数据框。