2

移動平均だけでウィンドウを離れることができるように、ohlc バーのチャートを非表示にしようとしています。2 つのシリーズ (ohlc バーと移動平均) のコードは次のとおりです。

private static JFreeChart createChart(OHLCDataset dataset)
{
    JFreeChart chart = ChartFactory.createHighLowChart(
            "HighLowChartDemo2",
            "Time",
            "Value",
            dataset,
            true);

    XYPlot plot = (XYPlot)chart.getPlot();

    DateAxis axis = (DateAxis)plot.getDomainAxis();
    axis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    NumberAxis yAxis = (NumberAxis)plot.getRangeAxis();
    yAxis.setNumberFormatOverride(new DecimalFormat("$0.00"));

    //overlay the moving average dataset...
    XYDataset dataset2 = MovingAverage.createMovingAverage(dataset, "-MAVG", 3 * 24 * 60 * 60 * 1000L, 0L);
    plot.setDataset(1, dataset2);
    plot.setRenderer(1, new StandardXYItemRenderer());

    XYItemRenderer theRenderer = plot.getRenderer(0);
    theRenderer.setSeriesVisible(0, false);

    return chart;
}

何らかの理由で setSeriesVisible 関数が機能していません。何か案は?ありがとうございました。

4

1 に答える 1

2

HighLowRendererとを無視しgetSeriesVisible()ますgetBaseSeriesVisible()、とをチェックします。あなたは:を置き換えることができますgetDrawOpenTicks()getDrawCloseTicks()OHLCDataset

plot.setDataset(0, null);

OHLCDatasetまたは、最初にを追加しないでください。を作成するために使用するだけMovingAverageです。

于 2012-07-02T14:43:22.483 に答える