我正在尝试为此facet_grid添加回归线,但我似乎遇到了问题。
qplot(date, data=ua, geom="bar",
weight=count,
ylab="New User Count",
xlab='Date',
main='New Users by Type Last 3 Months',
colour=I('lightgreen'),
fill=I('grey')) +
facet_grid(un_region~role, scales='free', space='free_y') +
opts(axis.text.x =theme_text(angle=45, size=5))
以下是我正在使用的数据示例,请注意计数需要求和,这就是为什么我使用weight = count,不确定是否有更好的方法。
date role name un_region un_subregion us_state count
1 2012-06-21 ENTREPRENEUR Australia Oceania Australia and New Zealand 2
2 2012-06-21 ENTREPRENEUR Belgium Europe Western Europe 1
感谢。
答案 0 :(得分:3)
我不确定你是在绘制斜坡,因为看起来你正在使用条形图。有三种方法可以做到,我将说明两种。如果您有实际的xy数据并且想要按facet拟合各个回归线,只需使用stat_smooth(method="lm")
即可。这是一些代码:
library(ggplot2)
x <- rnorm(100)
y <- + .7*x + rnorm(100)
f1 <- as.factor(c(rep("A",50),rep("B",50)))
f2 <- as.factor(rep(c(rep("C",25),rep("D",25)),2))
df <- data.frame(cbind(x,y))
df$f1 <- f1
df$f2 <- f2
ggplot(df,aes(x=x,y=y))+geom_point()+facet_grid(f1~f2)+stat_smooth(method="lm",se=FALSE)
这会产生:
或者您可以使用geom_abline()
命令设置自己的拦截和斜率。这是一个使用覆盖在条形图上的钻石数据集的示例,也许是您正在寻找的。 p>
您可以使用此代码段查看仅包含散点图的示例
ggplot(df,aes(x=x,y=y))+geom_point()+facet_grid(f1~f2)+geom_abline(intercept = 0, slope = 1 )