

在通过XYLineAndShapeRenderer绘画数据图时,需要的是蝶形图,可是renderers.setBaseLinesVisible(true);时出现不了,请问各位大神,应该怎么设置呢
代码如下:
jfreechartbutterfly = ChartFactory.createXYLineChart(
graphics, "Bx volitage", "Bz volitage", dataset2 , PlotOrientation.VERTICAL, true, true, false);
XYPlot plot = (XYPlot) jfreechartbutterfly.getPlot();
plot.setBackgroundPaint(Color.white);
plot.setDomainGridlinePaint(Color.BLACK);
plot.setDomainGridlinesVisible(true);
plot.setRangeGridlinePaint(Color.GRAY);
XYTextAnnotation textpointer = new XYTextAnnotation("SS",1,5);
textpointer.setBackgroundPaint(Color.YELLOW);
textpointer.setPaint(Color.CYAN);
jfreechartbutterfly.getXYPlot().addAnnotation(textpointer);
XYLineAndShapeRenderer renderers = (XYLineAndShapeRenderer) plot.getRenderer();
// 折线的粗细调
StandardXYToolTipGenerator xytool = new StandardXYToolTipGenerator();
renderers.setToolTipGenerator(xytool);
renderers.setStroke(new BasicStroke(1.5f));
// 是否显示折点
renderers.setBaseShapesVisible(true);
// 是否显示折线
renderers.setBaseLinesVisible(true);
renderers.setBaseSeriesVisible(true);
// renderer.setLinesVisible(true); //series 点(即数据点)间有连线可见
// series 点(即数据点)间有连线可见 显示折点数据
renderers.setSeriesStroke(0, new BasicStroke(2.0F, 1, 1, 1.0F, new float[] { 10F, 6F }, 0.0F));
renderers.setBaseItemLabelGenerator((StandardXYItemLabelGenerator) new StandardXYItemLabelGenerator());
//上面这句是设置数据项标签的生成器
renderers.setBaseItemLabelsVisible(false);//设置项标签显示
renderers.setDrawOutlines(false);// 设置拐点不同用不同的形状
renderers.setUseFillPaint(true);// 设置线条是否被显示填充颜色
renderers.setBaseFillPaint(Color.red);//// 设置拐点颜色
renderers.setDrawSeriesLineAsPath(false);
/* XYSplineRenderer splinerenderer = new XYSplineRenderer();//catplot.getRenderer();
splinerenderer.setBaseShapesVisible(false); //绘制的线条上不显示图例,如果显示的话,会使图片变得很丑陋
splinerenderer.setSeriesPaint(0, Color.GREEN); //设置0号数据的颜色。这是手工设置线条颜色的方法
splinerenderer.setPrecision(10); //设置精度,大概意思是在源数据两个点之间插入5个点以拟合出一条平滑曲线
splinerenderer.setSeriesStroke(0, new BasicStroke(4.0F, 1, 1, 1.0F));*/
// 设置第二,三种数据表示为虚线,默认是直线
// renderer.setBaseShapesFilled(true);
// renderer.setBaseLinesVisible(true);
// renderer.setDrawOutlines(true);//是否折线的数据点之间用线连
// renderer.setUseFillPaint(true); //指定是否填充数据点的Paint也被用于画数据点形状的边框
// renderer.setBaseSeriesVisible(true); //设置为false,线不可见
// renderer.setShapesFilled(false); //数据点被填充即不是空心点(CrosshairDemo3)
// renderer.setSeriesFillPaint(0, Color.black); //数据点填充为红色
// renderer.setBaseShapesVisible(false); //绘制的线条上不显示图例,如果显示的话,会使图片变得很丑陋
// renderer.setSeriesPaint(0, Color.red); //设置0号数据的颜色。这是手工设置线条颜色的方法
//
NumberAxis rangeAxis =(NumberAxis) plot.getDomainAxis();//获得x轴对象
rangeAxis.setAutoRange(false);
rangeAxis.setRange(1000.0D, 1800.0D);
ValueAxis axis = plot.getRangeAxis(); //y轴设置
axis.setAutoRange(true);
axis.setFixedAutoRange(60000.0); //数据轴固定数据范围(设置100的话就是显示MAXVALUE到MAXVALUE-100那段数据范围)
rangeAxis.setAutoRange(false);
axis.setRange(0.00D, 2500.0D);
return jfreechartbutterfly;