使用 Chart.js,如何避免工具提示重叠?

2022-01-22 00:00:00 angularjs javascript chart.js

我正在使用

解决方案

您可以使用这些代码片段实现一些重叠解决方案:

工具提示:{模式:'索引',相交:假,y填充:2,xPadding:2,插入符号大小:0,边框宽度:0,}

I am using Chart.js via Angular Char. I have displayed all the tooltips in order to download a chart with the information displayed by creating a plugin.

The tooltips overlap, there doesn't seem to be any logic to distribute them so that they don't. Is there a way to do this?

Some of the plugin code. This isn't important to my question. The 'beforeRender' function creates a new Chart.Tooltip for each item in the dataset and afterDraw renders them:

// turn on tooltips
chart.options.tooltips.enabled = true;
Chart.helpers.each(chart.pluginTooltips, function (tooltip) {
tooltip.initialize();
tooltip.update();
// we don't actually need this since we are not animating tooltips
tooltip.pivot();
tooltip.transition(easing).draw();

The chart:

解决方案

You can achieve some overlap solution using these snippets:

tooltips: {
    mode: 'index',
    intersect: false,
    yPadding: 2,
    xPadding: 2,
    caretSize: 0,
    borderWidth: 0,
}

相关文章