2016-10-18 58 views
0

有没有一种方法/解决方法来构建visjs时间间隔条形图而不是单个时间戳?时间间隔Visjs条形图而不是单个时间戳

例如,我想显示10分钟间隔的酒吧。为条形图设置数据的标准方法是与X轴单个坐标的数组:

var items = [ 
    {x: '2016-10-18 18:00:00', y: 10}, 
    {x: '2014-10-18 18:10:00', y: 8}, 
    {x: '2014-10-18 18:20:00', y: 9}, 
    {x: '2014-10-18 18:30:00', y: 5}, 
    ... 
] 

如果在选项我们设置右对齐和大条宽(例如50个像素),然后在一定规模的图形很好地显示 - 当条形图达到以下时间戳时,其宽度缩小而不重叠。请注意,这里说的实际栏宽度小于期权

var options = { 
    style:'bar', 
    barChart: {width:50, align:'right'}, 
    drawPoints: false 
} 

graph with adjacent bars

但是,如果图形比例发生变化,在某些点酒吧将开始覆盖不充分的时间间隔(10分钟间隔,这里设为值)。因为在选项中设置线条的宽度并不在这个规模达到以下栏的开始:

graph with not adjacent bars

我试图设置栏宽度选择,更大的价值,但在某些时候吧开始重叠:

graph with overlapping bars

有什么可以做的改善吗?

回答

0

事实证明,这可以通过将'end'属性添加到项目(不知道它是否总是存在或最近添加)来实现。为了得到10个分钟的间隔从问题的项目应配置是这样的:

var items = [ 
    {x: '2016-10-18 18:00:00', end: '2016-10-18 18:10:00', y: 10}, 
    {x: '2014-10-18 18:10:00', end: '2014-10-18 18:20:00', y: 8}, 
    {x: '2014-10-18 18:20:00', end: '2014-10-18 18:30:00', y: 9}, 
    {x: '2014-10-18 18:30:00', end: '2014-10-18 18:40:00', y: 5}, 
    ... 
] 

当用于项目end财产,在optionswidth属性被忽略。

相关问题