r-ggplot中的facet包装出现问题



我在ggplot中设置一个包含三个变量的facet wrap有点困难,其中两个是点,第三个是线。应该有十二个图(每个月一个,这是镶嵌图(,位置沿着x,数量沿着y。三个变量是OSM、DRP和Demand。这是样本数据(实际数据包括12个月,每月30个地点(。我把它作为代码添加,因为我不知道如何把Excel数据添加到堆栈溢出。

到目前为止,我生成的代码如下,但它不起作用。我也不知道如何把这三个变量变成一个传说。如有任何协助,我们将不胜感激。

library(ggplot2)
parts$Location<-as.factor(parts$Location)
parts$OSM<-as.factor(parts$OSM)
parts$DRP<-as.factor(parts$DRP)
parts$Demand<-as.factor(parts$Demand)
parts$Month<-as.factor(parts$Month)
data=data.frame(parts$Location,parts$Month,parts$OSM,parts$DRP,parts$Demand)
# Faceting
ggplot(data)+geom_point(stat = "identity", aes(y=parts$OSMparts, x=parts$Location,pch=4,col="red" )) + 
geom_point(stat = "identity", aes(y=parts$DRPparts, x=parts$Location,pch=16,col="blue" ))+
geom_line(stat = "identity", aes(y=parts$Demandparts, x=parts$Location,col="green" ))
facet_wrap(~parts$Month)

Location    Month   OSM Demand  DRP
1   January 0   0   1
2   January 2   0   2
3   January 0   1   0
4   January 0   0   1
5   January 2   0   2
1   February    0   0   0
2   February    2   2   2
3   February    0   0   0
4   February    1   1   0
5   February    1   1   2
1   March   0   0   0
2   March   2   4   2
3   March   0   1   0
4   March   2   2   1
5   March   2   2   2
1   April   0   0   NA
2   April   2   2   NA
3   April   0   0   NA
4   April   1   1   NA
5   April   2   4   NA
1   May 0   0   NA
2   May 1   0   NA
3   May 0   0   NA
4   May 2   2   NA
5   May 2   0   NA
1   June    0   0   0
2   June    3   6   2
3   June    0   0   0
4   June    1   3   1
5   June    2   7   2
1   July    0   0   0
2   July    3   3   3
3   July    0   1   0
4   July    3   4   2
5   July    3   4   3
1   August  0   1   0
2   August  3   3   3
3   August  0   0   0
4   August  4   6   3
5   August  3   6   3
1   September   0   0   1
2   September   3   0   3
3   September   0   0   1
4   September   2   3   3
5   September   3   1   4
1   October 0   0   0
2   October 2   1   2
3   October 0   0   0
4   October 4   3   3
5   October 3   1   3
1   November    0   0   0
2   November    2   1   2
3   November    0   1   0
4   November    5   7   3
5   November    4   5   3
1   December    0   0   0
2   December    2   5   2
3   December    0   0   0
4   December    2   0   4
5   December    5   13  3

解决方案远比您想要的简单。

ggplot(parts) +
geom_point(aes(x=Location, y=OSM, col="blue"), pch=16)+
geom_point(aes(x=Location, y=DRP, col="red"), pch=16)+
geom_line(aes(x=Location, y=Demand, col="green"))+
facet_wrap(~factor(Month, levels = month.name))+
scale_colour_discrete(name  ="Label",
labels=c("DRP", "Demand","OSM"))

相关内容

  • 没有找到相关文章

最新更新