R geom_tile ggplot2应用了什么类型的统计?

R geom_tile ggplot2应用了什么类型的统计?,r,ggplot2,statistics,heatmap,R,Ggplot2,Statistics,Heatmap,我使用geom\u tile()在同一个图形上绘制3个变量。。。与 tile_ruined_coop<-ggplot(data=df.1[sel1,])+ geom_tile(aes(x=bonus, y=malus, fill=rf/300))+ scale_fill_gradient(name="vr")+ facet_grid(Seuil_out_coop_i ~ nb_coop_init) tile_ruined_coop tile_ru ru coop它使用stat

我使用
geom\u tile()
在同一个图形上绘制3个变量。。。与

tile_ruined_coop<-ggplot(data=df.1[sel1,])+
  geom_tile(aes(x=bonus, y=malus, fill=rf/300))+
  scale_fill_gradient(name="vr")+
  facet_grid(Seuil_out_coop_i ~ nb_coop_init)
tile_ruined_coop

tile_ru ru coop它使用
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)

DF它使用
stat\u 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)
DFscale_fill()和geom_tile()对填充值=rf/300不应用统计信息,或者最好应用stat_identity()。它只计算您使用的颜色数量,然后使用芒塞尔函数“mnsl()”生成颜色。如果只想对显示的颜色应用一些统计信息,则应使用:

scale_colour_gradient(trans = "log")

更改瓷砖之间的颜色不是最好的主意,因为绘图必须具有可比性,并且您可以通过颜色来比较值。希望这有助于将scale_fill()和geom_tile()不应用统计信息,或者更好地将stat_identity()应用于填充值=rf/300。它只计算您使用的颜色数量,然后使用芒塞尔函数“mnsl()”生成颜色。如果只想对显示的颜色应用一些统计信息,则应使用:

scale_colour_gradient(trans = "log")


更改瓷砖之间的颜色不是最好的主意,因为绘图必须具有可比性,并且您可以通过颜色来比较值。希望这有助于

绘制填充值的平均值,在绘制之前,您应该将值聚合起来。比例-颜色-梯度(…)在数据级别上不起作用,但在可视化级别上起作用。 让我们从一个玩具数据框开始,构建一个可重复使用的示例

mydata = expand.grid(bonus = seq(0, 1, 0.25), malus = seq(0, 1, 0.25), type = c("Risquophile","Moyen","Risquophobe"))
mydata = do.call("rbind",replicate(40, mydata, simplify = FALSE))
mydata$value= runif(nrow(mydata), min=0, max=50)
mydata$coop = "cooperative"
现在,在绘制之前,我建议您计算40个值组的平均值,对于此操作,请使用dplyr包:

将数据集准备好使用ggplot2打印:

这就是结果:

您可以确定填充值正是您的值的平均值。

这是您所期望的吗?

要绘制填充值的平均值,您应该在绘制之前聚合值。比例-颜色-梯度(…)在数据级别上不起作用,但在可视化级别上起作用。 让我们从一个玩具数据框开始,构建一个可重复使用的示例

mydata = expand.grid(bonus = seq(0, 1, 0.25), malus = seq(0, 1, 0.25), type = c("Risquophile","Moyen","Risquophobe"))
mydata = do.call("rbind",replicate(40, mydata, simplify = FALSE))
mydata$value= runif(nrow(mydata), min=0, max=50)
mydata$coop = "cooperative"
现在,在绘制之前,我建议您计算40个值组的平均值,对于此操作,请使用dplyr包:

将数据集准备好使用ggplot2打印:

这就是结果:

您可以确定填充值正是您的值的平均值。

这是您所期望的吗?

油箱的Fabio,但是如果我想绘制填充值的平均值,Y怎么做?trans=“mean”不存在:-您想要“risquophile”、“moyen”和“risquophobe”之间的总体平均值吗?我对每个变量池进行了40次模拟,因此我想计算每个变量配置的平均结果。例如,奖金=0,马吕斯=0风险。。。奖金=0马吕斯=2利索。。。所以是onTank的Fabio,但是如果我想画出填充值的平均值,Y怎么做呢?trans=“mean”不存在:-您想要“risquophile”、“moyen”和“risquophobe”之间的总体平均值吗?我对每个变量池进行了40次模拟,因此我想计算每个变量配置的平均结果。例如,奖金=0,马吕斯=0风险。。。奖金=0马吕斯=2利索。。。谢谢你!所以,若我想使用ddply来寻找填充值分组的平均值,通过红利和马吕斯。。。但我想保留所有其他变量?Y如何才能使用
aggregate()
找到解决方案!这可能是很酷的有这种统计解决方案与GGPLOT2TANK你!所以,若我想使用ddply来寻找填充值分组的平均值,通过红利和马吕斯。。。但我想保留所有其他变量?Y如何才能使用
aggregate()
找到解决方案!这可能是很酷的,有这种统计解决方案与GGPLOT2是的,谢谢你法比奥!对于ggplot来说,能够使用填充的基本属性是非常棒的!:-)我认为这两件事倾向于去耦合。ggplot就像是可视化的语法,聚合或dplyr是“数据成形”是的,谢谢Fabio!对于ggplot来说,能够使用填充的基本属性是非常棒的!:-)我认为这两件事倾向于去耦合。ggplot的作用类似于可视化语法,聚合语法或dplyr的作用是“数据成形”
library(dplyr)
data = mydata %>% group_by("bonus","malus","type","coop") %>% summarise(vr=mean(value))
library(ggplot2)
g = ggplot(data, aes(x=bonus,y=malus,fill=vr))
g = g + geom_tile()
g = g + facet_grid(type~coop)