Geração de Gráfico BarChartModel

0 respostas
java
D

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;
}

}`

Criado 14 de abril de 2016
Respostas 0
Participantes 1