当使用ng2图表显示实时数据时,我遇到了一些问题,它总是随时显示0 . 我在下面粘贴了我的代码片段 . 有人可以帮我检查一下并告诉我哪里做错了吗?
temps: Array<number> = [];
public lineChartData: Array<any> = [[]];
custom: boolean = false;
report: boolean = false;
errMess: any;
keys: any[] = []
constructor(public dialog: MatDialog,
private dishService: DishService,){}
public lineChartLabels: Array<any> = ['January', 'February', 'March', 'April', 'May', 'June', 'July'];
public lineChartType: string = 'line';
ngOnInit() {
this.dishService.getTemp()
.subscribe(temps => {
for (let key in temps[0]) {
for (var _i = 0; _i < temps.length; _i++) {
this.keys.push(temps[_i][key]);
}
}
console.log(this.keys);
this.lineChartData.push(this.keys);
});
}
1 回答
这是ng2-charts的一个已知问题,你需要手动让angular知道你已经更新了数据,
在下面的行之后做这样的事情,
功能如下,
你需要在组件内部有一个变量,
EDIT
要查看每5分钟更新一次的图表,您可以使用