我有一个剑道图表,随着时间的推移有几个数据点。默认比例设置为月。在悬停每个点时,工具提示将显示每个点的值。 我在系列点击中定制了一个事件,我在其中检测到当前点击的月份并更新x轴以显示所选月份的信息。事件代码如下:
function onSeriesClick(e) {
var selectedDate = e.category;
var categoryAxis = $('#chart').data('kendoChart').options.categoryAxis;
var startDate = categoryAxis.min;
var endDate = categoryAxis.max;
categoryAxis.min = new Date(selectedDate.getFullYear(), selectedDate.getMonth());
categoryAxis.max = new Date(selectedDate.getFullYear(), selectedDate.getMonth() + 1);
categoryAxis.baseUnit = "days";
categoryAxis.labels.rotation = -90;
$('#chart').data('kendoChart').refresh();
}
如您所见,上述功能只获取所选点的日期,并更新类别轴以仅显示月份跨度。然后刷新图表以显示此更改。
作为范围变化的结果,某些数据点从图表中消失,这是预期的行为。然而,即使很难将点从图表中消失,将光标移动到其他点之前的图表上,也会导致工具提示仍然显示。我必须单击图表上的某个位置或将光标完全移离图表区域,以使不再存在的点的工具提示消失。
我的问题是,当图表的范围刷新时,我可以做些什么来“刷新”工具提示?我想的是
$('#chart').data('kendoChart').options.tooltip.refresh();
但这种方法不存在。 我能做什么? 问候!
编辑:我提供了一个说明问题的jsfiddle。只需单击任何数据点,然后将光标移动到图表区域内,您就会看到问题。