Изменение цвета ртути в термометре в JFreeChart

Я создал диаграмму термометра с JFreeChart, но я хочу изменить цвет ртути в термометре. Как я могу это сделать? Вот мой код до сих пор; пожалуйста, объясните, где изменить этот код:

final DefaultValueDataset dataset = new DefaultValueDataset(new Double(10)); // create the chart... final ThermometerPlot plot = new ThermometerPlot(dataset); final JFreeChart chart = new JFreeChart("Thermometer Demo 2", // chart title JFreeChart.DEFAULT_TITLE_FONT, plot, // plot false); // include legend chart.setBackgroundPaint(new Color(241,250,224)); plot.setMercuryPaint(); final NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis(); rangeAxis.setUpperBound(50); 

Вы можете искать setSubrangePaint() , показанный ниже.

ThermometerDemo

 import java.awt.Color; import java.awt.EventQueue; import java.awt.GridLayout; import javax.swing.JFrame; import javax.swing.JPanel; import org.jfree.chart.ChartPanel; import org.jfree.chart.JFreeChart; import org.jfree.chart.plot.ThermometerPlot; import org.jfree.data.general.DefaultValueDataset; /** @see http://stackoverflow.com/questions/7597015 */ public class ThermometerDemo extends JPanel { private static final int W = 200; private static final int H = 2 * W; public ThermometerDemo(double value) { this.setLayout(new GridLayout()); DefaultValueDataset dataset = new DefaultValueDataset(value); ThermometerPlot plot = new ThermometerPlot(dataset); plot.setSubrangePaint(0, Color.green.darker()); plot.setSubrangePaint(1, Color.orange); plot.setSubrangePaint(2, Color.red.darker()); JFreeChart chart = new JFreeChart("Demo", JFreeChart.DEFAULT_TITLE_FONT, plot, true); this.add(new ChartPanel(chart, W, H, W, H, W, H, false, true, true, true, true, true)); } public static void main(final String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { JFrame f = new JFrame("Demo"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setLayout(new GridLayout(1, 0)); f.add(new ThermometerDemo(40)); f.add(new ThermometerDemo(60)); f.add(new ThermometerDemo(80)); f.pack(); f.setVisible(true); } }); } } 
  • Преобразование серии JFreeChart TimeSeries с данными дня в данные недели или месяца?
  • Случайные ошибки при смене серии с использованием JFreeChart
  • Предотrotation переноса JPreeChart DialPlot с большими значениями?
  • Добавление точек в XYSeries динамически с помощью JfreeChart
  • Использование JFreeChart Scatter Plots - это способ разделить стили для наборов данных?
  • JFreechart Loop через сектора полярных диаграмм
  • Как установить одинаковый масштаб для осей домена и диапазона JFreeChart
  • Как повернуть метки меток на домене числовой оси в JFreeChart?
  • Диапазон настройки для X, Y Axis-JfreeChart
  • Линейная диаграмма JFreeChart с текстом в каждой точке
  • JFreeChart MouseListener не разрешает элементы диаграммы
  • Interesting Posts

    Как отправить простую электронную почту программно? (существует простой способ сделать это?)

    Как я могу сделать переадресацию кеширования Chrome?

    Случайно удален C: \ Users \ public

    Почему csrss.exe и ccsvchst.exe измельчают мой жесткий диск до 45 минут за раз?

    Eclipse сообщает об обновлении библиотеки позже, чем подключаемый модуль ADT

    URI из Intent.ACTION_GET_CONTENT в файл

    Отключить учетную запись Microsoft из моей локальной учетной записи

    Excel извлекает подстроку из строки

    Слайд-шоу FFMPEG с изображений – отображается только один кадр

    прозрачный экран в java

    Почему tracert показывает частный IP-адрес сразу после моего маршрутизатора, хотя у него есть общедоступный IP-адрес?

    Почему только пользовательский интерфейс разрешает изменять пользовательский интерфейс?

    Использование подготовленного оператора и переменной bind Order By в Java с драйвером JDBC

    Entity Framework 4.1 загрузка по умолчанию по умолчанию

    Как обмениваться памятью между процессом fork ()?

    Давайте будем гением компьютера.