У меня довольно простая проблема, но я новичок в Vega / Vega-Lite, и примеры руководств не очень помогают мне решить мою проблему.
Когда я пытаюсь отобразить свои значения с плавающей запятой, кажется, работает только Mark: Point / Bar. Все остальное, что требует соединения между соседними точками, похоже, не работает, например Area или Line.
Что я пропустил, чтобы связать свои значения с диаграммой с областями? Агрегация? Слой? Неправильно ли вычислены значения временных меток?
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"data": {
"url": {
"%context%": true,
"%timefield%": "@timestamp",
"index": "default-*",
"body": {"size": 10000, "_source": ["@timestamp", "numericData"]}
},
"format": {"property": "hits.hits"}
},
"transform": [
{"calculate": "toDate(datum._source['@timestamp'])", "as": "time"}
],
"vconcat": [
{
"width": 1200,
"mark": {"type": "area", "line": true, "point": true},
"encoding": {
"x": {
"field": "time",
"scale": {"domain": {"selection": "brush"}},
"type": "temporal",
"axis": {"title": ""}
},
"y": {
"field": "_source.numericData",
"type": "quantitative",
"scale": {"domain": [0, 10]}
}
}
},
{
"width": 1200,
"height": 60,
"mark": {"type": "area", "line": true, "point": true}, // <-- only points are rendered :(
"selection": {"brush": {"type": "interval", "encodings": ["x"]}},
"encoding": {
"x": {"field": "time", "type": "temporal"},
"y": {
"field": "_source.numericData",
"type": "quantitative",
"formatType": "String",
"axis": {"tickCount": 3, "grid": false}
}
}
}
]
}
Точки видны - значения есть, но область не отображается, потому что, как я подозреваю, мне нужно указать Vega Lite интерпретировать числовые значения с плавающей запятой на Y для интерпретации во всем временном поле.