我正在尝试使用Highcharts创建热图,但它没有正确加载(只是线而不是热图本身)。
我正在加载JSON
文件中的数据:
chart: {
type: 'heatmap',
marginTop: 40,
marginBottom: 80,
plotBorderWidth: 1
},
xAxis: {
categories: $scope.loadDays()
},
yAxis: {
categories: $scope.loadHours(),
title: null,
reversed: true
},
series: [{
name: null,
borderWidth: 1,
data: [],
dataLabels: {
enabled: true,
color: '#000000'
}
}]
$scope.getHeatMapData = function(data) {
var response = [];
$scope.data = data;
if(data && $scope.data.timestamps && $scope.data.info) {
$scope.data.timestamps.forEach(function(element, index) {
if ($scope.data.info[index]) {
response.push([
moment(element).day(),
moment(element).hour(),
$scope.data.info[index]
]);
}
});
}
return response;
};
数据正在正确记录到控制台,但由于某种原因,热图未加载。
我还创建了一个Plunker,您可以在其中查看其行为。
有什么想法吗?
答案 0 :(得分:1)
重新加载图表时我犯了一个错误。我只需要为事件添加类型:
chartConfig.chart = { type: 'heatmap', events: { load: callback } };