Render a legend on angular-chart.js doughnut chart

tim_xyz picture tim_xyz · May 9, 2016 · Viewed 18.1k times · Source

I've followed angular-chart.js documentation, and created a chart, but am unable to render a legend with it. I don't understand why its not working.

Documentation: http://jtblin.github.io/angular-chart.js/
Similar SO question: How to color legend in angular-chart.js

<div class="panel-body" ng-controller="CircleCtrl" style="display: block;">
    <div class="chart-container" style="width:400px; height:200px;">
        <canvas id="doughnut"
            class="chart chart-doughnut"
            chart-data="data"
            chart-labels="labels"
            chart-colours="colours"
            chart-legend="true">
        </canvas> 
    </div>
</div>  

enter image description here

I've also tried defining an array for legend in the controller,

$scope.legend = ["complete", "incomplete"]

Per the accepted answer in the other SO question, chart-legend="true" should be enough to make it work.

Does anyone have experience with this library and have an idea how to solve this issue?

Answer

Livie picture Livie · May 18, 2016

If you're using the 1.0.0-alpha branch based on chart.js 2, the correct syntax is:

$scope.options = {legend: {display: true}};

and in your html

<canvas id="pie"
            class="chart chart-pie"                
            chart-data="data"
            chart-labels="labels"
            chart-options="options">
 </canvas>