You are on page 1of 13

GUJ

Perguntas
Sem respostas
Usurios
Notcias
Discusses Antigo Frum
Pergunte
Entrar
Cadastre-se
Sobre
Procurar
Top of Form
go

Bottom of Form
Top of Form
go

Bottom of Form
Perguntas primefaces Primefaces: stacked bar + line chart no cumulativo
java
android
c#
.net
javascript
php
jquery
html
sql
Primefaces: stacked bar + line chart no cumulativo

up 0 down
Boa tarde! Estou usando primafaces 5.0 + JSF e eu gostaria de fazer o seguinte

modelo de grfico:
Mas quando fao com Primefaces, o STACKED fica junto e os valores so somados:

Perceba que o valor da linha azul na primeira coluna na verdade 614, mas ele
somou 614 + 766 = 1380, quando na verdade o ponto azul deveria estar em cima
da barra laranja.
Do jeito que eu quero que fique exatamente como esse cara fez:
http://stackoverflow.com/questions/9046987/jqplot-individual-values-not-totals-instacked-chart s que ele fez fixo no JQuery, eu estou fazendo pelo primefaces.
No tem nenhum mtodo/atributo do org.primefaces.model.chart.ChartSeries que
faa isso pra mim? Ou em outra classe? E se eu usasse o atributo extender do
p:barChart para apontar pra um trecho de JQuery, como seria esse trecho j que as
categorias so carregadas no meu Bean?
Trecho do meu VisaoMetaBean:
private CartesianChart chartProdutosOK;

private CartesianChart chartProdutosNOK;


private PieChart chartProdutosPie;
private CartesianChart chartMensal;

// valores fixos
private Projeto projetoMeta;
private Projeto projetoInovacao;
private Ferramenta ferramenta;
private String anoCorrente;
private Integer meta;
private Integer compromisso;
private Integer realizado;

@PostConstruct
public void init() {
this.loadValoresFixos();
this.loadCharts();
}

private void loadValoresFixos() {


//carrega os valores fixos
}

// Grficos: Cenrios Automatizados e NO Automatizados por Produto


private void loadCharts() {
ChartSeries prodSerieOKMeta = new ChartSeries();
ChartSeries prodSerieOKInovacao = new ChartSeries();
ChartSeries prodSerieNOKMeta = new ChartSeries();
LineChartSeries prodSerieCompromisso = new LineChartSeries();
prodSerieOKMeta.setLabel("Meta");

prodSerieNOKMeta.setLabel("Meta");
prodSerieOKInovacao.setLabel("Inovao");
prodSerieCompromisso.setLabel("Compromisso");
List<Produto> produtos = pDAO.getAllProdutos();
CartesianChartModel chartProdutoOK = new CartesianChartModel();
CartesianChartModel chartProdutoNOK = new CartesianChartModel();

long compromisso = 0;
long isOKQuantMetaProduto = 0;
long isOKQuantInovacaoProduto = 0;
long isNOKQuantMetaProduto = 0;
for (Produto produto : produtos) {
compromisso = 0;
isOKQuantMetaProduto = reqDAO
.getQuantidadeRequisitosFromProdutoAndFerramentaAndProjetoByIsOKAndAno(
produto, ferramenta, projetoMeta, true,
this.anoCorrente);
isNOKQuantMetaProduto = reqDAO
.getQuantidadeRequisitosFromProdutoAndFerramentaAndProjetoByIsOKAndAno(
produto, ferramenta, projetoMeta, false, this.anoCorrente);
isOKQuantInovacaoProduto = reqDAO
.getQuantidadeRequisitosFromProdutoAndFerramentaAndProjetoByIsOKAndAno(
produto, ferramenta, projetoInovacao, true,
this.anoCorrente);
for (Area area : new AreaDAO().getAllAreasFromProduto(produto)) {
Meta meta = new MetaDAO().getMetaFromAreaAndProjeto(area,
projetoMeta);
if (meta != null)

compromisso += meta.getMeta();
}

prodSerieOKMeta.set(produto.getName(), isOKQuantMetaProduto);
prodSerieOKInovacao
.set(produto.getName(), isOKQuantInovacaoProduto);
prodSerieCompromisso.set(produto.getName(), compromisso);
prodSerieNOKMeta.set(produto.getName(), isNOKQuantMetaProduto);
}

chartProdutoOK.addSeries(prodSerieOKInovacao);
chartProdutoOK.addSeries(prodSerieOKMeta);
chartProdutoNOK.addSeries(prodSerieNOKMeta);

chartProdutoNOK.addSeries(prodSerieCompromisso);
chartProdutoOK.addSeries(prodSerieCompromisso);

this.chartProdutosOK = new CartesianChart(chartProdutoOK,


"Cenrios Automatizados por Produto");
this.chartProdutosNOK = new CartesianChart(chartProdutoNOK,
"Cenrios No Automatizados por Produto");
}
Trecho do visao-meta.xhtml
<p:barChart id="barChart"
value="#{visaoMetaBean.chartProdutosOK.chart}"
extender="barProjetosExtender" animate="true"
legendPosition="ne"
style="color:#222222;width:48%;float:right;font-size:16px;fontweight:bold"
min="0" yaxisLabel="Quantidade"
seriesColors="7BBB39, D2691E, 22AAFF" barMargin="-100"

barPadding="-100"
title="#{visaoMetaBean.chartProdutosOK.name}"
stacked="false" xaxisAngle="45" />
trecho barProjetosExtender()
function barProjetosExtender() {
this.cfg.seriesDefaults = {
shadow: false,
renderer: $.jqplot.BarRenderer,
pointLabels: {show: true, location: 'n', ypadding: 0, hideZeros: true},
markerRenderer: $.jqplot.MarkerRenderer,
rendererOptions: {barPadding: 0, barMargin: 0}
};
this.cfg.highlighter = {show: true, tooltipLocation: 's', tooltipAxes: 'y'};
this.cfg.grid = {background: '#ffffff'}
}
O mesmo grfico s que stacked="false" (no soma):

primefaces
jsf
jquery
compartilhar
???validation.bad_post???
Top of Form

compartilhe um link para esta pergunta


http://w w w

Bottom of Form
fechar
editar

x
Top of Form
grosseiro ou ofensivo

pouco construtivo

obsoleto

outro...

Motivo

Reportar

Bottom of Form

criado 16 de dez de 2014


Luiz Waldrich
153 pontos
editado 17 de dez de 2014
0
Coloca seu cdigo para que possamos analisar. no showcase tem modelo
cissoide 16 de dez de 2014
x
Top of Form
grosseiro ou ofensivo

pouco construtivo

obsoleto

outro...

Motivo

Reportar

Bottom of Form
0
@cissoide coloquei o trecho que gera o grfico. O exemplo no showcase no
stacked="true". Se eu gerar as barras separadamente d certo. O problema que
ele soma tudo quando est stacked="true" e quem me pediu essa alterao insiste
em ser stacked, no pode ser separado... da eu to me batendo com isso.
Luiz Waldrich 16 de dez de 2014
x
Top of Form
grosseiro ou ofensivo

pouco construtivo

obsoleto

outro...

Motivo

Reportar

Bottom of Form
0
Est parecendo que o erro est na lgica para popular o prodSerieCompromisso, da
uma debugada pra ver se no est somando os dados de forma errada. Aps o for
da AreaDAo o compromisso est com o valor correto?
cissoide 17 de dez de 2014
x
Top of Form

grosseiro ou ofensivo

pouco construtivo

obsoleto

outro...

Motivo

Reportar

Bottom of Form
0
Eu editei o post e coloquei o mesmo grfico s que com stacked="false". Veja que
os nmeros que vem do Bean esto certinhos. Essa soma s acontece quando
stacked="true".
Luiz Waldrich 17 de dez de 2014
x
Top of Form
grosseiro ou ofensivo

pouco construtivo

Motivo

Reportar

Bottom of Form
Adicionar comentrio
Top of Form
Adicionar comentrio

obsoleto

outro...

Caracteres restantes: 600


Cancelar

Quero acompanhar este tpico via email.

Bottom of Form
Comentrio
Utilize formatao mini-Markdown: [link](http://exemplo.com) _italico_ **negrito**
`codigo`.
Comentarios devem ter, no maximo, 600 caracteres. Se achar necessario, utilize
links em vez de copiar cdigo ou ainda edite sua pergunta/resposta para colocar
mais informaes
Voc vai ver essas setas em qualquer pgina de pergunta. Com elas, voc pode
dizer se uma pergunta ou uma resposta foram relevantes ou no.
Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
Caso haja alguma dvida sobre a pergunta, adicione um comentrio. O espao de
respostas deve ser utilizado apenas para responder a pergunta.
Se o autor da pergunta marcar uma resposta como solucionada, esta marca
aparecer.
Clique aqui para mais detalhes sobre o funcionamento do GUJ!
0 resposta
No a resposta que estava procurando? Procure outras perguntas com as tags
primefaces jsf jquery ou faa a sua prpria pergunta.
Entrar
Top of Form

Entrar c/ Facebook
Fazer Login
OU

entrar c/ Google+
Fazer Login
OU

Email Senha

Esqueci minha senha.


http://w w w .guj.c Login

Bottom of Form
Cadastrar
Top of Form

Cadastrar c/ Facebook
Cadastre-se
OU

Cadastrar c/ Google+
Cadastre-se
OU
Nome

Email Senha

Confirmao da senha

Criando uma

conta neste site, voc est de acordo com os termos de uso


Cadastrar

Bottom of Form
Notcias
22/06/2015 Noite tcnica na Caelum RJ (Design responsivo, automao front-end) evento
gratuito 25/julho
12/06/2015 Oracle Java Magazine Maio/Junho
11/06/2015 Novidades do JavaOne Brasil 2015
08/06/2015 Java: Trabalhando com Clipboard (rea de transferncia)
07/06/2015 REVISTA PROGRAMAR N 49 JUNHO 2015

Mais notcias...
Tags recentes
primefaces x 2330
jsf x 3913
jquery x 916
Perguntas relacionadas
0 Listar em uma HTML Table (JSF)
0 Problema na hora de limpar o DataTable
1 Template Bootstrap puro e Primefaces
0 Exibir bloco de codigo conforme campo do banco.
0 p:dialog modal=true no deixa preencher os campos
footer.guj
Cursos online de tecnologia
footer.caelum
Curso de Java
Curso de Android
Curso de JavaScript
Curso de .NET
Curso de Agile
Curso de HTML e CSS
footer.casa_do_codigo
Conhea tambm os livros da Casa do Cdigo
java
android
c#
.net
javascript
php
jquery
html

sql
photoshop
illustrator
inDesign
tipografia
vetorizao
GUJ Respostas: No solucionadas Sem respostas GUJ Frum ndice de Fruns Tpicos
Recentes Este projeto open source: Mamute.org Em breve, frum para msicos:
Music Dot Conhea o tambm o Mame pergunta Publicidade: guj@guj.com.br
Desenvolvido por Caelum GUJ: desde 2002
<img height="1" width="1" border="0" alt=""
src="http://googleads.g.doubleclick.net/pagead/viewthroughconversion/980051072/
?
frame=0&random=1435815388194&cv=7&fst=1435815388194&num=1&fmt=1&
guid=ON&eid=42631043&u_h=1050&u_w=1680&u_ah=1010&u_aw=1680&u_cd=
24&u_his=1&u_tz=480&u_java=true&u_nplug=2&u_nmime=4&frm=0&url=http
%3A//www.guj.com.br/33903-primefaces-stacked-bar--line-chart-naocumulativo&ref=http%3A//www.google.com.au/url%3Fsa%3Dt%26rct%3Dj%26q
%3D%26esrc%3Ds%26source%3Dweb%26cd%3D13%26cad%3Drja%26uact
%3D8%26ved%3D0CCgQFjACOAo%26url%3Dhttp%253A%252F
%252Fwww.guj.com.br%252F33903-primefaces-stacked-bar--line-chart-naocumulativo%26ei%3Dzc2UVZjIJ8KMmwWJuZ2ABg%26usg
%3DAFQjCNFlPQRzKEzTUy3558CJSKLZWzL31A
%26sig2%3DG5vXz4cbAvWfgOZ8235GpA&vis=2" /> <div style="display:inline;"><
img height="1" width="1" style="border-style:none;" alt=""
src="//googleads.g.doubleclick.net/pagead/viewthroughconversion/980051072/?
value=0&amp;guid=ON&amp;script=0"/>< /div>
Voc vai ver essas setas em qualquer pgina de pergunta. Com elas, voc pode
dizer se uma pergunta ou uma resposta foram relevantes ou no.prximaX
Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.prximaX
Caso haja alguma dvida sobre a pergunta, adicione um comentrio. O espao de
respostas deve ser utilizado apenas para responder a pergunta.prximaX
Se o autor da pergunta marcar uma resposta como solucionada, esta marca
aparecer.prximaX
Clique aqui para mais detalhes sobre o funcionamento do GUJ!prximaX

You might also like