R 比例叠加条形图
我试图制作一个堆叠条形图,其中一个变量是第二个变量的比例。数据是R 比例叠加条形图,r,ggplot2,bar-chart,R,Ggplot2,Bar Chart,我试图制作一个堆叠条形图,其中一个变量是第二个变量的比例。数据是 snps2 ors2 orm2 1 ABCA7 0.00000000 0.4140283 2 B1NI 0.00000000 0.3140075 3 CD2AP 0.00000000 0.2087200 4 CD33 0.22665737 0.2266574 5 CLU 0.12221763 0.2444353 6
snps2 ors2 orm2
1 ABCA7 0.00000000 0.4140283
2 B1NI 0.00000000 0.3140075
3 CD2AP 0.00000000 0.2087200
4 CD33 0.22665737 0.2266574
5 CLU 0.12221763 0.2444353
6 CR1 0.00000000 0.3140075
7 EPAH1 0.22665737 0.2266574
8 MS4A4A 0.24443527 0.2444353
9 MS4A4E 0.07696104 0.1539221
10 MSA6A 0.20872003 0.2087200
11 PICALM 0.12221763 0.2444353
12 APOE_e2 0.00000000 -1.3862944
13 APOE_e4 0.00000000 2.6752584
ors2的值始终为orm2值的0%、50%或100%。我已将其重新构造为一个长格式,以便在ggplot2中使用
dat_m <- melt(mydata)
ggplot(dat_m, aes(snps2, value, fill = variable)) + geom_bar(stat = "identity")
dat_m您可能希望使用减淡条形图而不是堆叠条形图:
ggplot(dat_m, aes(snps2, value, fill = variable)) +
geom_bar(stat = "identity", position='dodge')
在堆叠条形图中,值总是求和。否则请更改变量,如
dat$orm2 <- dat$orm2 - dat$ors2
dat$orm2因为在堆叠条形图中,值总是求和的,所以在绘制之前只需减去:orm2=orm2-ors2
require(reshape2)
require(ggplot2)
mydata$orm2_adj=mydata$orm2-mydata$ors2
summary(mydata)
dat_m <- melt(mydata[,-3])
ggplot(dat_m, aes(snps2, value, fill = variable,color=variable)) +
geom_bar(stat = "identity")+
scale_color_manual(values=c("red","transparent"))
require(重塑2)
需要(ggplot2)
mydata$orm2_adj=mydata$orm2 mydata$ors2
摘要(mydata)
达图姆
require(reshape2)
require(ggplot2)
mydata$orm2_adj=mydata$orm2-mydata$ors2
summary(mydata)
dat_m <- melt(mydata[,-3])
ggplot(dat_m, aes(snps2, value, fill = variable,color=variable)) +
geom_bar(stat = "identity")+
scale_color_manual(values=c("red","transparent"))