Google Charts - Нет доступных данных - Невозможно удалить старый график и отобразить пустой график? - PullRequest
1 голос
/ 24 июня 2019

Я работаю над графиками Google в своем приложении Angular 6 ссылка npm-google-charts

Теперь, когда я рисую график на основе данных с сервера, если у меня есть данные, график рисуется правильно, но если у меня нет данных, тогда я устанавливаю свойство datatable равным нулю, но все же старый граф не стирается.

Вот мой код:

В моем HTML:

 <google-chart [data]="columnChart" (chartReady)="ready($event)"  (chartError)='error($event)'></google-chart>

В моем TS:

 //chart initialization and properties
columnChart: GoogleChartInterface = {
chartType: 'ColumnChart',
// dataTable: this.data,
options: {
  height: 600,
  legend: 'none',
  hAxis: {
    direction: -1,
    slantedText: true,
    slantedTextAngle: 90,
    textStyle: {
      fontSize: 11
    }
  },
   vAxis: { gridlines: { count: 20 } },
}
//Method when data is changing
changeData() {
console.log(this.data);
if(this.data.length <= 1)
{
  this.data=[];
  this.columnChart.dataTable = this.data;
  this.columnChart.component.draw();
  this.toastr.error("Unable to find food order details in selected 
month");
}
else{
  this.columnChart.dataTable = this.data;
  this.columnChart.component.draw();
}

Здесь, если данные равны нулю, я устанавливаю переменную с данными для нуля, но график все еще отображается. Как нарисовать пустой график, если данные равны нулю

Может кто-нибудь, пожалуйста, помогите мне с этим, спасибо.

1 Ответ

1 голос
/ 24 июня 2019

попробуйте использовать метод clearChart ...

if(this.data.length <= 1)
{
  this.columnChart.component.getChart().clearChart();
  this.toastr.error("Unable to find food order details in selected month");
}
else{
  this.columnChart.dataTable = this.dataToBeBinded;
  this.columnChart.component.draw();
}
...