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

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

以下是屏幕截图:

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

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

Chart.Tooltip.positioners.top = function (elements,eventPosition) {
      const tooltip = this;
      return ;
 };
nihaolizhiguo 回答:ChartJS-折线图,位置工具提示

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

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

希望有帮助!

本文链接:https://www.f2er.com/3158130.html

大家都在问