【问题标题】:GGVIS plot for logical matrix逻辑矩阵的 GGVIS 图
【发布时间】:2015-11-30 16:28:13
【问题描述】:

我正在尝试绘制一个类似于问题here 的逻辑矩阵,不同之处在于我正在尝试使用ggvis 进行绘制,以便我可以使用悬停工具(数据有几千行所以当我将鼠标悬停在它上面时,我想看到行/列名称)。以下代码适用于ggplot2

library(reshape2)
library(ggplot2)

melted = melt(matrix)
ggplot(melted, aes(x = Var2, y = Var1)) +
    geom_tile(aes(fill = value)) +
    scale_file_manual(values = c("black", "red")) +
    theme(axis.text.x = element_blank(), axis.text.y = element_blank()) +
    coord_fixed(ratio = 1/10)

【问题讨论】:

    标签: r matrix plot ggplot2 ggvis


    【解决方案1】:

    你可以找到layer_rectshere的例子,我只是做了一些调整。 使用链接问题的示例:

    加载数据

    mm <- structure(c(TRUE, TRUE, TRUE, FALSE, TRUE, FALSE, TRUE, FALSE, 
                      FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, 
                      FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                      FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                      FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, 
                      FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                      TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                      TRUE, TRUE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                      TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                      TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, 
                      TRUE, TRUE, TRUE), .Dim = c(10L, 10L), .Dimnames = list(NULL, 
                                                                              c("n1", "n2", "n3", "n4", "n5", "n1.1", "n2.1", "n3.1", "n4.1", 
                                                                                "n5.1")))
    

    融化和改变类型

    library(reshape2)
    melted <- melt(mm)
    
    melted$value <- as.numeric(melted$value)
    melted$Var1 <- as.factor(melted$Var1)
    

    情节

    melted %>%
      ggvis(~Var2, ~Var1, fill = ~value) %>%
      layer_rects(width = band(), height = band()) %>%
      scale_nominal("x", padding = 0, points = FALSE) %>%
      scale_nominal("y", padding = 0, points = FALSE)
    

    【讨论】:

      猜你喜欢
      • 2017-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-25
      • 2015-07-30
      • 2021-03-15
      • 2019-05-26
      • 2023-04-05
      相关资源
      最近更新 更多