问题在于:我正在使用外部数据绘制图表(用户使用数据集信息上传的.txt文件)。但如果用户错误地上传了错误的文件,他应该能够上传另一个文件,从而重新绘制图表。
以下是我上传多个文件后图表呈现的情况:
它们的样子示例: http://imgur.com/a/NDRgS
每次再次绘制图表时,背景颜色会变暗。每次用户上传文件时,我都会执行以下操作:
chart.destroy()
和chart.clear()
这是一个已知问题吗?任何人都知道可能发生的事情?
答案 0 :(得分:1)
我尝试了很多关于清理画布和图表实例的事情,但最终采取了另一种方法(可能还有更好的方法)。我没有删除图表(及其画布)并创建新图表,而是更新了图表的数据(替换了新数据集)。
for(var i = 0; i < $scope.chartsList.length; i++) {
var chart = $scope.chartsList[i];
var firstDataSet = $scope.formattedData[i];
var secondDataSet = $scope.formattedData[i + 15];
for(var j = 0; j < 51; j++) {
chart.config.data.datasets[0].data = firstDataSet;
chart.config.data.datasets[1].data = secondDataSet;
chart.update();
}
完成!