Я использую диаграммы синхронизации EJ2 Sync с Angular 6 для создания точечной диаграммы.
.html файл
<ejs-chart id="chart-container">
<e-series-collection>
<e-series [dataSource]="series1" typeof="Scatter"name="Male"></e-series>
<e-series [dataSource]="series2" typeof="Scatter" name="Female"></e-series>
</e-series-collection>
</ejs-chart>
<div>
<button ejs-button (click)="PlotChart()">Draw</button>
</div>
.ts Файл
import { Component, OnInit } from '@angular/core';
import { ChartData } from '../chartdata.service';
export class ScatterComponent implements OnInit {
public series1: Object;
public series2: Object;
public title: string;
constructor() { }
ngOnInit(): void {
// this.PlotChart(); //-> this works!!
}
public PlotChart(): void {
this.title = 'Height Vs Weight';
this.series1 = ChartData.prototype.getScatterData().series1;
this.series2 = ChartData.prototype.getScatterData().series2;
}
}
Я использую внешний класс (например, ChartData) для извлечения данных в серию диаграмм.И если я вызову метод PlotChart () в хуке жизненного цикла ngOnInit , график будет нарисован, и он не будет рисоваться, если он был вызван непосредственно нажатием кнопки.Обратите внимание, что данные все еще извлекаются, как и ожидалось, в обоих случаях.Мне кажется, что серия диаграмм не ограничена, если она не вызывается внутри ngOnInit ().
привязка параметра заголовка работает, но только привязка серии диаграмм не работает.
Кто-нибудь подскажет мнерешение для этого?