Example usage for org.jfree.chart.labels HighLowItemLabelGenerator HighLowItemLabelGenerator

List of usage examples for org.jfree.chart.labels HighLowItemLabelGenerator HighLowItemLabelGenerator

Introduction

In this page you can find the example usage for org.jfree.chart.labels HighLowItemLabelGenerator HighLowItemLabelGenerator.

Prototype

public HighLowItemLabelGenerator() 

Source Link

Document

Creates an item label generator using the default date and number formats.

Usage

From source file:jgnash.ui.report.compiled.SecurityHighLowChart.java

private static JFreeChart createHighLowChart(String title, String timeAxisLabel, String valueAxisLabel,
        AbstractXYDataset data, boolean legend) {

    ValueAxis timeAxis = new DateAxis(timeAxisLabel);
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    valueAxis.setAutoRangeIncludesZero(false);

    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());

    XYPlot plot = new XYPlot(data, timeAxis, valueAxis, renderer);

    return new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
}

From source file:OAT.ui.util.UiUtil.java

/**
 * Returns a chart object.//  www  .j  ava2s  .  c  o m
 *
 * @param title
 * @param timeAxisLabel
 * @param valueAxisLabel
 * @param dataSet
 * @param timeline
 * @param theme
 * @param legend
 * @return
 */
public static Chart createTimeBasedChart(String title, String timeAxisLabel, String valueAxisLabel,
        ChartDataset dataSet, Timeline timeline, DefaultTheme theme, boolean legend) {

    //x-axis
    DateAxis timeAxis = new DateAxis(timeAxisLabel);
    timeAxis.setTimeline(timeline);
    //timeAxis.setTimeZone(dataSet.getTimeline().timeZone);

    if (dataSet instanceof TickChart || dataSet instanceof ContractChart) {
        timeAxis.setStandardTickUnits(createSimpleTimeTickUnits());
        //timeAxis.setTickUnit(new DateTickUnit(DateTickUnitType.MINUTE, 30,
        //        new SimpleDateFormat("HH:mm")),
        //       false, true);
    }

    //y-axis
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    valueAxis.setAutoRangeStickyZero(false);
    valueAxis.setAutoRangeIncludesZero(false);

    //renderer
    OHLCRenderer renderer = new OHLCRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());

    //Primary plot
    XYPlot plot = new XYPlot(dataSet, timeAxis, valueAxis, renderer);
    plot.setRangeAxisLocation(AxisLocation.TOP_OR_RIGHT, false);

    Chart chart = new Chart(title, Chart.DEFAULT_TITLE_FONT, plot, legend);

    theme.apply(chart);

    return chart;
}

From source file:edu.dlnu.liuwenpeng.render.CandlestickRenderer.java

/**    
* Creates a new renderer for candlestick charts.    
* <P>    /*  w ww  .  j  a v a 2 s .c  om*/
* Use -1 for the candle width if you prefer the width to be calculated    
* automatically.    
*    
* @param candleWidth  The candle width.    
*/
public CandlestickRenderer(double candleWidth) {
    this(candleWidth, true, new HighLowItemLabelGenerator());
}

From source file:org.hxzon.demo.jfreechart.XYDatasetDemo2.java

private static JFreeChart createHighLowChart(XYDataset dataset) {
    ValueAxis timeAxis = new DateAxis(xAxisLabel);
    NumberAxis valueAxis = new NumberAxis(yAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart("HighLow Chart Demo", JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    chart.setBackgroundPaint(Color.white);

    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);

    return chart;
}

From source file:org.hxzon.demo.jfreechart.OtherDatasetDemo.java

private static JFreeChart createHighLowChart(OHLCDataset dataset) {
    ValueAxis timeAxis = new DateAxis(xAxisLabel);
    NumberAxis valueAxis = new NumberAxis(yAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart("HighLow Chart Demo", JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    chart.setBackgroundPaint(Color.white);

    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);

    return chart;
}

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

/**
 * Creates and returns a sample overlaid chart.
 * <P>/*from  ww w .  j a  v  a2s  . co m*/
 * Note:  with the introduction of multiple secondary datasets in JFreeChart version 0.9.10,
 * the overlaid chart facility has been removed.  You can achieve the same results using
 * a regular XYPlot with multiple datasets.
 *
 * @return an overlaid chart.
 */
public JFreeChart createOverlaidChart() {

    // create a default chart based on some sample data...
    final String title = this.resources.getString("combined.overlaid.title");
    final String subtitleStr = this.resources.getString("combined.overlaid.subtitle");
    final String domainAxisLabel = this.resources.getString("combined.overlaid.domain");
    final String rangeAxisLabel = this.resources.getString("combined.overlaid.range");

    // create high-low and moving average dataset
    final DefaultHighLowDataset highLowData = DemoDatasetFactory.createHighLowDataset();

    // make an overlaid plot
    final ValueAxis domainAxis = new DateAxis(domainAxisLabel);
    final NumberAxis rangeAxis = new NumberAxis(rangeAxisLabel);
    rangeAxis.setAutoRangeIncludesZero(false);
    final XYItemRenderer renderer1 = new HighLowRenderer();
    renderer1.setToolTipGenerator(new HighLowItemLabelGenerator());

    final XYPlot plot = new XYPlot(highLowData, domainAxis, rangeAxis, renderer1);

    // overlay a moving average dataset
    final XYDataset maData = MovingAverage.createMovingAverage(highLowData, " (Moving Average)",
            5 * 24 * 60 * 60 * 1000L, 5 * 24 * 60 * 60 * 1000L);
    plot.setDataset(1, maData);
    final XYItemRenderer renderer2 = new StandardXYItemRenderer();
    renderer2.setToolTipGenerator(
            new StandardXYToolTipGenerator(StandardXYToolTipGenerator.DEFAULT_TOOL_TIP_FORMAT,
                    new SimpleDateFormat("d-MMM-yyyy"), new DecimalFormat("0,000.0")));
    plot.setRenderer(1, renderer2);

    // make the top level JFreeChart object
    final JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, true);

    // then customise it a little...
    final TextTitle subtitle = new TextTitle(subtitleStr, new Font("SansSerif", Font.BOLD, 12));
    chart.addSubtitle(subtitle);
    chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 0, 1000, Color.blue));

    return chart;

}

From source file:edu.dlnu.liuwenpeng.ChartFactory.ChartFactory.java

/**    
 * Creates and returns a default instance of a high-low-open-close chart.    
 *    //from   w  w  w.  ja va  2  s.  co m
 * @param title  the chart title (<code>null</code> permitted).    
 * @param timeAxisLabel  a label for the time axis (<code>null</code>     
 *                       permitted).    
 * @param valueAxisLabel  a label for the value axis (<code>null</code>     
 *                        permitted).    
 * @param dataset  the dataset for the chart (<code>null</code> permitted).    
 * @param legend  a flag specifying whether or not a legend is required.    
 *    
 * @return A high-low-open-close chart.    
 */
public static JFreeChart createHighLowChart(String title, String timeAxisLabel, String valueAxisLabel,
        OHLCDataset dataset, boolean legend) {

    ValueAxis timeAxis = new DateAxis(timeAxisLabel);
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    return chart;

}

From source file:KIDLYFactory.java

/**
 * Creates and returns a default instance of a high-low-open-close chart.
 *
 * @param title  the chart title (<code>null</code> permitted).
 * @param timeAxisLabel  a label for the time axis (<code>null</code>
 *                       permitted)./* w w w .  jav a2s  .  c om*/
 * @param valueAxisLabel  a label for the value axis (<code>null</code>
 *                        permitted).
 * @param dataset  the dataset for the chart (<code>null</code> permitted).
 * @param legend  a flag specifying whether or not a legend is required.
 *
 * @return A high-low-open-close chart.
 */
public static JFreeChart createHighLowChart(String title, String timeAxisLabel, String valueAxisLabel,
        OHLCDataset dataset, boolean legend) {

    ValueAxis timeAxis = new DateAxis(timeAxisLabel);
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    currentTheme.apply(chart);
    return chart;

}

From source file:edu.dlnu.liuwenpeng.ChartFactory.ChartFactory.java

/**    
 * Creates and returns a default instance of a high-low-open-close chart     
 * with a special timeline. This timeline can be a     
 * {@link org.jfree.chart.axis.SegmentedTimeline} such as the Monday     
 * through Friday timeline that will remove Saturdays and Sundays from    
 * the axis.    /*from   w  ww.j  a va 2 s . com*/
 *    
 * @param title  the chart title (<code>null</code> permitted).    
 * @param timeAxisLabel  a label for the time axis (<code>null</code>     
 *                       permitted).    
 * @param valueAxisLabel  a label for the value axis (<code>null</code>     
 *                        permitted).    
 * @param dataset  the dataset for the chart (<code>null</code> permitted).    
 * @param timeline  the timeline.    
 * @param legend  a flag specifying whether or not a legend is required.    
 *    
 * @return A high-low-open-close chart.    
 */
public static JFreeChart createHighLowChart(String title, String timeAxisLabel, String valueAxisLabel,
        OHLCDataset dataset, Timeline timeline, boolean legend) {

    DateAxis timeAxis = new DateAxis(timeAxisLabel);
    timeAxis.setTimeline(timeline);
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    return chart;

}

From source file:KIDLYFactory.java

/**
 * Creates and returns a default instance of a high-low-open-close chart
 * with a special timeline. This timeline can be a
 * {@link org.jfree.chart.axis.SegmentedTimeline} such as the Monday
 * through Friday timeline that will remove Saturdays and Sundays from
 * the axis./*from ww  w  .  j ava 2s  .co  m*/
 *
 * @param title  the chart title (<code>null</code> permitted).
 * @param timeAxisLabel  a label for the time axis (<code>null</code>
 *                       permitted).
 * @param valueAxisLabel  a label for the value axis (<code>null</code>
 *                        permitted).
 * @param dataset  the dataset for the chart (<code>null</code> permitted).
 * @param timeline  the timeline.
 * @param legend  a flag specifying whether or not a legend is required.
 *
 * @return A high-low-open-close chart.
 */
public static JFreeChart createHighLowChart(String title, String timeAxisLabel, String valueAxisLabel,
        OHLCDataset dataset, Timeline timeline, boolean legend) {

    DateAxis timeAxis = new DateAxis(timeAxisLabel);
    timeAxis.setTimeline(timeline);
    NumberAxis valueAxis = new NumberAxis(valueAxisLabel);
    HighLowRenderer renderer = new HighLowRenderer();
    renderer.setBaseToolTipGenerator(new HighLowItemLabelGenerator());
    XYPlot plot = new XYPlot(dataset, timeAxis, valueAxis, renderer);
    JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, legend);
    currentTheme.apply(chart);
    return chart;

}