我正在使用Dimple js制作每天(星期日,星期一...)有一个条形图的条形图。问题是,有时几天不会有数据,但我仍希望图表显示所有值为0的日子。

如何确定应在轴上显示的所有类别?

编辑:
这是一个演示:jsfiddle.net/neme8got/
我希望图表以0卷显示现在未显示的日期。

最佳答案

我不相信Dimple有一个简单的方法来做到这一点。 x轴上显示的值由axis._scale.domain()提供。不幸的是,即使将其设置为完整的值数组,dimple也会在draw method期间使用从类别字段字符串的数据中抽取的值来覆盖此值。

最好的选择是更改数据(在客户端或服务器端)以为所有丢失的日期添加值。我已经更新了示例(使用Underscore.js),为缺失的日子添加了0个值:

var allDays = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];
var missing = _.difference(allDays, _.pluck(avg_by_day, 'Day'));
_.each(missing, function(missingDay){
    avg_by_day.push({'Avg Volume' : 0, 'Day' : missingDay});
});


http://jsfiddle.net/neme8got/1/

09-30 16:13