R 强制ggplot显示2个曲线函数
我有两个功能R 强制ggplot显示2个曲线函数,r,function,ggplot2,R,Function,Ggplot2,我有两个功能y1和y2 如果我单独绘制它们,没有问题(参见前两幅图) 但是,如果我将它们组合在一起,形状看起来是线性的(参见图3) 我怎样才能解决这个问题 x <- seq(0, 50, 1) ;x y1 <- exp(8.9191)+exp^(0.03307*x) y2 <- exp(9.9191)+exp^(0.06307*x) df <- data.frame(x,y1,y2) require(ggplot2) ggplot(df, aes(x)) +
y1
和y2
如果我单独绘制它们,没有问题(参见前两幅图)
但是,如果我将它们组合在一起,形状看起来是线性的(参见图3)
我怎样才能解决这个问题
x <- seq(0, 50, 1) ;x
y1 <- exp(8.9191)+exp^(0.03307*x)
y2 <- exp(9.9191)+exp^(0.06307*x)
df <- data.frame(x,y1,y2)
require(ggplot2)
ggplot(df, aes(x)) +
geom_line(aes(y=y2), colour="red") #Looks nice (curvy)
ggplot(df, aes(x)) +
geom_line(aes(y=y1), colour="blue") #Looks nice (curvy)
ggplot(df, aes(x)) +
geom_line(aes(y=y1), colour="blue") +
geom_line(aes(y=y2), colour="red") #Looks not nice linear
x也许您可以使用facet\u grid()
和scales选项。
您将有两个面,每个面具有不同的y比例
require(reshape2)
mdf <- melt(data.frame(y1, y2))
mdf$x <- x
ggplot(mdf, aes(x = x)) +
geom_line(aes(y = value)) +
facet_grid(variable ~ ., scales = "free_y")
require(重塑2)
中密度纤维板因为它们的规模大不相同?这几乎是不可能调和的:因为有很大的加性常数,即使添加对数垂直刻度也不会有多大帮助。你想比较什么?也许有更好的方法来表示数据。红色曲线代表女性和蓝色男性。所以我试着比较一下男人和女人的区别。在我的示例中,x轴不代表任何东西。然而,你可以想象x轴代表工作经验,y轴代表工资,谢谢,我想这确实是最好的解决方案。