Я использую ng2-диаграммы и требую большего контроля.
Диапазон значений xAxis должен динамически изменяться. Для этого мне нужно получить доступ к Chart-Object, используемому ng2-charts. Тогда я могу сделать это
Что в основном сводится к двум шагам:
//Chart-Object
var barChartDemo = new Chart(ctx).Bar(barChartData, {
responsive: true,
barValueSpacing: 2
});
setInterval(function() {
//removing the first dataentry
barChartDemo.removeData();
//adding new data
barChartDemo.addData([dData()], "dD " + index);
index++;
}, 3000);
Я попробовал это решение, но похоже, что getComponent () устарел. Чтобы обойти это, я попытался использовать @ViewChild (с и без ElementRef), что привело бы к тому, что свойство «диаграмма» не было определено для полученного объекта.
Глядя на реализацию chartjs в ng2-charts, я вижу, что BaseChartDirective управляет генерацией диаграмм и сохраняет сгенерированную диаграмму как свойство класса (this.chart). Однако я не уверен, как получить доступ к этому свойству в моем компоненте.
ng2-charts - это модуль и, следовательно, часть моего импорта @NgModule.