R:具有基于组的颜色的热图,包括灰色的NA值和包括的字符

抓住他们

我正在尝试使用ggplot和geom_tile创建一个热图。填充颜​​色基于我的x值,而alpha基于值。基于一个小示例(左),我希望我的绘图看起来类似于此示例(右)。两个问题:

  1. 我在我的alpha比例尺上遇到字符元素错误-是否可以将它们像NA一样对待/忽略它们?
  2. 实际NA值使用与其所属组相同的颜色上色,而不是全部用灰色填充。

在此处输入图片说明

实际的数据要大得多,并且包含多个方面。.希望这不会弄乱任何可能的解决方案。这是我的示例数据集和我的(半工作)代码:


X <- rep(st, each=3)
Y <- rep(st, times=3)

Values<- c('Apple', 2,3,NA, "Banana", 3,1,2,"Pear")

Data <- data.frame(X,Y,Values)

ggplot(Data, mapping = aes(x=X, y=Y, fill=X, 
                           alpha=Values # excluding this part I get a result, just not as I want it
       )) + 
  geom_tile(colour="white") +
  ylab("Y") + 
  xlab("X")+
  scale_fill_manual("Assay", 
                    values = c( 'red', 'yellow', 'green'),
                    na.value = 'grey')+
  scale_alpha("Value", na.value = 0.02)+
  ggtitle("Results Summary")+       
  theme( strip.text.y.left = element_text(angle = 0))+
  geom_text(label=Data$Values)

在此先感谢您的帮助:)

斯蒂芬

您的第一个问题可以通过转换Values为数字来解决,即映射as.numeric(Values)alpha

关于第二个问题。当您X在填充上绘制地图时,瓷砖会根据进行着色X如果要以不同的方式填充NA和瓷砖,X==Y则必须相应地定义填充颜色。为此,我的方法fill在df中添加了一个列,并使用scale_fill_identity

请注意,我将alphafill移至,geom_tile这样它们就不会传递给geom_text...

...并按照@AllanCameron的建议,我颠倒了“ Y”的顺序,以使绘图与您所需的输出一致。

library(ggplot2)
library(dplyr)

X <- rep(c('Apple', "Banana", "Pear"), each=3)
Y <- rep(c('Apple', "Banana", "Pear"), times=3)
Y <- factor(Y, levels = c("Pear", "Banana", "Apple"))

Values<- c('Apple', 2,3,NA, "Banana", 3,1,2,"Pear")

Data <- data.frame(X,Y,Values)
Data <- Data %>% 
  mutate(fill = case_when(
    is.na(Values) ~ "grey",
    X == Y ~ "white",
    X == "Apple" ~ "red",
    X == "Banana" ~ "yellow",
    X == "Pear" ~ "green"
  ))

ggplot(Data, mapping = aes(x=X, y=Y)) + 
  geom_tile(aes(fill=fill, alpha=as.numeric(Values)), colour="white") +
  ylab("Y") + 
  xlab("X")+
  scale_fill_identity("Assay") +
  scale_alpha("Value")+
  ggtitle("Results Summary")+       
  theme(strip.text.y.left = element_text(angle = 0))+
  geom_text(aes(label=if_else(!is.na(Values), Values, "NA")))
#> Warning in FUN(X[[i]], ...): NAs introduced by coercion

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在R中,如何过滤数据框以仅包括具有> = 2个非NA值的行?

来自分类Dev

基于最大值和最小值的热图颜色范围

来自分类Dev

如何基于先验信息在具有时间维度的R数据帧中包括缺失的观测值?

来自分类Dev

组“加权”是指具有多个分组变量并且不包括自己的组值

来自分类Dev

具有自定义颜色的离散值的matplotlib热图

来自分类Dev

包括NA气泡图的频率

来自分类Dev

R + ggplot:热图。如果值='X',则为特定颜色

来自分类Dev

熊猫和Seaborn-没有颜色的热图

来自分类Dev

R中具有分类变量和系统发生树的热图

来自分类Dev

具有更改y值的Matplotlib热图

来自分类Dev

具有DataFrame的热图

来自分类Dev

具有字符串的结构,包括适当的内存管理

来自分类Dev

绘制2D数据:具有不同颜色图的热图

来自分类Dev

绘制2D数据:具有不同颜色图的热图

来自分类Dev

CMake生成的具有系统和标准的c ++项目包括

来自分类Dev

频率值作为颜色变量的热图

来自分类Dev

Matlab调整热图轴和颜色

来自分类Dev

Matlab调整热图轴和颜色

来自分类Dev

R中的传单上的热图颜色

来自分类Dev

R Shiny-同时过滤两个表格和热图(具有固定宽度的单元格)

来自分类Dev

如何在semPaths中包括p值和R平方?

来自分类Dev

包括注册和登录的序列图

来自分类Dev

Excel:对一组行中的值进行平均,但仅当它们在列中具有特定值时才包括它们

来自分类Dev

如何为求和列创建具有不同颜色范围的热图?

来自分类Dev

贪婪的Python RegEx捕获组包括“和”

来自分类Dev

具有热键和热字符串的自动热键

来自分类Dev

R:具有n个组的条形图,可堆叠2个值

来自分类Dev

R-具有基于值的透明度的条形图?

来自分类Dev

ActiveRecord范围基于子范围条件,并包括那些具有该条件的孩子?

Related 相关文章

  1. 1

    在R中,如何过滤数据框以仅包括具有> = 2个非NA值的行?

  2. 2

    基于最大值和最小值的热图颜色范围

  3. 3

    如何基于先验信息在具有时间维度的R数据帧中包括缺失的观测值?

  4. 4

    组“加权”是指具有多个分组变量并且不包括自己的组值

  5. 5

    具有自定义颜色的离散值的matplotlib热图

  6. 6

    包括NA气泡图的频率

  7. 7

    R + ggplot:热图。如果值='X',则为特定颜色

  8. 8

    熊猫和Seaborn-没有颜色的热图

  9. 9

    R中具有分类变量和系统发生树的热图

  10. 10

    具有更改y值的Matplotlib热图

  11. 11

    具有DataFrame的热图

  12. 12

    具有字符串的结构,包括适当的内存管理

  13. 13

    绘制2D数据:具有不同颜色图的热图

  14. 14

    绘制2D数据:具有不同颜色图的热图

  15. 15

    CMake生成的具有系统和标准的c ++项目包括

  16. 16

    频率值作为颜色变量的热图

  17. 17

    Matlab调整热图轴和颜色

  18. 18

    Matlab调整热图轴和颜色

  19. 19

    R中的传单上的热图颜色

  20. 20

    R Shiny-同时过滤两个表格和热图(具有固定宽度的单元格)

  21. 21

    如何在semPaths中包括p值和R平方?

  22. 22

    包括注册和登录的序列图

  23. 23

    Excel:对一组行中的值进行平均,但仅当它们在列中具有特定值时才包括它们

  24. 24

    如何为求和列创建具有不同颜色范围的热图?

  25. 25

    贪婪的Python RegEx捕获组包括“和”

  26. 26

    具有热键和热字符串的自动热键

  27. 27

    R:具有n个组的条形图,可堆叠2个值

  28. 28

    R-具有基于值的透明度的条形图?

  29. 29

    ActiveRecord范围基于子范围条件,并包括那些具有该条件的孩子?

热门标签

归档