如图所示,该图是从y = 0行开始的,这里我想从 y = 50开始绘制一个图,如何在JFreeChart?中指定呢?
这是一些代码:
public class Profile { double last=0; public void generateProfile(int[] pointValue,double[] distance){ ArrayList pv=new ArrayList(); ArrayList dist=new ArrayList(); pv.add(pointValue); dist.add(distance); for(int i=0;i<pv.size();i++){ System.out.print(pointValue[i]); } for(int i=0;i<dist.size();i++){ System.out.print(distance[i]); } XYSeries series = new XYSeries("Average Weight"); for(int i=0;i<pointValue.length;i++){ if(pointValue[i]!=0){ series.add(last,pointValue[i]); last=distance[i]; } } XYDataset xyDataset = new XYSeriesCollection(series); JFreeChart chart; chart= ChartFactory.createXYAreaChart("Profile View Of Contour", "Distance", "Contour Value", xyDataset, PlotOrientation.VERTICAL, true, true, false); ChartFrame frame1=new ChartFrame("XYLine Chart",chart); frame1.setVisible(true); frame1.setSize(300,300); }
您可以使用 ValueAxis类的setLowerBound()方法指定Y轴的底部值。
使用您的示例:
JFreeChart chart; chart = ChartFactory.createXYAreaChart("Profile View Of Contour", "Distance", "Contour Value", xyDataset, PlotOrientation.VERTICAL, true, true, false); ValueAxis rangeAxis = chart.getXYPlot().getRangeAxis(); rangeAxis.setLowerBound(50.0f);