问题
As shown in image the graph is from line y=0, here i want to plot a graph from y=50, how can i specify this in JFreeChart
?
Here is Some Code:
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);
}
回答1:
You can specify the bottom value of the Y axis with the setLowerBound() method of the ValueAxis class.
Using your example:
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);
来源:https://stackoverflow.com/questions/10084723/shift-the-origin-from-0-0-to-0-50-in-jfreechart