我正在尝试创建一些数据的可视化。我想做的是创建一个下拉菜单来更改图表。截至目前,我的数据已编码到 html 文件中。我打算做的是将数据移动到单独的 JSON 文件中,这些文件可以通过菜单调用来更改图表。我看到了这个,但它是针对 CSV 文件的。JSON文件有类似的东西吗?
<div id='chart57b8c4fde7' class='rChart nvd3'></div>
<script type='text/javascript'>
$(document).ready(function(){
drawchart57b8c4fde7()
});
function drawchart57b8c4fde7(){
var opts = {
"dom": "chart57b8c4fde7",
"width": 725,
"height": 550,
"x": "NAME",
"y": "Total",
"group": "Type",
"type": "multiBarChart",
"id": "chart57b8c4fde7"
},
data = [
{
"NAME": "ONE",
"Type": "A",
"Total": 4
},
{
"NAME": "TWO",
"Type": "A",
"Total": 2
},
{
"NAME": "ONE",
"Type": "B",
"Total": 5
},
{
"NAME": "TWO",
"Type": "B",
"Total": 5
}
]
var data = d3.nest()
.key(function(d){
return opts.group === undefined ? 'main' : d[opts.group]
})
.entries(data)
nv.addGraph(function() {
var chart = nv.models[opts.type]()
.x(function(d) { return d[opts.x] })
.y(function(d) { return d[opts.y] })
.width(opts.width)
.height(opts.height)
d3.select("#" + opts.id)
.append('svg')
.datum(data)
.transition().duration(500)
.call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
};
</script>