使用Vega Lite字段定义作为默认值,并使用填充条件

时间:2018-10-04 18:17:05

标签: visualization vega vega-lite

我正在尝试使用Altair / Vega Lite制作一个弦乐。数据为GeoJSON,而我用来设置填充的要素属性具有一些空值。我希望将空值填充为指定的颜色,而其他值则使用色标。

如果我只将一种颜色用于空值,而将另一种颜色用于有效值,则我将看到的功能按我期望的那样着色:

"encoding": {
  "color": {
    "condition": {
      "value": "red",
      "test": "datum.properties.rate !== null"
    },
    "value": "lightgray"
}

但是,如果我使用字段定义作为默认值,则具有null属性的要素将填充为白色,而不是浅灰色:

  "encoding": {
    "fill": {
      "condition": {
        "type": "quantitative",
        "field": "properties.rate",
        "test": "datum.properties.rate !== null"
      },
      "value": "lightgray"
    }
  }

即使条件不成立,为什么字段定义会破坏默认颜色?如何使字段定义仅适用于非null值?

0 个答案:

没有答案