我需要从jFreeChart中的rangeAxis缩小,因此我已将zoomRange用于此目的。

但是我不明白什么是lowerPercentupperPercent

我要如下图所示设置rangeAxis。我怎样才能做到这一点?

我已经尝试过了,但是不知道rangeAxis.zoomRange(0,?)的值是什么

public class Profilee  {



    double last=0;
    ChartFrame frame1;

    JFreeChart chart;
    ChartUtilities cu=new ChartUtilitiesImpl();

    public void generateProfile(double[] pointValue,double[] distance){
        ArrayList pv=new ArrayList();
        ArrayList dist=new ArrayList();

        pv.add(pointValue);
        dist.add(distance);

        XYSeries series = new XYSeries("");
        for(int i=0;i<pointValue.length-1;i++){

              series.add(last,pointValue[i]);
              last=distance[i];
         }



      XYDataset xyDataset = new XYSeriesCollection(series);
      chart= ChartFactory.createXYAreaChart("Profile View Of Contour", "Distance", "Contour Value", xyDataset, PlotOrientation.VERTICAL, true, true, false);

      ValueAxis rangeAxis = chart.getXYPlot().getRangeAxis();

      //rangeAxis.setLowerBound(-3);
      rangeAxis.zoomRange(0,?);     //What should be Value over here?
      frame1=new ChartFrame("XYLine Chart",chart);

      frame1.setVisible(true);
      frame1.setSize(1300,700);
    }


    public static void main(String ar[]){
        Profilee pro=new Profilee();
        double[] pv={3,2,3,0,5,-2,10};
        double[] dist={1,4,8,12,14,20,24};
        pro.generateProfile(pv, dist);



    }

    private static class ChartUtilitiesImpl extends ChartUtilities {

        public ChartUtilitiesImpl() {
        }
    }
}

最佳答案

默认情况下,ValueAxis自动调整其范围以适应数据集。您可以使用setRange()方法之一采用显式范围,如上图所示。

rangeAxis.setRange(-8, 12);

07-24 15:03