怎么设置啊? 我柱状里显示的信息长度满大 都显示不了 可以把柱状的宽度设置下吗?
哪位朋友能告诉我怎么解决啊?谢谢我用的是JFREECHART1.0.1

解决方案 »

  1.   

    使用类BarRenderer可以对柱图中的元素进行相关设置:
    void setItemMargin(double percent)--每个柱之间的间距
    void setMaxBarWidth(double percent)--每个柱的最大宽度
    void setMinimumBarLength(double min)--最短的柱的长度,避免数值太小而显示不出
    ...
      

  2.   

    JFreeChart chart = ChartFactory.createBarChart3D("水果销量图统计",null,null,dataset,PlotOrientation.VERTICAL,true,false,false);
    chart.setBackgroundPaint(Color.WHITE);
    CategoryPlot plot = chart.getCategoryPlot(); CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setAxisLineVisible(false);
    plot.setDomainAxis(domainAxis); ValueAxis rangeAxis = plot.getRangeAxis();
    //设置最高的一个 Item 与图片顶端的距离
    rangeAxis.setUpperMargin(0.15);
    //设置最低的一个 Item 与图片底端的距离
    rangeAxis.setLowerMargin(0.15);

    plot.setRangeAxis(rangeAxis); BarRenderer3D renderer = new BarRenderer3D();
    renderer.setBaseOutlinePaint(Color.BLACK);
    //设置 Wall 的颜色
    renderer.setWallPaint(Color.gray);
    //置每种水果代表的柱的颜色
    renderer.setSeriesPaint(0, new Color(0, 0, 255));
    renderer.setSeriesPaint(1, new Color(0, 100, 255));
    renderer.setSeriesPaint(2, Color.GREEN);

    //设置每个地区所包含的平行柱的之间距离
    renderer.setItemMargin(0.1);
    renderer.setMaximumBarWidth(15.5);
    renderer.setMinimumBarLength(15.5);

    //显示每个柱的数值,并修改该数值的字体属性
    renderer.setItemLabelGenerator(new StandardCategoryItemLabelGenerator());
    renderer.setItemLabelsVisible(true);
    plot.setRenderer(renderer); //设置柱的透明度
    plot.setForegroundAlpha(0.6f);
    //设置地区、销量的显示位置
    plot.setDomainAxisLocation(AxisLocation.TOP_OR_RIGHT);
    plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_RIGHT);我设置了怎么还是冒改变柱字的宽度啊?字还是冒显示出来郁闷啊
      

  3.   

    //显示每个柱的数值
    BarRenderer3D renderer = new BarRenderer3D();
    renderer.setItemLabelGenerator(new StandardCategoryItemLabelGenerator());
    renderer.setItemLabelFont(new Font("黑体",Font.PLAIN,12));
    renderer.setItemLabelsVisible(true);//显示每个柱的数值  true:显示 false:不显示
    renderer.setMaximumBarWidth(0.20);//显示每个柱的最大宽度
    renderer.setMinimumBarLength(1.0);//最短的柱的长度,避免数值太小而显示不出
    //renderer.setItemMargin(double percent);//每个柱之间的间距
    plot.setRenderer(renderer);