Javascript 如何在没有鼠标悬停的情况下始终在chartjs中显示标签?
我正在使用最新版本的Chart Js。我需要始终在图表中显示标签(无需鼠标悬停)。可能吗?如果是,请帮助我使用示例代码 多谢各位 我当前的Chartjs代码:Javascript 如何在没有鼠标悬停的情况下始终在chartjs中显示标签?,javascript,charts,chart.js,Javascript,Charts,Chart.js,我正在使用最新版本的Chart Js。我需要始终在图表中显示标签(无需鼠标悬停)。可能吗?如果是,请帮助我使用示例代码 多谢各位 我当前的Chartjs代码: var ctx = $("#myChart"); var label = ctx.data('clabel').split(','); var val = ctx.data('cval').split(','); var myChart = new Chart(ctx, { type: 'line', data: {
var ctx = $("#myChart");
var label = ctx.data('clabel').split(',');
var val = ctx.data('cval').split(',');
var myChart = new Chart(ctx, {
type: 'line',
data: {
labels: label,
datasets: [{
label: 'Daily Capital',
data: val,
backgroundColor: [
'rgba(0, 153, 34, 0.5)',
],
borderColor: [
'rgba(0, 153, 34, 1);',
],
borderWidth: 2
}]
},
options: {
responsive: true,
maintainAspectRatio: false,
legend: {
display: false,
},
animation: {
duration: 0, // general animation time
},
hover: {
animationDuration: 0,
},
responsiveAnimationDuration: 0, // animation duration after a resize
elements: {
line: {
tension: 0, // disables bezier curves
},
},
tooltips: {
callbacks: {
label: function(tooltipItem, data){
return '£' + tooltipItem.yLabel;
},
title: function(tooltipItem, data){
return '';
},
}
},
scales: {
yAxes: [{
ticks: {
beginAtZero: true
}
}]
}
}
});
我希望有人能帮忙。提前感谢这可以通过在animationcomplete上添加
选项
和工具提示事件
来解决
onanimationcomplete
函数调用showToolTip
方法以像悬停事件一样显示工具提示
通常定义tooltipevents
来显示tooltips
,但这里需要传递一个空数组。检查下面的提琴示例中的折线图
var options = {
tooltipTemplate: "<%= value %>",
showTooltips: true,
onAnimationComplete: function() {
this.showTooltip(this.datasets[0].points, true);
},
tooltipEvents: []
}
var选项={
工具脚本模板:“”,
showTooltips:true,
onAnimationComplete:function(){
this.showTooltip(this.dataset[0].points,true);
},
工具提示事件:[]
}
注意:此方法不支持直线图和条形图中的多数据集,但支持饼图中的多数据集
var数据线={
标签:[“一月”、“二月”、“三月”、“四月”、“五月”、“六月”、“七月”],
数据集:[{
标签:“我的第一个数据集”,
填充颜色:“rgba(220220,0.2)”,
strokeColor:“rgba(2201)”,
点颜色:“rgba(220220,1)”,
pointStrokeColor:“fff”,
pointHighlightFill:“fff”,
pointHighlightStroke:“rgba(2201)”,
数据:[65,59,80,81,56,55,40]
}]
};
变量选项={
工具脚本模板:“”,
showTooltips:true,
onAnimationComplete:function(){
this.showTooltip(this.dataset[0].points,true);
},
工具提示事件:[]
}
var context=$('#chart3').get(0).getContext('2d');
var图表=新图表(上下文).Line(数据线,选项)代码>
如何在chartjs 2.7中执行此操作?如何编辑此操作,使其仅显示最后一个数据条目上的工具提示?我有一个气象站,每30分钟记录一次,并将其保存在sql数据库中。然后我用这些数据来填充我的图表。但我只想要最新阅读/日志的工具提示。
options: {
legend: {
display: false
},
hover: {
animationDuration: 0
},
animation: {
onComplete: function() {
const chartInstance = this.chart,
ctx = chartInstance.ctx;
ctx.font = Chart.helpers.fontString(
18,
Chart.defaults.global.defaultFontStyle,
Chart.defaults.global.defaultFontFamily
);
ctx.textAlign = "center";
ctx.textBaseline = "bottom";
this.data.datasets.forEach(function(dataset, i) {
const meta = chartInstance.controller.getDatasetMeta(i);
meta.data.forEach(function(bar, index) {
const data = dataset.data[index];
ctx.fillStyle = "#000";
ctx.fillText(data, bar._model.x, bar._model.y - 2);
});
});
}
},
tooltips: {
enabled: true
},
responsive: true,
scales: {
xAxes: [
{
display: true,
gridLines: {
drawOnChartArea: false
}
}
],
yAxes: [
{
display: true,
gridLines: {
drawOnChartArea: false
},
ticks: {
precision: 0
}
}
]
}
}