如何在Chart.JS 2.0上使用tooltipTemplate

时间:2016-05-11 09:17:20

标签: javascript tooltip chart.js

我正在尝试将圆环图与多个数据集一起使用,并且还使用tooltipTemplate功能来自定义工具提示中的文本,但没有任何效果。这在以前的Chart js版本中有效,但是它不支持多个数据集。有人可以帮忙吗?以下是我的代码:

options: {
    tooltips: {
        tooltipTemplate: "<%if (label){%><%=value%><%} else {%> No data <%}%>",
    },
}

3 个答案:

答案 0 :(得分:10)

Chart.js 1.x tooltipsTemplate相当于Chart.js 2.x中的options.tooltips.callbacks.title

&#13;
&#13;
var ctx = document.getElementById("myChart");

var myChart = new Chart(ctx, {
  type: 'doughnut',
  data: {
    labels: [
      "Men",
      "Women",
      "Unknown"
    ],
    datasets: [{
      label: 'Sweden',
      data: [60, 40, 20],
      backgroundColor: [
        'rgba(158, 216, 202, 0.75)',
        'rgba(255, 150, 162, 0.75)',
        'rgba(160, 160, 160, 0.75)'
      ]
    }, {
      label: 'Netherlands',
      data: [40, 70, 10],
      backgroundColor: [
        'rgba(158, 216, 202, 0.5)',
        'rgba(255, 150, 162, 0.5)',
        'rgba(160, 160, 160, 0.5)'
      ]
    }, {
      data: [33, 33, 34],
      backgroundColor: [
        'rgba(158, 216, 202, 0.25)',
        'rgba(255, 150, 162, 0.25)',
        'rgba(160, 160, 160, 0.25)'
      ]
    }]
  },
  options: {
    tooltips: {
      callbacks: {
        label: function(tooltipItem, data) {
                return 'This value ' + tooltipItem.yLabel;
        },
        title: function(tooltipItem, data) {
           return 'The tooltip title ' + tooltipItem[0].xLabel;
        }
      }
    }
  }
});
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.1.2/Chart.min.js"></script>

<canvas id="myChart" width="400" height="200"></canvas>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您必须将工具提示options的{​​{1}}设置为mode以显示多个工具提示

label

答案 2 :(得分:0)

如果您想隐藏标签,只需尝试一下

options = 
  {                       
    tooltips :{          
      titleFontSize : 0,
      titleMarginBottom:-0.5
    }
  }

工具提示参考https://www.chartjs.org/docs/latest/configuration/tooltip.html