ChartJS-折线图,位置工具提示

问题描述 投票:0回答:1

我有以下包含3个数据集的图。除了一个小错误,其他所有东西都可以正常工作。我想仅将工具提示放置在第一个数据集上,因为它目前位于所有数据集的平均位置。

这里是屏幕截图:enter image description here

[我知道ChartJS具有定位器功能(下面的一个),但是我不知道如何忽略其他2个数据集,因此工具提示仅粘贴到第一条折线图上

Chart.Tooltip.positioners.top = function (elements, eventPosition) {
      const tooltip = this;
      return ;
 };
charts chart.js
1个回答
1
投票

您还可以为工具提示定义自定义位置功能。这样,

Chart.Tooltip.positioners.custom = function(elements, eventPosition) {
var x = eventPosition.x;
var y = eventPosition.y;
var minDistance = Number.POSITIVE_INFINITY;
var i, len, nearestElement;
var top_element = elements[0];
for (i = 0, len = elements.length; i < len; ++i) {
    console.log(elements[i].tooltipPosition().y);
    if (elements[i].tooltipPosition().y < top_element.tooltipPosition().y) {
        top_element = elements[i];
    }
}
var tp = top_element.tooltipPosition();
x = tp.x;
y = tp.y;

return {
    x: x,
    y: y
};

};

完成后,您可以在tooltips.options中指定它。

更多信息:

https://www.chartjs.org/docs/latest/configuration/tooltip.html#position-modes

希望有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.