我正在寻找一种推荐的方法来完成以下用例:
在graph2d中,我希望用户能够通过使用两个customTime条作为选择的端点来选择时间线的一部分。我希望能够在两个自定义栏之间突出显示图表的选定部分。
以下是我当前实施的一个示例:http://jsbin.com/goqekul/3/edit?js,output
这是更改项目组的代码:
graph2d.on('timechange', (properties) => {
var start = moment(graph2d.getCustomTime('start'));
var end = moment(graph2d.getCustomTime('end'));
var itemUpdates = _.map(_.range(items.length), (item) => {
var group;
if (moment(items[item].x).isBetween(start,end)) {
group = 1;
} else if (moment(items[item].x).isSameOrBefore(start)) {
group = 0;
} else {
group = 2;
}
var ret = {
id: item,
group: group
};
return ret;
});
dataset.update(itemUpdates);
});
当自定义栏移动时,它会在选定或未选定的组中更新数据集中的项目,以向图形添加阴影以突出显示两个栏之间的部分。
然而,对于许多数据点来说,这似乎变得缓慢。对于不使用组的问题,或者采用完全不同的方法,是否有推荐的或更好的解决方案?