1

Y軸にカウント、 X軸に日付を表​​示する積み上げ棒グラフを作成しました。問題は、 x軸に多くの日付があると、非常に雑然として読めなくなることです。週に 1 日など、一部の日付のみを表示したいと考えています。それは可能ですか?を使用ChartFactory.createStackedBarChart()してチャートを作成していますが、データはDefaultCategoryDataSet.

どんな入力でも大歓迎です!

4

2 に答える 2

3

aCategoryAxisのドメイン軸に使用される aStackedBarChartの場合、メソッドにはかなりの柔軟性がありますsetCategoryLabelPositions()。一般的な使用法は、ここに示されているソースBarChartDemo1に示されています。

CategoryAxis domainAxis = plot.getDomainAxis();
domainAxis.setCategoryLabelPositions(
    CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 6.0));
于 2012-08-29T18:45:14.697 に答える
0

ラベルジェネレーターでgenerateLabelメソッドをオーバーライドしてみましたか?何かのようなもの:

chart.getCategoryPlot().getRenderer().setBaseItemLabelGenerator(
  new CategoryItemLabelGenerator() {

    public String generateColumnLabel(CategoryDataset dataset, Integer column) {
      if(column % 7 == 0)
        super.generateColumnLabel(dataset, column)
      else 
        ""
    }
  }
);

コードはテストしていませんが、7列ごとにラベルを出力するだけです。ラベルジェネレータの詳細については、こちらをご覧ください:http ://www.jfree.org/jfreechart/api/javadoc/org/jfree/chart/labels/CategoryItemLabelGenerator.html

于 2012-08-29T13:45:43.697 に答える