Então… galera to com um problema na geração dos gráficos.
tenho um tela que tem umas opções para o usuário realizar uma certa pesquisa e com o retorno dessa eu gero um gráfico, pois o gráfico está nessa mesma tela, quando inicio a tela ele já carrega o gráfico nesse caso zerado pois ainda não foi feita a pesquisa.
ai até blz o gráfico atualiza zerado mesmo, mais quando faço a pesquisa e chamo o método para carregar os gráficos, faz tudo certinho só que o gráfico atualizado não vai para a tela.
esse carregar no inicio está errado ?
como posso ajusta isso
` </p:column>
</p:dataTable>
</h:form>
<h:panelGroup id="idGrafico" layout="block" styleClass="ui-fluid">
<h:panelGrid columns="2" columnClasses="left,right" style="width:100%">
<p:chart type="bar" model="#{chartView.animatedModel2}" style="width:1000px" />
</h:panelGrid>
</h:panelGroup>
</ui:define>
</ui:composition>`
`@ManagedBean
public class ChartView extends Parametros implements Serializable {
private static final long serialVersionUID = 1L;
private BarChartModel animatedModel2;
private HashMap<String, GeraGrafico> mpaGrafico = new HashMap<String, GeraGrafico>();
public void recebeInfGrafico(HashMap<String, GeraGrafico> mpaGrafico) {
this.mpaGrafico = mpaGrafico;
}
@PostConstruct
public void init() {
createAnimatedModels();
}
public BarChartModel getAnimatedModel2() {
return animatedModel2;
}
private void createAnimatedModels() {
animatedModel2 = initBarModel(mpaGrafico);
animatedModel2.setTitle("Abril");
animatedModel2.setAnimate(true);
animatedModel2.setLegendPosition("ne");
Axis yAxis = animatedModel2.getAxis(AxisType.Y);
yAxis.setMin(0);
yAxis.setMax(30);
}
private BarChartModel initBarModel(HashMap<String, GeraGrafico> mpaGrafico) {
BarChartModel model = new BarChartModel();
if (mpaGrafico.size() != 0) {
for (Map.Entry<String, GeraGrafico> itemGrafico : mpaGrafico.entrySet()) {
ChartSeries setores = new ChartSeries();
setores.setLabel("Setor: " + itemGrafico.getValue().getSetor());
setores.set(DPRAZO, itemGrafico.getValue().getQtdeDentroPrazo());
setores.set(FPRAZO, itemGrafico.getValue().getQtdeForaPrazo());
model.addSeries(setores);
}
this.getAnimatedModel2();
} else {
ChartSeries setores = new ChartSeries();
setores.setLabel("Setor: ");
setores.set(DPRAZO, 0);
setores.set(FPRAZO, 0);
model.addSeries(setores);
}
return model;
}
}`