我正在尝试在我的角度应用程序中显示高级图表 下面是我的get_chart函数,它从另一个函数
获取数据function get_chart(data) {
alert('hello..' + data);
return {
xAxis: {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
},
chart: {
height: 300,
width: 500,
type: 'column'
},
credits: {
enabled: false
},
plotOptions: {
series: {
cursor: 'pointer',
point: {
events: {
click: function() {
console.log ('Category: '+ this.category +', value: '+ this.y);
}
}
}
}
},
series: [{
data: [ data ]
}]
};
}
然后我尝试从
发送数据$scope.renderChart = function(measurement){
$scope.showChart = false;
restApp.getMeasurementForCompID(comp.id, measurement.id).then(function(data){
console.log('getMeasurementForCompID data ');
console.log(data);
data = [10, 20];
$scope.example_chart = get_chart(data);
console.log($scope.example_chart);
$scope.showChart = true;
});
}
HTML
<div>
<highchart id="dash-chart" chart='example_chart'></highchart>
</div>
Highcharts指令
myapp.directive('highchart', function () {
return {
restrict: 'E',
template: '<div></div>',
replace: true,
link: function (scope, element, attrs) {
scope.$watch(function() { return attrs.chart; }, function() {
if(!attrs.chart) return;
var chart = scope.example_chart;
console.log('loading chart');
console.log(chart);
element.highcharts(chart);
});
}
}
});
控制台
但是我无法显示值为10,20的图表。 这可能是什么问题?
由于
答案 0 :(得分:1)
我通过以下方式解决了我的问题
<div>
<highchart ng-if="showChart" id="dash-chart" chart='example_chart'></highchart>
</div>
谢谢