javascript - Chart.js 多工具提示标签

标签 javascript chart.js

我正在尝试让 charts.js 在工具提示中显示每个数据集的标签名称。

我的代码:

var barChartData = {
    labels : ["January","February","March","April","May","June","July"],
    datasets : [

        {
            label: "Bob",
            fillColor : "rgba(88,196,246,0.5)",
            strokeColor : "rgba(88,196,246,0.8)",
            highlightFill: "rgba(88,196,246,0.75)",
            highlightStroke: "rgba(88,196,246,1)",
            data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
        },
        {
            label: "Tina",
            fillColor : "rgba(74,211,97,0.5)",
            strokeColor : "rgba(74,211,97,0.8)",
            highlightFill : "rgba(74,211,97,0.75)",
            highlightStroke : "rgba(74,211,97,1)",
            data : [randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor(),randomScalingFactor()]
        }

    ]
}

var ctx = document.getElementById("canvas").getContext("2d");
window.myBar = new Chart(ctx).Line(barChartData, {
    responsive : true,
    animation: true,
    barValueSpacing : 5,
    barDatasetSpacing : 1,
    tooltipFillColor: "rgba(0,0,0,0.8)",                
    multiTooltipTemplate: "<%= label %> - <%= value %>"

});

使用我上面的代码,将鼠标悬停在“一月”上方时会显示工具提示:

January
January - xx
January - xx

有什么想法可以让它显示以下内容吗?

January
Bob - xx
Tina - xx

最佳答案

改变

window.myBar = new Chart(ctx).Line(barChartData, {
   responsive : true,
   animation: true,
   barValueSpacing : 5,
   barDatasetSpacing : 1,
   tooltipFillColor: "rgba(0,0,0,0.8)",                
   multiTooltipTemplate: "<%= label %> - <%= value %>"
});

到:

window.myBar = new Chart(ctx).Line(barChartData, {
   responsive : true,
   animation: true,
   barValueSpacing : 5,
   barDatasetSpacing : 1,
   tooltipFillColor: "rgba(0,0,0,0.8)",                
   multiTooltipTemplate: "<%= datasetLabel %> - <%= value %>"
});

修改到最后一行

multiTooltipTemplate: "<%= datasetLabel %> - <%= value %>"

datasetLabel 从数据集对象(在本例中为“Bob”和“Tina”)获取标签的值,而 label 获取打印在 x 上的标题-axis(labels 数组的一部分)

关于javascript - Chart.js 多工具提示标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24510278/

相关文章:

Javascript 从平面对象创建嵌套对象

Chart.js:仅显示零索引处的水平网格线

javascript - 向 Chart.js 条形图添加标签

php - 自动保存 textarea 内容 javascript 和 php

javascript - 如何在 Vue SPA 中获取 JSON 数据?

javascript - 触发 react 组件内的更改事件不起作用

javascript - 错误 : write EPIPE when trying to upload file to FTP using gulp

javascript - Chart.js donut 文本颜色

python - chartsjs 的标签属性不采用字符串类型的上下文变量

chart.js - Chartjs 中的重置缩放