Vega statistics 获取 Transform 结果作为对象
Vega statistics Get Transform result as an object
我想在 Vega 中使用变换并将结果作为对象获取。类似于link中的例子:
https://vega.github.io/vega/docs/transforms/aggregate/
我想得到输出,例如:[{"v": 2, "s": 6, "m": 2}],并在其他计算中使用它。所以我不想加载到可视化前。图表。我想得到结果对象并对其进行处理。我可以这样做吗
步骤如下:
- 对于 Vega 规范,只需包含具有转换的数据块。
- 运行 Vega 创建 Vega“视图”的常用方法。
- 在javascript中,使用Vega View API's data method获取转换后的数据集对象。
这是一个完整的工作示例(html 和 javascript),使用来自 Vega aggregate 的示例。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Test Vega5</title>
</head>
<body>
<div id="vis"></div>
</body>
<script src="https://vega.github.io/vega/vega.js"></script>
<script>
let vegaSpec = {
"$schema": "https://vega.github.io/schema/vega/v5.json",
"data": [
{
"name": "mydata",
"values" : [
{"foo": 1, "bar": 1},
{"foo": 1, "bar": 2},
{"foo": null, "bar": 3}
],
"transform": [
{
"type": "aggregate",
"fields": ["foo", "bar", "bar"],
"ops": ["valid", "sum", "median"],
"as": ["v", "s", "m"]
}
]
}
]
};
let vegaView = new vega.View(vega.parse(vegaSpec))
.logLevel(vega.Warn)
.initialize("#vis")
.renderer("svg")
.hover()
.run();
let my_transformed_data = vegaView.data("mydata"); // vega view API
console.log(my_transformed_data);
</script>
</html>
console.log 输出:
我想在 Vega 中使用变换并将结果作为对象获取。类似于link中的例子: https://vega.github.io/vega/docs/transforms/aggregate/ 我想得到输出,例如:[{"v": 2, "s": 6, "m": 2}],并在其他计算中使用它。所以我不想加载到可视化前。图表。我想得到结果对象并对其进行处理。我可以这样做吗
步骤如下:
- 对于 Vega 规范,只需包含具有转换的数据块。
- 运行 Vega 创建 Vega“视图”的常用方法。
- 在javascript中,使用Vega View API's data method获取转换后的数据集对象。
这是一个完整的工作示例(html 和 javascript),使用来自 Vega aggregate 的示例。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<title>Test Vega5</title>
</head>
<body>
<div id="vis"></div>
</body>
<script src="https://vega.github.io/vega/vega.js"></script>
<script>
let vegaSpec = {
"$schema": "https://vega.github.io/schema/vega/v5.json",
"data": [
{
"name": "mydata",
"values" : [
{"foo": 1, "bar": 1},
{"foo": 1, "bar": 2},
{"foo": null, "bar": 3}
],
"transform": [
{
"type": "aggregate",
"fields": ["foo", "bar", "bar"],
"ops": ["valid", "sum", "median"],
"as": ["v", "s", "m"]
}
]
}
]
};
let vegaView = new vega.View(vega.parse(vegaSpec))
.logLevel(vega.Warn)
.initialize("#vis")
.renderer("svg")
.hover()
.run();
let my_transformed_data = vegaView.data("mydata"); // vega view API
console.log(my_transformed_data);
</script>
</html>
console.log 输出: