如何在vega中以编程方式选择项目?

时间:2013-05-04 06:01:21

标签: vega

以下有效,但似乎不对 (see live demo)

vg.parse.spec(spec, function(chart) {

  var view = chart({
    el: "#graph"
  });

  view.update();

  view.update({
    props: "hover",
    items: view._model._scene.items[0].items[0].items[1] // <- ugly and brittle!
  });

});

这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

Vega正在取得良好进展,这是他们在论坛中谈到的功能之一。但是,现在,您正在做的是获取场景项目的唯一方法。

为了证明,请参阅jheer(vega的主要作者)的建议:https://groups.google.com/forum/#!topic/vega-js/r4aUahV-RwI(上一篇文章显示了以与您相同的方式遍历场景的示例)。

一个小区别是您可以使用view.model().scene()代替view._model._scene。但是现在那些做同样的事情,只是你不必使用积极告诉你不要使用它们的变量:)