Он использует stat_identity
, как видно из документации. Вы можете легко проверить это:
DF <- data.frame(x=c(rep(1:2, 2), 1),
y=c(rep(1:2, each=2), 1),
fill=1:5)
# x y fill
#1 1 1 1
#2 2 1 2
#3 1 2 3
#4 2 2 4
#5 1 1 5
p <- ggplot(data=DF) +
geom_tile(aes(x=x, y=y, fill=fill))
print(p)
[/g0]
Как вы видите, значение заполнения для комбинации 1/1 равно 5. Если вы используете факторы, это еще более ясно, что происходит:
p <- ggplot(data=DF) +
geom_tile(aes(x=x, y=y, fill=factor(fill)))
print(p)
[/g1]
Если вы хотите изобразить средства, я бы предложил рассчитать их вне ggplot2:
library(plyr)
DF1 <- ddply(DF, .(x, y), summarize, fill=mean(fill))
p <- ggplot(data=DF1) +
geom_tile(aes(x=x, y=y, fill=fill))
print(p)
[/g2]
Это проще, чем пытаться выяснить, может ли stat_summary
играть с geom_tile
каким-то образом (я сомневаюсь).