Estou montando meus gráficos e não estou conseguindo fazer com que apareça os valores dentro gráfico (ex. o valor real em cima da barra). A princípio tudo ok (o gráfico com barras e linhas, a legenda, a escala nos eixos), mas nada de valores dos itens.
Até já copie códigos de gráficos do modo q eu quero e mesmo assim não aparece os valores.
renderer.setBaseItemLabelGenerator(new StandardCategoryItemLabelGenerator());
renderer.setBaseItemLabelsVisible(false);
ItemLabelPosition p = new ItemLabelPosition(ItemLabelAnchor.CENTER,
TextAnchor.CENTER, TextAnchor.CENTER, 0.0);
renderer.setBasePositiveItemLabelPosition(p);
renderer é um CategoryItemRenderer…
Fernando.
Presciso de mais uma ajuda.
O código que vc forneceu funcionou perfeitamente.
Mas devido ao pontos serme mto próximos e os valores muito grande, eles ficaram um por cima do outro.
Já tentei organiza para que isso não ocorresse, porém sem sucesso.
existe alguma forma de fazer isso automaticamente???
desde já agradecido.
G
geidivan
Cara, ainda não apareceu. O meu gráfico é de barras.
ItemLabelPosition p = new ItemLabelPosition(ItemLabelAnchor.INSIDE12,
TextAnchor.CENTER_RIGHT, TextAnchor.CENTER_RIGHT,
-Math.PI / 2.0);
renderer.setBasePositiveItemLabelPosition(p);
ItemLabelPosition p2 = new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12,
TextAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, -Math.PI / 2.0);
renderer.setPositiveItemLabelPositionFallback(p2);
Fernando
F
Fernando_Generoso_da
geidivan,
faz o seguinte: Cria um datset ficticio (nao sei se tu já está utilizando), utiliza o trecho de código que passei e ve se funciona. Se não funcionar, cola tua classe aqui para darmos uma olhada e tentar ver o que está acontecendo.
Agora, abusando mais um pouco, você sabe qual desses ItemLabelAnchor.OUTSIDE deixa o valor do lado de fora no canto superior sem ficar por cima da barra?
Obrigado cara, ajudou demais.
F
Fernando_Generoso_da
Cara,
Tentativa e erro
vai testando até achar o que melhor se adequa a tua necessidade…blz?
G
geidivan
Ok. Não vou te perturbar mais.
Obrigado.
[RESOLVED]
F
Fernando_Generoso_da
hehehehe,
não é perturbar, mas é que a resposta não tenho assim de bate-pronto. Também terei que testar pra achar os valores ideais, sacou ??
Fernando
F
Fernando_Generoso_da
geidivan,
Ve se é isso:
ItemLabelPosition p = new ItemLabelPosition(ItemLabelAnchor.INSIDE1,
TextAnchor.CENTER_RIGHT, TextAnchor.CENTER_RIGHT,
-Math.PI / 2.0);
renderer.setBasePositiveItemLabelPosition(p);
G
geidivan
Pensei que fosse esse também, mas ele pega um pedaço da barra ainda. Mas tá bom cara, esse aí vai servir. Firulas ficam pra depois. rsrs.
Agora tô apanhando é na inclinação do PieChart. Não consigo mudar a inclinação da pizza.
falow.
F
Fernando_Generoso_da
isso ajuda
plot.setCircular(false);
:
A
alepenchel
Fernando Generoso da Rosa:
alepenchel, tenta isso:
ItemLabelPosition p = new ItemLabelPosition(ItemLabelAnchor.INSIDE12,
TextAnchor.CENTER_RIGHT, TextAnchor.CENTER_RIGHT,
-Math.PI / 2.0);
renderer.setBasePositiveItemLabelPosition(p);
ItemLabelPosition p2 = new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12,
TextAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, -Math.PI / 2.0);
renderer.setPositiveItemLabelPositionFallback(p2);
Fernando
Valew a dica Fernando…de umas ajustadas para o que eu queria.
agora ta funcionando que é uma blz.
PROBLEMA RESOLVIDO
Abraços.
G
geidivan
Mas eu quero definir quantos graus eu quero ‘deitar’ a pizza. Tipo, 20 graus.
F
Fernando_Generoso_da
Cara,
Estou pra te dizer que não tem um método que faça isso. o que tu pode fazer para “melhorar” ou chegar perto é:
RectangleInsets ri = new RectangleInsets(100.0, 50.0, 100.0, 50.0);
plot.setInsets(ri);
Fernando
G
geidivan
YAHOOO!!
Beleza. Mas a área de plotagem tá diminuindo. Como mantenho? rsrs.
F
Fernando_Generoso_da
O RectangleInsets provavelmente define a área de plotagem…
Aí tu teria que trabalhar de uma forma que ele alongasse o teu gráfico para dar a impressão de estar “deitado”, e também tivesse uma área de visualização boa…testa vários valores e tenta achar um padrão…hehehe
Fernando
A
alepenchel
Olá Pessoal.
Estou prescisando de outra ajuda…
Estou gerando um gráfico de linhas, e por default, a jfreechart gera os posntos do grafico no formato de quadrados.
Estou querendo modificar esse formato para circulos e tambem mudar a cor interna desses pontos.
Seria possivel gerar um PNG B&W?
(Eu criei um topico sobre isto, mas ainda não obtive resposta.)
Abraços,
E muito obrigado pelos exemplos
<><
F
Fernando_Generoso_da
Pra falar a verdade, nem o tutorial do jfreechart é “tão” completo assim…o que vale muito a pena são os exemplos. Vale cada centavo pago pela documentação.
Fernando
A
alepenchel
Djonatah:
Eu tenho mais uma pergunta,
Seria possivel gerar um PNG B&W?
(Eu criei um topico sobre isto, mas ainda não obtive resposta.)
Abraços,
E muito obrigado pelos exemplos
<><
tem como cria sim amigo…
segue um exemplo
try{FileOutputStreamfos=newFileOutputStream(name);}catch(IOExceptione){e.printStackTrace();}DefaultCategoryDatasetdataset=newDefaultCategoryDataset();dataset.addValue(10,"Legenda","0 horas");dataset.addValue(20,"Legenda","2 horas");JFreeChartgrafico=ChartFactory.createLineChart("","Intervalo de Horas","Acessos",dataset,PlotOrientation.VERTICAL,true,false,false);ChartUtilities.writeChartAsPNG(fos,grafico,500,350);//linha que gera uma imagem do tipo PNG e salva em discoSystem.out.println("Imagem gerada com sucesso.");
o exemplo acima salva a imagem na pasta da classe que está sendo executada.
abraços.
D
Djonatah
Boa tarde pessoal,
A partir dos examplos e de uma ampla procurada na documentacao, eu criei alguns charts.
Mas estou tendo um pequeno problema em um gráfico de barras. As barras estão desalinhadas quanto ao eixo mostrado no gráfico e rótulos em baixo dele. Eu não alterei nada em relação a isso (apenas a rotação das rótulos) então quer dizer que isso veio por default. Isso é um bug?
tem como corrigir?
Abracos e obrigado toda ajuda
<><
R
renrs
To precisando fazer a mesma coisa, so que para grafico de linhas e
Scatter.
tentei o que esta descrito aqui e nao funcionou, alguem teria um exemplo para grafico de linhas?
Não ta aparecendo os valores dentro da area dde plotagem do grafico de linha.