我现在已经盯着这段代码好几个小时了,也许它显而易见或只是需要一双新鲜的眼睛,但我很想弄清楚为什么图表上的条不是'出现了吗?
这是小提琴: http://jsfiddle.net/u7zs3jwo/1/
这是JSON:
var bardata = [
{
"ts":1431728734,
"interval":12,
"method":"GET",
"host":"beta.familysearch.org",
"aggs":{
"con":{ //Connect
"25":6,
"50":6,
"75":6,
"90":7.1,
"95":7.55,
"99":7.91,
"mn":6,
"mx":8,
"avg":6.3,
"stddv":0.67
},
"count":10,
"srvbsy":{
"25":2100.75,
"50":2272,
"75":3038.25,
"90":3571.4,
"95":3627.2,
"99":3671.84,
"mn":920,
"mx":3683,
"avg":2452.6,
"stddv":836.3
}
}
}
];
提前感谢您的帮助!!!
答案 0 :(得分:0)
传递给D3的数据必须采用数组的形式。正如您的代码所示,您传递的是单个值。我回答的假设是你只想绘制一个单一的条,即' mx'。
只需更改下面的代码,即可显示该行。
将传入的值更改为数组。
bardata = {
...
"mx":[3683],
...
}
并更改缩放功能以使用' mx'的第一个索引。阵列。
var vGuideScale = d3.scale.linear()
.domain([0, bardata[i].aggs.srvbsy.mx[0]]) // <-- here
.range([height, 0])