前提
Java JfreeChart CandleStickChartを使用してローソク足のチャートを作成しており、
ローソク足の色の変更ができない。
実現したいこと
Java JfreeChart CandleStickChartを使用してローソク足のチャートを作成しており、
ローソク足の色の変更を行いたいです。
発生している問題・エラーメッセージ
色の変更に関して関係のある部分は、ChartFactory.createCandlestickChartのclassファイル内の
plot.setRenderer(new CandlestickRenderer()); の部分だと思いますが、別のクラスからplot部分を変更する方法がわかりません。
public static JFreeChart createCandlestickChart(String title, String timeAxisLabel, String valueAxisLabel, OHLCDataset dataset, boolean legend) { ValueAxis timeAxis = new DateAxis(timeAxisLabel); NumberAxis valueAxis = new NumberAxis(valueAxisLabel); XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, null); plot.setRenderer(new CandlestickRenderer()); JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend); currentTheme.apply(chart); return chart; }
試したこと
色の変更に関して、 CandlestickRendererクラスの setDownPaint(Paint paint)メソッドも実行しましたが、変更できませんでした。
下記コード2行目のChartFactory.createCandlestickChartにCandlestickRendererを適用したいのですが、
その方法がわかりません。(下記コードでは変更したいチャートと異なるインスタンスを作り、そちらの色の変更はできている?)
private JFreeChart createChart(final DefaultHighLowDataset dataset) { final JFreeChart chart = ChartFactory.createCandlestickChart( "Candlestick Demo", "Time", "Price", dataset, false); CandlestickRenderer chartConfig= new CandlestickRenderer(); Color color = new Color(244,53,44); Color color2 = new Color(255,255,255); chart.setUpPaint(color); chartConfig.setDownPaint(color2); chartConfig.setDrawVolume(false); currentTheme.apply(chart); return chart;
お手数おかけしますが、ご教示いただきたく存じます。
よろしくお願いします。

回答1件
あなたの回答
tips
プレビュー