如何根据用户输入更新D3 SVG图表

时间:2013-07-08 05:56:38

标签: javascript json d3.js

我想根据用户输入动态更新变量。我在Json文件中有几个数据集,并希望使用用户选择的特定数据集创建一个图形。

在下面的示例中,变量“dataset”被静态设置为food,但是还有其他数据集(饮料,银器等),用户可以从中选择并且应该更改图形数据。

但我无法弄清楚如何动态更新“数据集”。我想保留“数据”,但将“食物”改为用户选择的任何东西。这可能吗?

var dataset = data.food;

var svg = d3.select ("body") 
  .append ("svg")
  .attr("width", w)
  .attr("height", h); 
svg.selectAll("rect")
  .data(dataset) 

1 个答案:

答案 0 :(得分:0)

是的,你可以很容易地做到这一点。假设变量value包含数据集的名称,您可以执行

var dataset = data[value];