【问题标题】:How can we proramatically generate vega grammar JSON from vega-lite plot?我们如何从 vega-lite 情节中以 proramatically 生成 vega 语法 JSON?
【发布时间】:2022-05-18 08:09:39
【问题描述】:

我可以通过npm 安装vega-litevega-lite-api 在nodejs 的本地安装上获得vega json 语法,如下所示:

vl = require(\'vega-lite\') 
vla = require(\'vega-lite-api\') 
data = require(\'vega-datasets\') 

const df2 = data[\'movies.json\']()

const plot = vla.markBar().data(df2).encode(
    vla.x().fieldQ(\'IMDB_Rating\').bin(true),
    vla.y().count()
  )

vega_lite_json = plot.toObject();
vega_json = vl.compile(plot.toObject()).spec;

但是我无法让它在 Observablehq 中工作。

我不能做最后一行:vl.compile(...)。 这就是我所做的:

vegalite = require(\"@observablehq/vega-lite@0.2\")
vegalite.compile(plot.toObject()).spec;

它说:TypeError: vegalite.compile is not a function 这是link to my observablehq notebook cell 执行vegalie.compile(...)

我做错了什么?

    标签: javascript vega-lite vega observablehq


    【解决方案1】:

    vegalite 编译选项位于 vl 对象中,如下所示:vl.vegalite.compile(...)

    这是修改后代码的笔记本:https://observablehq.com/@shan/untitled/6

    【讨论】:

    • 为什么在带有 npm 包的 vscode 中尝试使用 vl.compile(...) 而不是 vl.vegalite.compile(...)
    猜你喜欢
    • 2022-06-10
    • 2020-03-19
    • 2019-06-02
    • 2020-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-17
    相关资源
    最近更新 更多