Ich versuche, mit Chart.js v1 ein Legendenfeld zu einem Kreisdiagramm hinzuzufügen.Wie füge ich mit Chart.js v1 ein farbiges Legendenfeld zu einem Kreisdiagramm hinzu?
Das ist mein HTML-Code:
<div id="TheLegendOfDeviceChart"></div>
<canvas id="deviceChart" style="height:250px"></canvas>
Und das ist mein Javascript-Code:
var pieChartCanvas = $("#deviceChart").get(0).getContext("2d");
var pieChart = new Chart(pieChartCanvas);
var PieData = [
{
value: 700,
color: "#f56954",
highlight: "#f56954",
label: "Chrome"
},
{
value: 500,
color: "#00a65a",
highlight: "#00a65a",
label: "IE"
},
// other values
];
var pieOptions = {
// some options
legendTemplate : "<ul class=\"<%=name.toLowerCase()%>-legend\"><% for (var i=0; i<segments.length; i++){%><li><span style=\"background-color:<%=segments[i].fillColor%>\"></span><%if(segments[i].label){%><%=segments[i].label%><%}%></li><%}%></ul>",
};
var pie = pieChart.Pie(PieData, pieOptions);
document.getElementById('TheLegendOfDeviceChart').innerHTML = pie.generateLegend();
Dies ist, was ich bekommen:
A pie chart with a monochromatic legend
Aber ich möchte eine farbige Legendenbox wie diese haben: http://www.chartjs.org/docs/#doughnut-pie-chart-introduction
Wie kann ich mein legendTemplate ändern, um das zu bekommen?
Es funktioniert nicht. Hier ist mein Jsfiddle: http: // jsfiddle.net/vrwjfg9z/3649/ – EstevaoLuis
@EstevaoLuis Danke für die Bereitstellung der Geige. Ich habe meine Antwort aktualisiert, um Sie beim Erstellen einer Vorlage zu unterstützen, die Sie wünschen. Achten Sie darauf, es durchzulesen und mein Beispiel Codepen zu überprüfen. – jordanwillis
Vielen Dank! Es funktioniert jetzt. Ich habe den "clear: both;" - Stil im li-Tag entfernt, um eine horizontale Legendenliste zu erhalten – EstevaoLuis