Изменение цвета фона jFreeChart
Я пытаюсь изменить цвет фона jfreechart. Он отображается серым цветом, и я хочу белый фон. я пытался
chart.setBackgroundPaint(Color.WHITE);
Однако это не показывает мне белый фон.
У меня есть следующий код, который отображает сюжет
chart = ChartFactory.createXYLineChart("Line Chart","Year","Temperature", dataset);
ChartPanel chartPanel = new ChartPanel(chart, false);
graph1.setLayout(new BorderLayout());
graph1.add(chartPanel, BorderLayout.EAST);
graph1.add(chartPanel);
SwingUtilities.updateComponentTreeUI(this);
graph1.updateUI();
System.out.println("Database created successfully...");
Как мне установить белый фон?
Ответы
Ответ 1
ChartPanel наследует метод javax.swing.JComponent.setBackground(java.awt.Color)
chartPanel.[setBackground][2]( Color.RED );
Или попробуйте:
chart.getPlot().setBackgroundPaint( Color.BLUE );
Смотрите документацию по JFreeChart.getPlot() и Plot.setBackgroundPaint()
Смотрите этот пост на SO или этот тоже.
Ответ 2
Вы должны использовать JFreeChart.getPlot().setBackgroundPaint(Color.WHITE);
как это:
public static void main(String[] args) {
DefaultPieDataset pieDataset = new DefaultPieDataset();
pieDataset.setValue("LoggedIn" +": "+ 5, 10);
pieDataset.setValue("LoggedOut" +": "+ 8, 17);
JFreeChart jfc = ChartFactory.createPieChart("title", pieDataset, false, false, false );
jfc.getPlot().setBackgroundPaint(Color.WHITE);
ChartPanel chart = new ChartPanel(jfc);
JFrame frame = new JFrame();
frame.add(chart);
frame.pack();
frame.setVisible(true);
}
Я надеюсь, что это помогает!