Использование определения поля Vega Lite в качестве значения по умолчанию с условием заполнения хороплетом - PullRequest
0 голосов
/ 04 октября 2018

Я пытаюсь сделать хороплет с помощью Altair / Vega Lite.Данные GeoJSON, а свойство объекта, которое я использую для установки заливки, имеет некоторые нулевые значения.Я хотел бы, чтобы значения NULL были заполнены указанным цветом, а другие значения использовали цветовую шкалу.

Если я просто использую один цвет для значений NULL, а другой - для допустимых значений, я вижу объекты, окрашенные какЯ ожидал бы:

"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"
    }
  }

Почемуопределяет ли определение поля цвет по умолчанию, даже если условие не соответствует действительности?Как сделать так, чтобы определение поля применялось только к ненулевым значениям?

...