Example usage for org.jfree.chart.renderer.xy HighLowRenderer setSeriesPaint

List of usage examples for org.jfree.chart.renderer.xy HighLowRenderer setSeriesPaint

Introduction

In this page you can find the example usage for org.jfree.chart.renderer.xy HighLowRenderer setSeriesPaint.

Prototype

public void setSeriesPaint(int series, Paint paint) 

Source Link

Document

Sets the paint used for a series and sends a RendererChangeEvent to all registered listeners.

Usage

From source file:org.jfree.chart.demo.HighLowChartDemo3.java

private static JFreeChart createChart(OHLCDataset ohlcdataset) {
    JFreeChart jfreechart = ChartFactory.createHighLowChart("OHLC Demo 3", "Time", "Price", ohlcdataset, true);
    XYPlot xyplot = (XYPlot) jfreechart.getPlot();
    HighLowRenderer highlowrenderer = (HighLowRenderer) xyplot.getRenderer();
    highlowrenderer.setBaseStroke(new BasicStroke(2.0F));
    highlowrenderer.setSeriesPaint(0, Color.blue);
    DateAxis dateaxis = (DateAxis) xyplot.getDomainAxis();
    dateaxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE);
    NumberAxis numberaxis = (NumberAxis) xyplot.getRangeAxis();
    numberaxis.setAutoRangeIncludesZero(false);
    NumberAxis numberaxis1 = new NumberAxis("Price 2");
    numberaxis1.setAutoRangeIncludesZero(false);
    xyplot.setRangeAxis(1, numberaxis1);
    xyplot.setDataset(1, createDataset2());
    xyplot.setRenderer(1, new CandlestickRenderer(10D));
    xyplot.mapDatasetToRangeAxis(1, 1);//  ww w.j av  a  2  s. com
    ChartUtilities.applyCurrentTheme(jfreechart);
    return jfreechart;
}

From source file:org.optaplanner.examples.cheaptime.swingui.CheapTimePanel.java

private XYPlot createTaskAssignmentPlot(TangoColorFactory tangoColorFactory, CheapTimeSolution solution) {
    OHLCSeriesCollection seriesCollection = new OHLCSeriesCollection();
    Map<Machine, OHLCSeries> machineSeriesMap = new LinkedHashMap<Machine, OHLCSeries>(
            solution.getMachineList().size());
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setTickLength(0.0);/*from   ww w .j a v  a2  s.  c  o m*/
    int seriesIndex = 0;
    OHLCSeries unassignedProjectSeries = new OHLCSeries("Unassigned");
    seriesCollection.addSeries(unassignedProjectSeries);
    machineSeriesMap.put(null, unassignedProjectSeries);
    renderer.setSeriesStroke(seriesIndex, new BasicStroke(3.0f));
    renderer.setSeriesPaint(seriesIndex, TangoColorFactory.SCARLET_1);
    seriesIndex++;
    for (Machine machine : solution.getMachineList()) {
        OHLCSeries machineSeries = new OHLCSeries(machine.getLabel());
        seriesCollection.addSeries(machineSeries);
        machineSeriesMap.put(machine, machineSeries);
        renderer.setSeriesStroke(seriesIndex, new BasicStroke(3.0f));
        renderer.setSeriesPaint(seriesIndex, tangoColorFactory.pickColor(machine));
        seriesIndex++;
    }
    List<TaskAssignment> taskAssignmentList = new ArrayList<TaskAssignment>(solution.getTaskAssignmentList());
    Collections.sort(taskAssignmentList,
            groupByMachineCheckBox.isSelected() ? groupByMachineTaskAssignmentComparator
                    : stableTaskAssignmentComparator);
    int pixelIndex = 0;
    for (TaskAssignment taskAssignment : taskAssignmentList) {
        Task task = taskAssignment.getTask();
        Integer startPeriod = taskAssignment.getStartPeriod();
        Integer endPeriod = taskAssignment.getEndPeriod();
        if (startPeriod == null) {
            startPeriod = task.getStartPeriodRangeFrom();
            endPeriod = startPeriod + task.getDuration();
        }
        OHLCSeries machineSeries = machineSeriesMap.get(taskAssignment.getMachine());
        machineSeries.add(new FixedMillisecond(pixelIndex), task.getStartPeriodRangeFrom(), startPeriod,
                endPeriod, task.getStartPeriodRangeTo() + task.getDuration());
        pixelIndex++;
    }
    NumberAxis domainAxis = new NumberAxis("Task");
    domainAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    domainAxis.setRange(-0.5, taskAssignmentList.size() - 0.5);
    domainAxis.setInverted(true);
    return new XYPlot(seriesCollection, domainAxis, null, renderer);
}