Javascript 为NVD3图表选择数据
我是n00b,在NVD3方面有问题,这里有一些聪明的人,所以我希望你能帮助我 我正在尝试创建一个下拉框,用于选择要显示的数据。 我可以使用调用函数,但无法使图表更改其数据位置 HTML: 否则一切正常,函数会记录结果,只是无法选择需要的数据。如果我设置d3。选择“chart1 svg”。datumResidence\u supply\u数据,它将加载该数据 感谢您。在d3.slect'chart1 svg'将其分配给variableglobal变量时Javascript 为NVD3图表选择数据,javascript,function,d3.js,nvd3.js,Javascript,Function,D3.js,Nvd3.js,我是n00b,在NVD3方面有问题,这里有一些聪明的人,所以我希望你能帮助我 我正在尝试创建一个下拉框,用于选择要显示的数据。 我可以使用调用函数,但无法使图表更改其数据位置 HTML: 否则一切正常,函数会记录结果,只是无法选择需要的数据。如果我设置d3。选择“chart1 svg”。datumResidence\u supply\u数据,它将加载该数据 感谢您。在d3.slect'chart1 svg'将其分配给variableglobal变量时 myChart = d3.select('#
myChart = d3.select('#chart1 svg').datum(dat_select).transition()
.duration(1000).call(chart);
现在myChart包含了nvd3多条形水平图
因此,当您希望通过调用函数updateMyChart来更新图表时(例如,从您选择的位置),您可以这样更新图表:
function updateMyChart() {
// myChart is passed to your new data
// myChart also calls chart which hold the attributes you
// had set earlier for multiBarHorizontalChart
myChart.datum(Residence_supply_data).transition().duration(1000).call(chart);
// Update the chart during the window screen resizing
nv.utils.windowResize(myChart.update);
}
希望这对您有所帮助。我对您想要实现的目标有点困惑。您是否正在尝试更新传递到图表中的数据?是的,没错。正在尝试更改图表使用的数据。应该解释得更清楚。谢谢@shabeer90,我想得不对。我做了一些和你说的相似的事情,但是我的代码没有你说的那么有效。现在我有几个不同的函数,包含图表,它们使用我使用Draw调用的不同数据集
myChart = d3.select('#chart1 svg').datum(dat_select).transition()
.duration(1000).call(chart);
function updateMyChart() {
// myChart is passed to your new data
// myChart also calls chart which hold the attributes you
// had set earlier for multiBarHorizontalChart
myChart.datum(Residence_supply_data).transition().duration(1000).call(chart);
// Update the chart during the window screen resizing
nv.utils.windowResize(myChart.update);
}