我正在使用angularjs图表,Chart.min.js和angular-chart.min.js
它仅显示图例"标签"我也希望看到"数据"默认情况下,与标签一起作为图例的一部分或在饼图部分本身内。
任何人都可以帮忙吗?
HTML:
<div class="col-lg-6 col-sm-12" ng-controller="PieCtrl">
<div class="panel panel-default">
<div class="panel-heading">Pie Chart</div>
<div class="panel-body">
<canvas id="pie" class="chart chart-pie" chart-data="data" chart-labels="labels" chart-options="options" chart-hover="chartOver" chart-click="chartPortionClick"></canvas>
</div>
</div>
</div>
JS:
var app = angular.module('demoApp', ['chart.js', 'ui.bootstrap']);
app.controller('PieCtrl', ['$scope', function ($scope) {
$scope.labels = ['Download Sales', 'In-Store Sales', 'Mail Sales','test'];
$scope.data = [300, 500, 100, 10];
$scope.options = { legend: { display: true } };
}]);
答案 0 :(得分:1)
我使用角度图1.0.2。在我的版本中,我这样使用它;
$scope.options = {
legend: {display: true},
legendTemplate:
"<ul class=\"<%=name.toLowerCase()%>-legend\">" +
"<% for (var i=0; i<segments.length; i++){%>" +
"<li>" +
"<span style=\"background-color:<%=segments[i].fillColor%>\"></span>" +
"<%=segments[i].label%> (<%=segments[i].value%>)" +
"</li>" +
"<%}%>" +
"</ul>",
};
答案 1 :(得分:0)
您需要使用legendTemplate,请确保替换应用中的$ scope.data:P
var options = {
legendTemplate: "<ul><% for (var i=0; i<data.length; i++){%><li><span style=\"background-color:<%=data[i].color%>\"></span><%=data[i].label%> - <%=data[i].value%></li><%}%></ul>"
}
看到这个jsfiddle