dúvida em editar propriedades de gráfico do JFreeChart

0 respostas
gtludwig

Olás!

Tenho um gráfico do JFreeChart do tipo SpiderWebPlot (que funciona!) e preciso alterar algumas coisas nele. Não consegui resolver minhas dúvidas consultando o JavaDoc desse tipo de gráfico aqui.

O SpiderWebPlot que uso é definido por:
private SpiderWebPlot createChart(CategoryDataset categorydataset) {
      SpiderWebPlot spiderwebplot = new SpiderWebPlot(categorydataset);
      
      spiderwebplot.setStartAngle(60D);
      spiderwebplot.setMaxValue(10D);
      
      spiderwebplot.setBaseSeriesPaint(Color.BLACK);
      spiderwebplot.setOutlinePaint(Color.BLACK);
      spiderwebplot.setWebFilled(true);
      spiderwebplot.setInteriorGap(0.40000000000000002D);
      
      return spiderwebplot;
   }
O dataset que usei para definir este gráfico é assim:
private DefaultCategoryDataset createDataset(float[] floatArray) {
      DefaultCategoryDataset dataset = new DefaultCategoryDataset();
      String st1 = "Axis Type 1";
      String st2 = "Axis Type 2";
      String st3 = "Axis Type 3";
      String st4 = "Axis Type 4";
      String st5 = "Axis Type 5";
      String st6 = "Axis Type 6";
      
      Double dST1 = (double) floatArray[1];
      Double dST2 = (double) floatArray[2];
      Double dST3 = (double) floatArray[3];
      Double dST4 = (double) floatArray[4];
      Double dST5 = (double) floatArray[5];
      Double dST6 = (double) floatArray[6];

      dataset.addValue(1.25F, "bad", st1);
      dataset.addValue(1.25F, "bad", st2);
      dataset.addValue(1.25F, "bad", st3);
      dataset.addValue(1.25F, "bad", st4);
      dataset.addValue(1.25F, "bad", st5);
      dataset.addValue(1.25F, "bad", st6);
      
      dataset.addValue(3.75F, "ok", st1);
      dataset.addValue(3.75F, "ok", st2);
      dataset.addValue(3.75F, "ok", st3);
      dataset.addValue(3.75F, "ok", st4);
      dataset.addValue(3.75F, "ok", st5);
      dataset.addValue(3.75F, "ok", st6);
      
      dataset.addValue(6.25F, "good", st1);
      dataset.addValue(6.25F, "good", st2);
      dataset.addValue(6.25F, "good", st3);
      dataset.addValue(6.25F, "good", st4);
      dataset.addValue(6.25F, "good", st5);
      dataset.addValue(6.25F, "good", st6);
      
      dataset.addValue(8.75F, "verygood", st1);
      dataset.addValue(8.75F, "verygood", st2);
      dataset.addValue(8.75F, "verygood", st3);
      dataset.addValue(8.75F, "verygood", st4);
      dataset.addValue(8.75F, "verygood", st5);
      dataset.addValue(8.75F, "verygood", st6);
      
      dataset.addValue(10, "excelent", st1);
      dataset.addValue(10, "excelent", st2);
      dataset.addValue(10, "excelent", st3);
      dataset.addValue(10, "excelent", st4);
      dataset.addValue(10, "excelent", st5);
      dataset.addValue(10, "excelent", st6);
      
      dataset.addValue(dST1, "variable", st1);
      dataset.addValue(dST2, "variable", st2);
      dataset.addValue(dST3, "variable", st3);
      dataset.addValue(dST4, "variable", st4);
      dataset.addValue(dST5, "variable", st5);
      dataset.addValue(dST6, "variable", st6);

      return dataset;
   }

Este dataset plota uma grade para as séries bad, ok, good, verygood e excelent de maneira que todos os eixos sejam exibidos mesmo que o valor para variável for zero.

Eu preciso de ajuda em: 1) plotar todos os eixos sem ter setar as séries bad, ok, good, verygood e excelent; 2) se 1) não for possível, plotar as séries bad, ok, good, verygood e excelent com setWebFilled(false) e varible WITH setWebFilled(true); 3) exibir os nomes das categorias em duas linhas. Gostaria de exibir os nomes das categorias como
Axis Type
1
com as linhas alinhadas pelo meio delas, mas iniciando por quebrar a linha o operador \n em
String st1 = "Axis Type 1";
não parece funcionar; 4) controlar as cores para as categorias plotadas;

Tentei procurar resolver essas questões consultando a documentação oficial Developer Guide deles, e mais complica que ajuda. Também tentei postar uma thread no fórum de suporte deles e está com 65+ visualizações mas nenhuma resposta... desde início de fevereiro de 2010.

Obrigado desde já!
Gustavo

Criado 21 de abril de 2010
Respostas 0
Participantes 1