如何在 Vega-Lite 中用特定颜色给线条上色?
How to color lines with specific colors in Vega-Lite?
VegaLite 自动分配颜色。黄金价格是蓝色的,白银价格是橙色的,感觉不对。
如何分配明确的颜色 - #F1C40F
代表金色,#95A5A6
代表银色?
我还想保留下面示例代码中的 data.values
- 作为一组单独的数组。
代码和Playground
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"description": "Stock prices of 5 Tech Companies over Time.",
"data": {
"values": [
{
"dates": ["2000-01", "2000-02", "2000-03"],
"gold": [1, 2, 1],
"silver": [1.5, 1, 2]
}
]
},
"transform": [
{"flatten": ["dates", "gold", "silver"]},
{"fold": ["gold", "silver"], "as": ["symbol", "price"]},
{"calculate": "datetime(datum.dates)", "as": "dates"}
],
"mark": {"type": "line", "point": {"filled": false, "fill": "white"}},
"encoding": {
"x": {"field": "dates", "type": "temporal", "timeUnit": "yearmonth"},
"y": {"field": "price", "type": "quantitative"},
"color": {"field": "symbol", "type": "nominal"}
}
}
您可以使用 scale.domain
和 scale.range
参数设置自定义 Color Scheme:
"color": {
"field": "symbol",
"type": "nominal",
"scale": {"domain": ["gold", "silver"], "range": ["#F1C40F", "#95A5A6"]}
}
无论数据源如何指定,这都有效。
这是应用于您的图表 (Vega Editor) 后的结果:
VegaLite 自动分配颜色。黄金价格是蓝色的,白银价格是橙色的,感觉不对。
如何分配明确的颜色 - #F1C40F
代表金色,#95A5A6
代表银色?
我还想保留下面示例代码中的 data.values
- 作为一组单独的数组。
代码和Playground
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"description": "Stock prices of 5 Tech Companies over Time.",
"data": {
"values": [
{
"dates": ["2000-01", "2000-02", "2000-03"],
"gold": [1, 2, 1],
"silver": [1.5, 1, 2]
}
]
},
"transform": [
{"flatten": ["dates", "gold", "silver"]},
{"fold": ["gold", "silver"], "as": ["symbol", "price"]},
{"calculate": "datetime(datum.dates)", "as": "dates"}
],
"mark": {"type": "line", "point": {"filled": false, "fill": "white"}},
"encoding": {
"x": {"field": "dates", "type": "temporal", "timeUnit": "yearmonth"},
"y": {"field": "price", "type": "quantitative"},
"color": {"field": "symbol", "type": "nominal"}
}
}
您可以使用 scale.domain
和 scale.range
参数设置自定义 Color Scheme:
"color": {
"field": "symbol",
"type": "nominal",
"scale": {"domain": ["gold", "silver"], "range": ["#F1C40F", "#95A5A6"]}
}
无论数据源如何指定,这都有效。
这是应用于您的图表 (Vega Editor) 后的结果: