2016-11-28 88 views
-1

我想画一个barplot,显示了产品生产技术和industry2酒吧在每个峰Barplot与GGPLOT2

library(ggplot2) 
peaks=c(-3:3) 
industry1=c(0.05,0.1,0.2,0.3,0.2,0.1,0.05) 
data1=data.frame(peaks,industry1) 
industry2=c(0.2,0.15,0.12,0.06,0.12,0.15,0.2) 
data2=data.frame(peaks,industry2) 
ggplot(data=data1,aes(x=peaks,y=industry1,fill=industry1) + geom_bar(stat="identity", position="stack") 
gg=g+geom_bar(data=data2,aes(x=peaks,y=industry2,col="blue",show_guide=TRUE)) 

如果我运行它,它说,它不工作

回答

0
library(ggplot2) 
peaks=c(-3:3) 
industry1=c(0.05,0.1,0.2,0.3,0.2,0.1,0.05) 
data1=data.frame(peaks,industry1) 
industry2=c(0.2,0.15,0.12,0.06,0.12,0.15,0.2) 
data2=data.frame(peaks,industry2) 
gg = ggplot(data=data1,aes(x=peaks,y=industry1,fill=industry1)) + geom_bar(stat="identity", position="stack") 
gg 

语法对ggplot()的调用是错误的

0

你的意思是?否则,请提供您正在尝试绘制的示例图像。

library(ggplot2) 
peaks <- c(-3:3) 
industry1 <- c(0.05,0.1,0.2,0.3,0.2,0.1,0.05) 
industry2 <- c(0.2,0.15,0.12,0.06,0.12,0.15,0.2) 
dat <- rbind(data.frame(peaks, industry = industry1, ind = "industry1"), 
      data.frame(peaks, industry = industry2, ind = "industry2")) 
ggplot(dat, aes(peaks, industry, fill = ind)) + 
    geom_bar(stat = "identity", position = "dodge") 
+0

是准确,谢谢 –

0

您可能正在寻找与两个行业合并的数据框。

mrg <- merge(data1, data2, by="peaks") 
mrgmelt <- reshape2::melt(mrg, id="peaks") 
ggplot(mrgmelt, aes(peaks, value, fill=variable)) + 
    geom_bar(position="stack", stat="identity") 

enter image description here