Изменить цвета StackedBarChart на основе ключевых значений
Я хотел бы изменить цвета stackedBarChart, используя ключевые значения. Я знаю, как сделать это для круговых диаграмм, но не могу сделать то же самое для StackedBarCharts.
Для круговых, по сути, мой подход похож на ответ, изложенный здесь
Строки кода, чтобы отметить:
PiePlot plot = (PiePlot) chart.getPlot();
plot.setSectionPaint("J+1", Color.black);
plot.setSectionPaint("J-1", new Color(120, 0, 120));
Однако для StackedBarChart я не уверен, как это сделать, по сути, я должен изменить существующий код jfreechart ниже:
public static JFreeChart createStackedBarChart(final String title,
final CategoryDataset dataset) {
JFreeChart sectorChart = ChartFactory.createStackedBarChart(title, "",
"", dataset, PlotOrientation.VERTICAL, true, false, false);
CategoryPlot plot = (CategoryPlot) sectorChart.getPlot();
formatCategoryPlot(plot);
sectorChart.getLegend().setBorder(0, 0, 0, 0);
sectorChart.setBorderVisible(false);
sectorChart.setBorderPaint(Color.white);
plot.setOutlineVisible(false);
StackedBarRenderer renderer = (StackedBarRenderer) plot.getRenderer();
return Chart;
}
Так что мой вопрос на самом деле, есть ли эквивалент
PiePlot plot = (PiePlot) chart.getPlot();
plot.setSectionPaint("J+1", Color.black);
для StackedBarCharts? Если да, как я могу его использовать?
По веб-ресурсам я вижу, что в setSeriesPaint что-то есть, но кажется, что цвета меняются в зависимости от индекса. Я хотел бы изменить цвета на основе меток, таких как "J+1".