0

我想根据键列是否匹配用户悬停的数据点的查询列的元素之一来突出显示 R plot_ly 散点图中的点。我知道您可以通过使用列表填充关键字段来在点之间设置非互惠的分层突出显示:如果其关键字段中的元素形成所选点的关键字段的元素的子集,则将突出显示点。但我想以更灵活的方式强调。

这是r plotly 页面(底部下方)使用列表列作为键的修改示例:

  d <- tibble::tibble(
      x = 1:4, 
      y = 1:4,
      key = list('A','B','C','D'),
      query = list(c('A','C'), 'B',c('A','D'), c('A','B','D'))
    )
    
    highlight_key(d, ~ query) %>%
       plot_ly(x = ~x, y = ~y, hoverinfo = "key") %>%
       highlight("plotly_selected", color = "red") %>%
       highlight(on = "plotly_hover", color = "red", selectize = F, opacityDim = 0.8)

“查询”是一列列表。如果它们的“键”值是悬停点的“查询”字段中列表中元素的子集,我希望突出显示点。但是,现在它们仅在其“查询”列表是所选点的“查询”列表的子集时才会突出显示。例如,我想将鼠标悬停在点 D 上以突出显示点 A、B 和 D,通过使用“查询”列的元素搜索“键”列。但是现在它没有突出显示 A,因为 A {'A','C'} 的查询值不是 D {'A','B','D'} 的查询列表的子集。

4

0 回答 0