美好的一天。
任务:
使用来自AmCharts的DB数据的输出图。 后端:Primefaces + MySQL
我使用以下代码将数据传输到AmCharts:
<script type="text/javascript">
var chart;
var data = [];
for (var i = 0; i < '${countryMB.list.size()}'; i++) {
data.push(
{
country: '${countryMB.list.get(i).getName()}',
gdp: '${countryMB.list.get(i).getGdp()}'
}
);
}
var chartData = data;
AmCharts.ready(function () {
// SERIAL CHART
chart = new AmCharts.AmSerialChart();
chart.dataProvider = chartData;
chart.categoryField = "country";
chart.startDuration = 1;
// AXES
// category
var categoryAxis = chart.categoryAxis;
categoryAxis.labelRotation = 90;
categoryAxis.gridPosition = "start";
// GRAPH
var graph = new AmCharts.AmGraph();
graph.valueField = "gdp";
graph.balloonText = "[[category]]: [[value]]";
graph.type = "column";
graph.lineAlpha = 0;
graph.fillAlphas = 0.8;
chart.addGraph(graph);
chart.write("chartdiv");
});
</script>
countryMB - primefaces组件和list - 从数据库获取所有元素的方法。
结果我只有一个元素的数据,重复多次。 像这样:
我不明白原因。 谢谢你的帮助。