Example usage for org.jfree.chart.axis DateAxis setDateFormatOverride

List of usage examples for org.jfree.chart.axis DateAxis setDateFormatOverride

Introduction

In this page you can find the example usage for org.jfree.chart.axis DateAxis setDateFormatOverride.

Prototype

public void setDateFormatOverride(DateFormat formatter) 

Source Link

Document

Sets the date format override and sends an AxisChangeEvent to all registered listeners.

Usage

From source file:com.hello2morrow.sonargraph.jenkinsplugin.model.TimeSeriesPlot.java

@Override
protected void applyRendering(XYPlot plot) {
    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(StringUtility.getDateFormat());

    XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer();
    renderer.setBaseShapesVisible(false);
    renderer.setSeriesPaint(0, DATA_COLOR);

    if (m_markerTimestamp > 0) {
        final Marker target = new ValueMarker(m_markerTimestamp);
        target.setPaint(Color.RED);
        target.setLabel("Short Term");
        if ((m_markerPosition * 2) > getDatasetSize()) {
            //Move the label to the left of the marker
            target.setLabelAnchor(RectangleAnchor.TOP_RIGHT);
            target.setLabelTextAnchor(TextAnchor.TOP_LEFT);
        } else {//from w ww .  ja  v  a 2s  .  c o  m
            target.setLabelAnchor(RectangleAnchor.TOP_LEFT);
            target.setLabelTextAnchor(TextAnchor.TOP_RIGHT);
        }
        plot.addDomainMarker(target);
    }
}

From source file:raspihomeapp.ParamForm.java

public void Plotxy() {
    XYSeries series1 = new XYSeries("Punkte1");
    series1.add(5, 0);/*ww  w  . ja v  a2 s .  c  o  m*/
    series1.add(6, 6);
    series1.add(7, 11);
    series1.add(8, 22);
    series1.add(10, 55);

    XYSeries series2 = new XYSeries("Punkte2");
    series2.add(5, 2);
    series2.add(6, 3);
    series2.add(7, 4);

    // Hinzufuegen von series1 und series2 zu der Datenmenge dataset
    XYSeriesCollection dataset2 = new XYSeriesCollection();
    dataset2.addSeries(series1);
    dataset2.addSeries(series2);

    XYSplineRenderer dot = new XYSplineRenderer();

    NumberAxis xax = new NumberAxis("x");
    NumberAxis yax = new NumberAxis("y");
    //xax.setLabelPaint(Color.WHITE);

    DateAxis taxis = new DateAxis("t");
    taxis.setDateFormatOverride(new SimpleDateFormat("dd-MM"));

    XYPlot plot = new XYPlot(dataset2, taxis, yax, dot);

    //plot.setBackgroundPaint(Color.BLACK);
    //plot.setRangeGridlinePaint(Color.GRAY);

    JFreeChart chart2 = new JFreeChart(" Test ", plot);

    //chart2.setBackgroundPaint(Color.BLACK);

    ChartPanel chartPanel2 = new ChartPanel(chart2);

    chartPanel2.setMouseZoomable(true, false);
    jPanel4.setLayout(new BorderLayout());
    jPanel4.add(chartPanel2, BorderLayout.CENTER);
    //setContentPane(chartPanel2);

}

From source file:com.bdb.weather.display.summary.RainSummary.java

private Node createChartElements() {
    chart = ChartFactory.createXYBarChart("Water Cycle", "Date", true, "", null, PlotOrientation.VERTICAL, true,
            true, false);/*from  w ww .j a  v a  2 s  .  c om*/
    ChartViewer chartViewer = new ChartViewer(chart);
    chartViewer.setPrefSize(500, 300);
    chartViewer.addChartMouseListener(this);

    rainPlot = (XYPlot) chart.getPlot();
    DateAxis dateAxis = (DateAxis) rainPlot.getDomainAxis();
    dateAxis.setDateFormatOverride(interval.getLegacyFormat());
    ClusteredXYBarRenderer renderer = new ClusteredXYBarRenderer();
    rainPlot.setRenderer(renderer);
    //renderer.setBarAlignmentFactor(0.0);
    renderer.setMargin(0.2);
    renderer.setShadowVisible(false);

    StandardXYToolTipGenerator ttgen = new StandardXYToolTipGenerator(
            StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT, interval.getLegacyFormat(),
            Depth.getDefaultFormatter());

    renderer.setBaseToolTipGenerator(ttgen);
    //renderer.setSeriesPaint(0, Color.BLUE); // TODO Use color preferences
    //renderer.setSeriesPaint(1, Color.RED); // TODO Use color preferences

    rainPlot.setRangeAxis(valueAxis);
    rainPlot.getDomainAxis().setVerticalTickLabels(true);

    return chartViewer;
}

From source file:com.fr3ts0n.ecu.gui.application.ObdDataPlotter.java

/**
 * Creates a chart./*  ww w  .  j  a  va2 s.  co m*/
 *
 * @param dataset a dataset.
 * @return A chart.
 */
private JFreeChart createChart(XYDataset dataset) {

    chart = ChartFactory.createTimeSeriesChart("OBD Data Graph", // title
            "Time", // x-axis label
            "Value", // y-axis label
            dataset, // data
            true, // create legend?
            true, // generate tooltips?
            false // generate URLs?
    );

    chart.setBackgroundPaint(Color.white);

    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);
    plot.getDomainAxis().setTickLabelFont(legendFont);

    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("HH:mm:ss"));
    chart.getLegend().setItemFont(legendFont);

    return chart;
}

From source file:org.n52.oxf.render.sos.TimeSeriesChartRenderer.java

/**
 * //from w  w w.  j  av a2s .c om
 * @param dataset
 * @param width
 * @param height
 * @return
 */
private JFreeChart drawChart(XYDataset dataset) {

    JFreeChart chart = ChartFactory.createTimeSeriesChart(null, // title
            "Date", // x-axis label
            phenomenon, // y-axis label
            dataset, // data
            true, // create legend?
            true, // generate tooltips?
            false // generate URLs?
    );

    chart.setBackgroundPaint(Color.white);

    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinePaint(Color.lightGray);
    plot.setRangeGridlinePaint(Color.lightGray);
    plot.setAxisOffset(new RectangleInsets(2.0, 2.0, 2.0, 2.0));
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);

    XYItemRenderer r = plot.getRenderer();
    if (r instanceof XYLineAndShapeRenderer) {
        XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) r;
        renderer.setBaseShapesVisible(true);
        renderer.setBaseShapesFilled(true);
    }

    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat());

    return chart;
}

From source file:openqcm.ChartDynamicData.java

public ChartDynamicData() {

    // add primary axis frequency
    TimeSeries seriesFrequency = new TimeSeries("Frequency (Hz)");
    datasetFrequency = new TimeSeriesCollection(seriesFrequency);
    rangeAxisF = new NumberAxis("Frequency (Hz)");
    XYItemRenderer renderer = new StandardXYItemRenderer();
    renderer.setSeriesPaint(0, new Color(0, 142, 192));
    rangeAxisF.setAutoRangeIncludesZero(false);
    rangeAxisF.setAutoRange(true);/*w  w w  .  j  a v  a  2 s. c  o m*/
    rangeAxisF.setAutoRangeMinimumSize(50);

    plot.setDataset(0, datasetFrequency);
    plot.setRangeAxis(0, rangeAxisF);
    plot.setRangeAxisLocation(0, AxisLocation.BOTTOM_OR_LEFT);
    plot.setRenderer(0, renderer);
    plot.mapDatasetToRangeAxis(0, 0);

    // add secondary axis temperature
    TimeSeries seriesTemperature = new TimeSeries("Temperature (C)");
    datasetTemperature = new TimeSeriesCollection(seriesTemperature);
    plot.setDataset(1, datasetTemperature);
    NumberAxis rangeAxisT = new NumberAxis("Temperature (C)");
    rangeAxisT.setAutoRangeIncludesZero(false);
    rangeAxisT.setAutoRange(true);
    rangeAxisT.setAutoRangeMinimumSize(5);
    plot.setRangeAxis(1, rangeAxisT);
    plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT);
    // custom renderer for dinamically changing temperaure
    rendererT.setSeriesPaint(0, new Color(255, 128, 0));
    plot.setRenderer(1, rendererT);

    plot.mapDatasetToRangeAxis(1, 1);
    plotComb.add(plot);
    plotComb.setBackgroundPaint(Color.white);
    plotComb.setDomainGridlinePaint(Color.white);
    plotComb.setRangeGridlinePaint(Color.white);
    // enable panning for both axis
    plotComb.setRangePannable(true);
    plotComb.setDomainPannable(true);

    // set time axis properties
    // format time axis as hh:mm:ss
    SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
    DateAxis axis = (DateAxis) plotComb.getDomainAxis();
    axis.setDateFormatOverride(format);
    // default auto range
    domainAxis.setAutoRange(true);

    // init the JFreeChart
    JFreeChart chart = new JFreeChart(plotComb);
    chart.setBorderPaint(Color.lightGray);
    chart.setBorderVisible(true);
    chart.setBackgroundPaint(Color.white);

    // set legend properties
    LegendTitle legend = chart.getLegend();
    legend.setPosition(RectangleEdge.TOP);
    legend.setItemFont(new Font("Dialog", Font.PLAIN, 9));

    // constructor for org.jfree.chart.ChartPanel
    // ChartPanel(JFreeChart chart, boolean properties, boolean save, boolean print, boolean zoom, boolean tooltips)
    ChartPanel chartPanel = new ChartPanel(chart, false, true, true, true, true);
    // enable mouse wheel support for the chart panel
    chartPanel.setMouseWheelEnabled(true);

    this.setLayout(new BorderLayout());
    // add real time chart to the frame
    this.add(chartPanel);
    this.validate();
}

From source file:com.bitplan.vzjava.Plot.java

/**
 * Creates a chart.//from w  w  w  . ja v a  2s . c om
 * 
 * @param dataset
 *          a dataset.
 * 
 * @return A chart.
 */
private JFreeChart createChart(final ColoredDataSet cdataset) {

    final JFreeChart chart = ChartFactory.createTimeSeriesChart(title, "Time", "Power", cdataset.dataSet, true,
            true, false);

    chart.setBackgroundPaint(Color.white);

    // final StandardLegend sl = (StandardLegend) chart.getLegend();
    // sl.setDisplaySeriesShapes(true);

    final XYPlot plot = chart.getXYPlot();
    // plot.setOutlinePaint(null);
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    // plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 5.0, 5.0, 5.0, 5.0));
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(false);

    final XYItemRenderer renderer = plot.getRenderer();
    if (renderer instanceof StandardXYItemRenderer) {
        renderer.setSeriesStroke(0, new BasicStroke(3.0f));
        renderer.setSeriesStroke(1, new BasicStroke(3.0f));
    }

    final DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("HH:mm"));

    // http://www.jfree.org/jfreechart/api/gjdoc/org/jfree/chart/plot/DefaultDrawingSupplier-source.html
    DrawingSupplier supplier = new DefaultDrawingSupplier(cdataset.paintSequence,
            DefaultDrawingSupplier.DEFAULT_OUTLINE_PAINT_SEQUENCE,
            DefaultDrawingSupplier.DEFAULT_STROKE_SEQUENCE,
            DefaultDrawingSupplier.DEFAULT_OUTLINE_STROKE_SEQUENCE,
            DefaultDrawingSupplier.DEFAULT_SHAPE_SEQUENCE);
    chart.getPlot().setDrawingSupplier(supplier);
    return chart;
}

From source file:com.view.TimeSeriesChartView.java

public JFreeChart getVendorTimeSeriesChart(Excel theExcel, String vendor) {
    int vendorCode = Integer.parseInt(vendor);
    ArrayList<Receiving> theReceiving = theExcel.getSheetReceiving();

    //        HashMap<Month, Integer> item1Map = new HashMap<>();
    //        HashMap<Month, Integer> item2Map = new HashMap<>();
    //        HashMap<Month, Integer> item3Map = new HashMap<>();
    Set vendorItem = new HashSet();
    for (int i = 0; i < theReceiving.size(); i++) {
        vendorItem.add(theReceiving.get(i).getItem());
    }/*from  w  w w  .j av  a  2s  .  c  om*/
    TimeSeries data[] = new TimeSeries[vendorItem.size()];
    HashMap<Month, Integer> itemMap[] = new HashMap[vendorItem.size()];
    for (int i = 0; i < vendorItem.size(); i++) {
        String itemName = "item" + i;
        data[i] = new TimeSeries(itemName);
        itemMap[i] = new HashMap<>();
    }
    Calendar cal = Calendar.getInstance();
    for (int i = 0; i < theReceiving.size(); i++) {
        cal.setTime(theReceiving.get(i).getDate());
        int month = cal.get(Calendar.MONTH) + 1;
        int year = cal.get(Calendar.YEAR);
        int quantity = 0;
        if (theReceiving.get(i).getVendor() == vendorCode) {
            quantity = theReceiving.get(i).getQuantity();
            Month theMonth = new Month(month, year);
            int itemNum = theReceiving.get(i).getItem() - 1;
            itemMap[itemNum].put(theMonth, updateItemMap(itemMap[itemNum], theMonth, quantity));
        }
    }
    TimeSeriesCollection my_data_series = new TimeSeriesCollection();
    for (int i = 0; i < vendorItem.size(); i++) {
        for (Map.Entry<Month, Integer> entry : itemMap[i].entrySet()) {
            data[i].add(entry.getKey(), entry.getValue());
        }
        my_data_series.addSeries(data[i]);
    }

    JFreeChart chart = ChartFactory.createTimeSeriesChart("Receiving", "Month", "Quantity", my_data_series,
            true, true, false);
    chart.setBackgroundPaint(Color.YELLOW);
    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setBackgroundPaint(Color.WHITE);
    plot.setDomainGridlinePaint(Color.GREEN);
    plot.setRangeGridlinePaint(Color.orange);
    plot.setAxisOffset(new RectangleInsets(50, 0, 20, 5));
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);

    XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer();

    renderer.setBaseShapesVisible(true);
    renderer.setBaseShapesFilled(true);

    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("MM.yyyy"));
    return chart;
}

From source file:edu.ucla.stat.SOCR.chart.demo.CrosshairDemo3.java

protected JFreeChart createChart(XYDataset dataset) {

    JFreeChart c = ChartFactory.createTimeSeriesChart(chartTitle, // "Legal & General Unit Trust Prices",
            domainLabel, rangeLabel, // "Date", "Price Per Unit",
            dataset, !legendPanelOn, true, false);

    c.setBackgroundPaint(Color.white);

    XYPlot plot = (XYPlot) c.getPlot();/*from   ww  w .j  a v  a 2 s.  co  m*/
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
    plot.setDomainCrosshairVisible(true);
    plot.setRangeCrosshairVisible(true);

    XYItemRenderer renderer = plot.getRenderer();
    if (renderer instanceof XYLineAndShapeRenderer) {
        XYLineAndShapeRenderer rr = (XYLineAndShapeRenderer) renderer;
        rr.setBaseShapesVisible(true);
        rr.setBaseShapesFilled(true);
    }
    renderer.setLegendItemLabelGenerator(new SOCRXYSeriesLabelGenerator());

    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("MMM-yyyy"));

    //setXSummary(dataset) X is time;
    return c;

}

From source file:domain.Grafica.java

public JFreeChart createChart(XYDataset dataset) {
    /*/*from   ww  w . j  av a2s .c o m*/
     ///*
     NumberAxis numberaxis = new NumberAxis("");
     numberaxis.setAutoRangeIncludesZero(false);
            
     DateAxis dateaxis = new DateAxis("");
            
     NumberAxis numberaxis1 = new NumberAxis("");
     numberaxis1.setAutoRangeIncludesZero(false);
            
     XYSplineRenderer xysplinerenderer = new XYSplineRenderer();
            
     XYPlot xyplot = new XYPlot(dataset, dateaxis, numberaxis1, xysplinerenderer);
     // xyplot.setBackgroundPaint(new Color(238, 242, 250));//
     // xyplot.setDomainGridlinePaint(new Color(255, 255, 255));
     // xyplot.setRangeGridlinePaint(new Color(238, 242, 250));
     xyplot.getRenderer().setSeriesPaint(0, Color.RED);
     xyplot.setAxisOffset(new RectangleInsets(4D, 4D, 4D, 4D));
     XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) xyplot.getRenderer();
     renderer.setSeriesShapesVisible(0, true);//FIXME Dots
            
     //  xyplot.getDomainAxis().setStandardTickUnits(NumberAxis.createIntegerTickUnits());
     JFreeChart jfreechart = new JFreeChart("", JFreeChart.DEFAULT_TITLE_FONT, xyplot, false);
     jfreechart.setBackgroundPaint(Color.white);
            
     DateAxis axis = (DateAxis) xyplot.getDomainAxis();
     axis.setDateFormatOverride(new SimpleDateFormat("dd/MM/yyyy hh:mm:ss aa"));
            
     xyplot.getRangeAxis().setUpperBound(maxPeso * 1.25);
     xyplot.getRangeAxis().setLowerBound(minPeso * 0.75);
     cargarImagen();
     // xyplot.setBackgroundImage(i);
     //jfreechart.setBackgroundImage(i);
     return jfreechart;
     */
    JFreeChart chart = ChartFactory.createTimeSeriesChart("", // title
            "Fecha/Hora", // x-axis label
            "Pesos(Kg.)", // y-axis label
            dataset, // data
            false, // create legend?
            true, // generate tooltips?
            false // generate URLs?
    );

    chart.setBackgroundPaint(Color.white);
    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinePaint(Color.GRAY);
    plot.setRangeGridlinePaint(Color.GRAY);
    /*         plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
     plot.setDomainCrosshairVisible(false);
     plot.setRangeCrosshairVisible(false);
     */
    plot.setAxisOffset(new RectangleInsets(4D, 4D, 4D, 4D));

    XYItemRenderer r = plot.getRenderer();

    if (r instanceof XYLineAndShapeRenderer) {

        XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) r;
        renderer.setBaseShapesVisible(true);
    }

    NumberAxis range = (NumberAxis) plot.getRangeAxis();
    // range.setAutoRangeIncludesZero(true);
    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("dd-MMM-yyyy hh:mm:ss"));

    plot.getRangeAxis().setUpperBound(maxPeso * 1.25);
    plot.getRangeAxis().setLowerBound(minPeso * 0.75);

    return chart;

}