用不同的x轴在R中绘制两条直线

用不同的x轴在R中绘制两条直线,r,R,我有两个数据帧x和y,我必须合并 然后我想画两条线: 第1行=来自x数据帧的“vol” 第2行=来自y数据帧的“vol” 这两条线在x轴上都应有“走向” 我遇到了一些错误。我认为这是因为x轴不一样 你能帮忙吗 我真的很想用ggplot 以下是您可以运行的我的代码: x<- data.frame(strike= c(1,2,2.5,7), term= c("H15"), Vol = c(6,7,8,9), file="a") x y<- data.frame(strike= c(1,2

我有两个数据帧x和y,我必须合并

然后我想画两条线:

第1行=来自x数据帧的“vol” 第2行=来自y数据帧的“vol”

这两条线在x轴上都应有“走向”

我遇到了一些错误。我认为这是因为x轴不一样

你能帮忙吗

我真的很想用ggplot

以下是您可以运行的我的代码:

x<- data.frame(strike= c(1,2,2.5,7), term= c("H15"), Vol = c(6,7,8,9), file="a")
x
y<- data.frame(strike= c(1,2,2.75,7), term=c("H15"), Vol = c(7,9,10,12),file="b")
y
main<- merge(x,y, by = "strike", all= TRUE)
main

strikes<- factor(main$strike,levels=c(main$strike),ordered=TRUE)
strikes

stacked <- data.frame(time=strikes, value =c(c(x$Vol), c(y$Vol)) , variable =   rep(c("a","b"), each=NROW(x[,1])))  
stacked

MyPlot<- ggplot(stacked, aes( x = time,  y=value, colour=variable, group= variable)  )   +   geom_line()  
MyPlot

x您可以使用
restrape2
gpplot2

library(ggplot2)
ggplot(data, aes(x=strike,  y=value, colour=variable))   +  geom_point()+ geom_line() 
首先,让我们融化您的数据:

library(reshape2)
x.melt<-melt(x[,c("strike", "Vol")], id="strike")
y.melt<-melt(y[,c("strike", "Vol")], id="strike")
x.melt[, "variable"] <-"Vol.x"
y.melt[, "variable"] <-"Vol.y"
data <- rbind(x.melt, y.melt)
不,我们可以将其用于
gpplot2

library(ggplot2)
ggplot(data, aes(x=strike,  y=value, colour=variable))   +  geom_point()+ geom_line() 
结果是:


提供的示例代码存在一些问题-堆叠的
对象具有大小不同的向量,因此无法绑定到数据帧中。请验证。这就是问题……哦。。。我以为这只是个阴谋问题。