当我尝试将json文件上传到nvd3时,它显示没有可用的数据,因为在控制台中没有错误消息,jslint没有显示json文件的错误,我也在localhost上查看该文件。我认为可以像在nvd3中的d3一样上传外部文件。
我的代码是
nv.addGraph(function() {
var chart = nv.models.discreteBarChart().xRange([0, 350])
.x(function(d) { return d.outTimestamp*1000 })
.y(function(d) { return d.compressionRatioInPercent })
.staggerLabels(true)
.showXAxis(false)
.tooltips(true)
.margin({"left":30,"right":10, "top":20})
.tooltipContent(function (key, x, y, e, graph) {
var content = '<p> Time:' + x +'</p>'
+ '</h3><p> Compresion Ratio:' + y +'</p>';
return content;
})
.color(['#fa743e', '#fa8556', ' #fb966e']);
d3.select('#chart svg')
.datum(data)
.transition().duration(500)
.call(chart) ;
chart.xAxis
.tickFormat(function(d) {
return d3.time.format('%H:%M:%S')(new Date(d))
});
chart.yAxis.tickFormat(d3.format(',%'));
nv.utils.windowResize(chart.update);
return chart;
});
var data = d3.json("data/data-simple.json", function(error, data) {
if (error) return console.error(error);
data.forEach(function(d) {
d.outTimestamp = new Date(d.outTimestamp*1000);
d.compressionRatioInPercent = +d.compressionRatioInPercent});
});
json文件看起来像这样,这是一个大文件,我只是张贴了一些
[
{"outTimestamp" : 1415635862,
"compressionRatioInPercent": 13.974863249659291
},
{
"outTimestamp": 1415635965,
"compressionRatioInPercent": 14.771445012891368
},
{
"outTimestamp": 1415636146,
"compressionRatioInPercent": 15.475327655845122
},
{
"outTimestamp": 1415636244,
"compressionRatioInPercent": 14.30788993821171},
{
"outTimestamp": 1415636438,
"compressionRatioInPercent": 14.607354278983063},
{
"outTimestamp": 1415636556,
"compressionRatioInPercent": 15.077226972689314
}]
无法制作小提琴,因为我不知道如何将这个本地json文件上传到小提琴。