首页 > 解决方案 > 动态数据的Gchart实现

问题描述

我使用 Gchart 以图表形式显示数据。目前图表是静态的。我需要使图表动态化,因为图表值可能会一次又一次地变化。我的代码是这样的:

dynamicChartObj = new GChartModelBuilder().setChartType(GChartType.PIE).build();
dynamicChartObj = new GChartModelBuilder()
                    .setChartType(GChartType.PIE)  
                    .addColumns("Topping", "Slices")
                    .addRow("A", 12)  
                    .addRow("B", 20)
                    .addRow("C", 39)
                    .addRow("D", 45)
                    .build();  
<div id="savChart">
      <pe:gChart value="#{dashboardMB.dynamicChartObj}" width="400" height="400"
      title="Quanity Wise">
      </pe:gChart>
</div>

我需要动态添加行。我怎样才能做到这一点?

标签: primefacesprimefaces-extensionsgchart

解决方案


最后我想出了解决我的问题的方法。我对这个问题的解决方案是这样的:

GChartModelBuilder chartBuilder = new GChartModelBuilder();
chartBuilder.setChartType(GChartType.PIE);
chartBuilder.addColumns("Topping", "Slices");
HashMap<String, Double> valuesOfChart = prepareRowsOfChart(); 
for (Map.Entry pair : valuesOfChart.entrySet()) {
    chartBuilder.addRow((String) pair.getKey(), ((double) pair.getValue()));
}
chartSavingModel = chartBuilder.build();

推荐阅读