how to fill the chart by dynamic data
up vote
0
down vote
favorite
I develop function for dashboard in my application, i use ChartModule, if the data static, the chart word, but i want use data dynamic in the chart, theproblem is how to fill the chart by dynamic data and thank's
file .html:
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px"><i class="fa fa-pie-chart fa-fw"></i> My Tickets</div>
</div>
</div>
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas baseChart width="511" height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"></canvas>
</div>
</div>
</div>
</div>
file.ts:
public doughnutchartlabels: string = ;
public doughnutchartdata: number = ;
public doughnutcharttype: string = 'doughnut';
constructor(private http: HttpClient, private _dashbordService: DashbordService, private _userService: UserService) { }
async ngOnInit() {
let id = localStorage.getItem('userId');
console.log(id);
this.pies = await this._dashbordService.getViews(id)
}
model.ts:
export class PieChartData {
Name: string;
Nombre: number;
}
file.service.ts:
async getViews(UID) {
let result = await this.http.get(this.pathAPI + 'Statistique?typeByUserId=' + UID)
.toPromise()
.then(function (res) {
return result = res;
})
.catch((err) => {
return (err)
})
return result;
}
angular charts dashboard
add a comment |
up vote
0
down vote
favorite
I develop function for dashboard in my application, i use ChartModule, if the data static, the chart word, but i want use data dynamic in the chart, theproblem is how to fill the chart by dynamic data and thank's
file .html:
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px"><i class="fa fa-pie-chart fa-fw"></i> My Tickets</div>
</div>
</div>
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas baseChart width="511" height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"></canvas>
</div>
</div>
</div>
</div>
file.ts:
public doughnutchartlabels: string = ;
public doughnutchartdata: number = ;
public doughnutcharttype: string = 'doughnut';
constructor(private http: HttpClient, private _dashbordService: DashbordService, private _userService: UserService) { }
async ngOnInit() {
let id = localStorage.getItem('userId');
console.log(id);
this.pies = await this._dashbordService.getViews(id)
}
model.ts:
export class PieChartData {
Name: string;
Nombre: number;
}
file.service.ts:
async getViews(UID) {
let result = await this.http.get(this.pathAPI + 'Statistique?typeByUserId=' + UID)
.toPromise()
.then(function (res) {
return result = res;
})
.catch((err) => {
return (err)
})
return result;
}
angular charts dashboard
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I develop function for dashboard in my application, i use ChartModule, if the data static, the chart word, but i want use data dynamic in the chart, theproblem is how to fill the chart by dynamic data and thank's
file .html:
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px"><i class="fa fa-pie-chart fa-fw"></i> My Tickets</div>
</div>
</div>
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas baseChart width="511" height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"></canvas>
</div>
</div>
</div>
</div>
file.ts:
public doughnutchartlabels: string = ;
public doughnutchartdata: number = ;
public doughnutcharttype: string = 'doughnut';
constructor(private http: HttpClient, private _dashbordService: DashbordService, private _userService: UserService) { }
async ngOnInit() {
let id = localStorage.getItem('userId');
console.log(id);
this.pies = await this._dashbordService.getViews(id)
}
model.ts:
export class PieChartData {
Name: string;
Nombre: number;
}
file.service.ts:
async getViews(UID) {
let result = await this.http.get(this.pathAPI + 'Statistique?typeByUserId=' + UID)
.toPromise()
.then(function (res) {
return result = res;
})
.catch((err) => {
return (err)
})
return result;
}
angular charts dashboard
I develop function for dashboard in my application, i use ChartModule, if the data static, the chart word, but i want use data dynamic in the chart, theproblem is how to fill the chart by dynamic data and thank's
file .html:
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px"><i class="fa fa-pie-chart fa-fw"></i> My Tickets</div>
</div>
</div>
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas baseChart width="511" height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"></canvas>
</div>
</div>
</div>
</div>
file.ts:
public doughnutchartlabels: string = ;
public doughnutchartdata: number = ;
public doughnutcharttype: string = 'doughnut';
constructor(private http: HttpClient, private _dashbordService: DashbordService, private _userService: UserService) { }
async ngOnInit() {
let id = localStorage.getItem('userId');
console.log(id);
this.pies = await this._dashbordService.getViews(id)
}
model.ts:
export class PieChartData {
Name: string;
Nombre: number;
}
file.service.ts:
async getViews(UID) {
let result = await this.http.get(this.pathAPI + 'Statistique?typeByUserId=' + UID)
.toPromise()
.then(function (res) {
return result = res;
})
.catch((err) => {
return (err)
})
return result;
}
angular charts dashboard
angular charts dashboard
asked yesterday
adam90
13
13
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
Issue is that chart gets rendered before data arrives in async case, delay rendering till data arrives should work as below:
.ts
pies:PieChartData;//undefined to start with
.html
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px">
<i class="fa fa-pie-chart fa-fw"></i> My Tickets
</div>
</div>
</div>
<ng-container *ngIf="pies">
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas
baseChart
width="511"
height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"
></canvas>
</div>
</div>
</ng-container>
</div>
</div>
Once data arrives for pies
after api call chart should show up with data.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Issue is that chart gets rendered before data arrives in async case, delay rendering till data arrives should work as below:
.ts
pies:PieChartData;//undefined to start with
.html
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px">
<i class="fa fa-pie-chart fa-fw"></i> My Tickets
</div>
</div>
</div>
<ng-container *ngIf="pies">
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas
baseChart
width="511"
height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"
></canvas>
</div>
</div>
</ng-container>
</div>
</div>
Once data arrives for pies
after api call chart should show up with data.
add a comment |
up vote
0
down vote
Issue is that chart gets rendered before data arrives in async case, delay rendering till data arrives should work as below:
.ts
pies:PieChartData;//undefined to start with
.html
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px">
<i class="fa fa-pie-chart fa-fw"></i> My Tickets
</div>
</div>
</div>
<ng-container *ngIf="pies">
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas
baseChart
width="511"
height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"
></canvas>
</div>
</div>
</ng-container>
</div>
</div>
Once data arrives for pies
after api call chart should show up with data.
add a comment |
up vote
0
down vote
up vote
0
down vote
Issue is that chart gets rendered before data arrives in async case, delay rendering till data arrives should work as below:
.ts
pies:PieChartData;//undefined to start with
.html
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px">
<i class="fa fa-pie-chart fa-fw"></i> My Tickets
</div>
</div>
</div>
<ng-container *ngIf="pies">
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas
baseChart
width="511"
height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"
></canvas>
</div>
</div>
</ng-container>
</div>
</div>
Once data arrives for pies
after api call chart should show up with data.
Issue is that chart gets rendered before data arrives in async case, delay rendering till data arrives should work as below:
.ts
pies:PieChartData;//undefined to start with
.html
<div class="col-md-4">
<div class="ibox" style="margin-top:20px">
<div class="ibox-head">
<div class="ibox-title">
<div style="font-size:12px">
<i class="fa fa-pie-chart fa-fw"></i> My Tickets
</div>
</div>
</div>
<ng-container *ngIf="pies">
<div class="ibox-body" *ngFor="let pie of pies">
<div style="display: block">
<canvas
baseChart
width="511"
height="255"
[(data)]="this[pie.Nombre]"
[(labels)]="this[pie.Name]"
[chartType]="doughnutChartType"
(chartHover)="chartHovered($event)"
(chartClick)="chartClicked($event)"
></canvas>
</div>
</div>
</ng-container>
</div>
</div>
Once data arrives for pies
after api call chart should show up with data.
answered yesterday
User3250
1,5423825
1,5423825
add a comment |
add a comment |
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53372462%2fhow-to-fill-the-chart-by-dynamic-data%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown