在GGPLOT2散点图上绘制两个数据向量我一直在试验ggplot2
和lattice
来绘制数据面板。我在围绕ggplot2
模型缠绕一些小麻烦。特别是,如何绘制两组数据的每个面板上的散点图:使用R
在lattice
我可以这样做:
xyplot(Predicted_value + Actual_value ~ x_value | State_CD, data=dd)
而且会给我一个面板每个State_CD每列
我可以做一个列有ggplot2
:
pg <- ggplot(dd, aes(x_value, Predicted_value)) + geom_point(shape = 2)
+ facet_wrap(~ State_CD) + opts(aspect.ratio = 1)
print(pg)
我不能神交的是如何Actual_value添加到ggplot以上。
编辑哈德利指出,这可以通过一个可重复的例子更容易。这是似乎工作的代码。用ggplot做更好还是更简洁的方法?为什么添加另一组点到ggplot的语法与添加第一组数据不同?
library(lattice)
library(ggplot2)
#make some example data
dd<-data.frame(matrix(rnorm(108),36,3),c(rep("A",24),rep("B",24),rep("C",24)))
colnames(dd) <- c("Predicted_value", "Actual_value", "x_value", "State_CD")
#plot with lattice
xyplot(Predicted_value + Actual_value ~ x_value | State_CD, data=dd)
#plot with ggplot
pg <- ggplot(dd, aes(x_value, Predicted_value)) + geom_point(shape = 2) + facet_wrap(~ State_CD) + opts(aspect.ratio = 1)
print(pg)
pg + geom_point(data=dd,aes(x_value, Actual_value,group=State_CD), colour="green")
点阵输出看起来是这样的: alt text http://www.cerebralmastication.com/wp-content/uploads/2009/08/lattice.png
和ggplot看起来是这样的: alt text http://www.cerebralmastication.com/wp-content/uploads/2009/08/ggplot.png
如果你提供了一个可重复的例子 – hadley 2009-08-21 20:31:55
是的,这将是一个很好的观点,提供建议会容易得多。我没有创造一个完整的例子是懒惰的。我会努力工作。 – 2009-08-21 20:33:14