我正在寻找一种方法来标记带百分比的堆积条形图,而y轴显示原始计数(使用ggplot).这是没有标签的情节的MWE:
library(ggplot2)
df <- as.data.frame(matrix(nrow = 7, ncol= 3,
data = c("ID1", "ID2", "ID3", "ID4", "ID5", "ID6", "ID7",
"north", "north", "north", "north", "south", "south", "south",
"A", "B", "B", "C", "A", "A", "C"),
byrow = FALSE))
colnames(df) <- c("ID", "region", "species")
p <- ggplot(df, aes(x = region, fill = species))
p + geom_bar()
Run Code Online (Sandbox Code Playgroud)
我有一个更大的桌子,R很好地计算每个地区的不同物种.现在,我想展示原始计数值(最好在y轴上)和百分比(作为标签)来比较区域之间物种的比例.
我试了很多东西,geom_text()
但我认为与其他问题(例如这一个)的主要区别在于
任何帮助深表感谢!!
我准备了一个MWE,希望能帮助我们在x轴的不同位置设置刻度和标签,以获得分组条形图.
library(ggplot2)
library(reshape2)
data <- data.frame(name = c("X","Y","Z"), A = c(2,4,6), B = c(1,3,4), C = c(3,4,5))
data <- melt(data, id = 1)
ggplot(data, aes(name,value)) +
geom_bar(aes(fill = variable), position = "dodge", stat = "identity")
Run Code Online (Sandbox Code Playgroud)
刻度应显示在组之间,但标签位于分组条形下方(如图中所示).我尝试设置用户定义的中断(作为因子),scale_x_discrete
但它只使我的刻度和标签完全消失.
任何帮助深表感谢!