没有 facet_grid 的分组堆叠条形图 ggplot2
Grouped stacked barplot ggplot2 without facet_grid
您好,我想使用 ggplot2 和以下数据制作堆叠条形图:
DF <- read.table(text="Rank P_Rank value_Rank P2_Rank
AC 1 250 1
AN 1 100 1
AT 1 155 1
CA 1 90 1
CG 2 630 1
CN 2 150 1
CT 2 384 1
GA 2 485 1
CA 3 94 1
AT 3 75 1
GN 3 163 1
GT 3 97 1
CA 4 63 2
CG 4 16 2
CT 4 140 2
CG 4 610 2
CN 5 46 2
CT 5 330 2
GA 5 150 2
CA 5 67 2
CG 6 130 2
CN 6 250 2
CT 6 484 2
GA 6 185 2", header=TRUE)
ggplot(DF, aes(x = as.factor(P_Rank), y = value_Rank, fill = Rank)) + geom_bar(stat = "identity")
我获得了这个条形图,但我想根据变量 "P2_Rank" 对堆叠条形图进行分组。红色是我想添加的内容(我不喜欢 barplots A 或 B 的 2 个版本,因为它符合我的需求)。
非常感谢!
更新。 原来我没有仔细阅读您的 post -- 我只是注意到您在标题中说了 "without facet_grid"。无论如何我都会把它留在这里,但是投票者应该可以随意删除投票。
你可以尝试分面:
ggplot(DF,
aes(x = as.factor(P_Rank), y = value_Rank, fill = Rank)) +
geom_bar(stat = "identity") +
facet_wrap(~ P2_Rank, scales = "free_x", switch = "x") +
scale_x_discrete("P2_Rank", labels = NULL) +
theme(strip.background = element_blank(),
panel.margin = unit(-1, "lines"))
您好,我想使用 ggplot2 和以下数据制作堆叠条形图:
DF <- read.table(text="Rank P_Rank value_Rank P2_Rank
AC 1 250 1
AN 1 100 1
AT 1 155 1
CA 1 90 1
CG 2 630 1
CN 2 150 1
CT 2 384 1
GA 2 485 1
CA 3 94 1
AT 3 75 1
GN 3 163 1
GT 3 97 1
CA 4 63 2
CG 4 16 2
CT 4 140 2
CG 4 610 2
CN 5 46 2
CT 5 330 2
GA 5 150 2
CA 5 67 2
CG 6 130 2
CN 6 250 2
CT 6 484 2
GA 6 185 2", header=TRUE)
ggplot(DF, aes(x = as.factor(P_Rank), y = value_Rank, fill = Rank)) + geom_bar(stat = "identity")
我获得了这个条形图,但我想根据变量 "P2_Rank" 对堆叠条形图进行分组。红色是我想添加的内容(我不喜欢 barplots A 或 B 的 2 个版本,因为它符合我的需求)。
非常感谢!
更新。 原来我没有仔细阅读您的 post -- 我只是注意到您在标题中说了 "without facet_grid"。无论如何我都会把它留在这里,但是投票者应该可以随意删除投票。
你可以尝试分面:
ggplot(DF,
aes(x = as.factor(P_Rank), y = value_Rank, fill = Rank)) +
geom_bar(stat = "identity") +
facet_wrap(~ P2_Rank, scales = "free_x", switch = "x") +
scale_x_discrete("P2_Rank", labels = NULL) +
theme(strip.background = element_blank(),
panel.margin = unit(-1, "lines"))