【发布时间】:2021-05-04 09:51:18
【问题描述】:
我在圆环图中有一些信息,并希望在使用鼠标访问此信息时防止工具提示闪烁。
查看下面的截图:
我正在尝试实施以下解决方案:
- 如果标签悬停时间少于 1 秒,则不显示标签工具提示。
- 如果标签悬停超过 1 秒(即光标在标签上停留了一段时间),那么我需要显示工具提示。
查看以下JSFiddle
var chart_data = [6,5,4,3,2,1]
function chart() {
var options = {
type: 'doughnut',
data: {
labels: ["Red", "Blue", "Yellow", "Green", "Purple", "Orange"],
datasets: [{
label: '# of Votes',
data: chart_data,
backgroundColor: [ "Red", "Blue", "Yellow", "Green", "Purple", "Orange" ],
borderWidth: 1,
}
]
},
options: {
cutoutPercentage : 65,
responsive: false,
tooltips: {
callbacks: { label: label_tooltip }
},
}
}
var ctx = document.getElementById('chart-container').getContext('2d')
new Chart(ctx, options)
}
function label_tooltip(item, data) {
var index = item.index
var name = data.labels[index]
var value = data.datasets[0].data[index]
var tooltip = ' ' + name + ' - ' + value
return tooltip
}
chart()
document.getElementById('chart-info').innerHTML = chart_data.reduce((a, b) => a + b, 0) + '<br>TOTAL'
【问题讨论】:
-
你的fiddle好像坏了,文字不在甜甜圈中间,甜甜圈很小
-
哦。那是因为
responsive: true- 忘记在 StackOverflow 上更新它。现在应该可以了。最好使用小提琴链接 - jsfiddle.net/7ev2tnsb
标签: javascript chart.js chart.js2