ich amCharts in meiner AngularJS Anwendung verwenden und das ist die JSON-Daten, die ich zurück:Wie verschachtelte JSON-Daten in amCharts Zugriff
{
total: 2,
tools: [
{
id: "57c5a75d57d92f742dc96bf2",
empId: "1",
empName: "ABC",
empType: {
typeId: 3,
typeName: "Contract",
hours: 45,
}
},
{
id: "57c5a75d57d92f742dc96bf2",
empId: "2",
empName: "DEF",
empType: {
typeId: 2,
typeName: "Full-Time",
hours: 40,
}
},
]
}
-Code in meinem Controller:
const writeemp = data => {
const {
total,
employees,
} = data;
empChart.dataProvider = employees;
empChart.write('emp');
empChart.validateData();
};
AmCharts.handleLoad();
var configChart = function() {
empChart = new AmCharts.AmSerialChart();
empChart.categoryField = "empId";
empChart.labelRotation = 90;
var yAxis = new AmCharts.ValueAxis();
yAxis.position = "left";
empChart.addValueAxis(yAxis);
empBarGraph = new AmCharts.AmGraph();
empBarGraph.valueField = "";//This to be the value "TypeName" in "empType" from the Json Data
empBarGraph.type = "column";
empBarGraph.fillAlphas = 1;
empBarGraph.lineColor = "#f0ab00";
empBarGraph.valueAxis = yAxis;
empChart.addGraph(empBarGraph);
empChart.write('empChart');
$http.get(hostNameService.getHostName()+"/dashboard/employees")
.then(response => writeemp(response.data));
}
Could jemand ließ mich wissen, wie ich auf verschachtelte Json-Daten in Amcharts zugreifen konnte. Ich möchte eines der Felder als mein ValueField im Diagramm erstellen.
Danke für Ihre Hilfe. Ich habe in diesem Fall eine benutzerdefinierte Datenstruktur erstellt. Ja, ich verstehe, dass wir Zahlen nur als Wertfeld in den Charts verwenden können. – Valla