【问题标题】:Multi-value tooltip in VegaVega 中的多值工具提示
【发布时间】:2021-06-16 17:09:36
【问题描述】:

我正在使用 Vega(不是 vega-lite,因为我使用的是 vega-lite 不支持的 treemap)。

在上面链接的示例中,我在悬停时添加了一个工具提示,因此您可以看到每个小框是什么:

    ...
    {
      "type": "rect",
      "from": {"data": "leaves"},
      "encode": {
        ...
        "hover": {
          "tooltip": {"field": "name"},  // What I added
          "fill": {"value": "red"}
        }
      }
    },
    ...

这非常适合在工具提示中显示名称,但我想显示多个字段,但我无法弄清楚它们的语法。我试过这样的东西:

    tooltip: [{"field": "name"}, {"field": "depth"}]  // Doesn't work
    tooltip: {"field": ["name", "depth"]}  // Also doesn't work

格式化的字符串也可以,但我也不知道格式化是如何工作的:

    tooltip: "datum['name'] is depth datum['depth']"  // Doesn't work

Marks -> Rect documentation 有点无益地将“工具提示”的类型定义为“任何”(我什至不确定该文档是否适用,因为我的工具提示实际上在 encode -> hover 的子对象中矩形。

有没有办法显示多个工具提示值?

【问题讨论】:

    标签: vega


    【解决方案1】:

    是的,有!同样,这是很难找到任何文档的事情之一。但这里是我如何实现这一目标的示例。

    ....
    
    encode: {
      enter: {
        tooltip: {
          signal: "{'Title1': datum.field1,
                    'Title2': datum.field2,
                    'Title3': datum.field3}"
        }
    
    ...
    

    你也太亲近了!出于某种原因,您只需将其定义为一个大信号,然后您就可以访问当前数据。

    我知道这是不带引号的(我使用 Kibana 编辑器),因此您可能需要稍微尝试一下语法。

    【讨论】:

      猜你喜欢
      • 2019-05-07
      • 2021-04-12
      • 1970-01-01
      • 1970-01-01
      • 2021-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多