ggcorrplot<-function(df, var, color="#FFFFFF00", stat="signif"){ m.df<-df %>% spread(Cyt, Value) %>% select(-pats) mcor<-cor(m.df, m.df, use="pairwise.complete.obs") # Por defecto usa el método de Pearson. mpval<-Hmisc::rcorr(as.matrix(m.df))$P df<-mcor %>% as.data.frame() %>% add_column(Var1=rownames(mcor),.before=1) %>% gather(Var2, Value, -Var1) df.pval<-mpval %>% as.data.frame() %>% add_column(Var1=rownames(mpval),.before=1) %>% gather(Var2, Value, -Var1) if (stat=="signif"){ df.pval$Value<-gtools::stars.pval(as.numeric(df.pval$Value)) } order<- mcor %>% as.data.frame() %>% add_column(Var1=rownames(mcor),.before=1) %>% clustsort ggplot(df, aes(Var1, Var2, fill=Value))+ scale_x_discrete(limits=order$x)+ scale_y_discrete(limits=order$y)+ theme_heatmap(line.color=color)+ geom_text(data=df.pval, aes(label=round(Value, 2))) }