javascript - Chart JS 使用 onclick 重新动画图表
问题描述
我正在熟悉 Chart.js 并想做一件简单的事情但做不到。我只是希望图表在单击按钮时重新设置动画,但无法使其正常工作。我认为通过将 chart.update 附加到 onclick 会起作用,但它没有。感谢帮助。
http://jsfiddle.net/f7nj80ye/5/
$('#button1').click(function(){
chart.update();
});
解决方案
您需要销毁它,然后再次创建它:
var ctx = document.getElementById("myChart");
var config = {
type: 'bar',
data: {
labels: ["2014", "2015", "2016"],
datasets: [{
label: 'Group 1',
data: [50, -59, 64],
datalabels:{
anchor: "end",
align: "end",
color:"black",
font:{ size: 14, },
},
backgroundColor: [ '#5bbbbb', '#5bbbbb4', '#5bbbbb' ],
borderWidth: 1
},{
label: 'Group 2',
data: [69, -85, 92],
datalabels:{
anchor: "end",
align: "end",
color:"black",
font:{ size: 14, },
},
backgroundColor: ['#ddd','#ddd','#ddd'],
borderWidth: 1
}]
},
options: {
scales: {
yAxes: [{
ticks: {
beginAtZero:true,
max:100
}
}]
}
}
};
var chart = new Chart(ctx, config);
(function() { // self calling function replaces document.ready()
//adding event listenr to button
document.querySelector('#button1').addEventListener('click',function(){
chart.destroy();
chart = new Chart(ctx, config);
});
})();
这是一个小提琴:http: //jsfiddle.net/f7nj80ye/30/
推荐阅读
- javascript - 文件分块而不增加大小
- encryption - PKCS11 derivedKey 每次返回不同的值
- php - 出现在产品页面上的非 WooCommerce 侧边栏小部件
- elasticsearch - Elastic Watcher 格式日期
- python - 有没有办法在 GTK 中获取系统中所有已安装字体的列表
- bokeh - 散景单击 gmap 图上绘制的圆圈
- java - 如何修复在其主体中返回 null 的响应实体对象
- fortran - 尝试将非连续数组写入屏幕时,使用 coarray 标志(并启用运行时检查)编译的应用程序中止
- azure - IIS Web 部署任务正在将源代码部署到服务器
- angular - 无法改变 ionic 3 中每个组件的行为