我想创建这样的东西
library(lattice)
splom(~iris[1:4], groups = Species, data = iris,
panel=function(x,y,...) {
panel.abline(0,1)
panel.superpose(x,y,...)
})
library(ggplot2)
library(gridExtra)
library(GGally)
ggpairs(iris,columns=1:4,colour="Species") +
geom_abline(intercept=0,slope=1)
使用 geom_abline
元素时,我收到错误(“二元运算符的非数字参数”)。
我怎样才能让它发挥作用?
最佳答案
您可以使用自定义函数自定义 ggpairs 图。这是来自this question的数据问题是规模,但你可以对你的问题做类似的事情
df <- read.table("test.txt")
upperfun <- function(data,mapping){
ggplot(data = data, mapping = mapping)+
geom_density2d()+
scale_x_continuous(limits = c(-1.5,1.5))+
scale_y_continuous(limits = c(-1.5,1.5))
}
lowerfun <- function(data,mapping){
ggplot(data = data, mapping = mapping)+
geom_point()+
scale_x_continuous(limits = c(-1.5,1.5))+
scale_y_continuous(limits = c(-1.5,1.5))
}
ggpairs(df,upper = list(continuous = wrap(upperfun)),
lower = list(continuous = wrap(lowerfun))) # Note: lower = continuous
关于r - 如何将geom_abline添加到ggpairs?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26780332/