net.sf.jasperreports.engine.fill
Class DefaultChartTheme

java.lang.Object
  extended by net.sf.jasperreports.engine.fill.DefaultChartTheme
All Implemented Interfaces:
ChartTheme

public class DefaultChartTheme
extends java.lang.Object
implements ChartTheme

Version:
$Id: DefaultChartTheme.java 5050 2012-03-12 10:11:26Z teodord $
Author:
Teodor Danciu (teodord@users.sourceforge.net), Some enhancements by Barry Klawans (bklawans@users.sourceforge.net)

Field Summary
static ChartThemeBundle BUNDLE
           
static java.lang.String PROPERTY_DIAL_LABEL
           
static java.lang.String PROPERTY_DIAL_VALUE_DISPLAY_VISIBLE
           
static java.lang.String PROPERTY_DOMAIN_AXIS_INTEGER_UNIT
           
static java.lang.String PROPERTY_DOMAIN_AXIS_TICK_COUNT
           
static java.lang.String PROPERTY_DOMAIN_AXIS_TICK_INTERVAL
           
static java.lang.String PROPERTY_RANGE_AXIS_INTEGER_UNIT
           
static java.lang.String PROPERTY_RANGE_AXIS_TICK_COUNT
           
static java.lang.String PROPERTY_RANGE_AXIS_TICK_INTERVAL
           
protected static java.awt.Color TRANSPARENT_PAINT
           
 
Constructor Summary
DefaultChartTheme()
           
 
Method Summary
protected  void calculateTickUnits(org.jfree.chart.axis.Axis axis, boolean isRangeAxis)
          For a given axis, adjust the tick unit size, in order to have a customizable number of ticks on that axis
protected  void configureAxis(org.jfree.chart.axis.Axis axis, JRFont labelFont, java.awt.Color labelColor, JRFont tickLabelFont, java.awt.Color tickLabelColor, java.lang.String tickLabelMask, java.lang.Boolean verticalTickLabels, java.awt.Color lineColor, boolean isRangeAxis, java.lang.Comparable<?> axisMinValue, java.lang.Comparable<?> axisMaxValue)
          Sets all the axis formatting options.
protected  void configureChart(org.jfree.chart.JFreeChart jfreeChart)
           
protected  void configurePlot(org.jfree.chart.plot.Plot plot)
           
protected  org.jfree.chart.plot.MeterInterval convertInterval(JRMeterInterval interval)
          Converts a JasperReports meter interval to one that JFreeChart understands.
protected  org.jfree.data.Range convertRange(JRDataRange dataRange)
          Converts a JasperReport data range into one understood by JFreeChart.
protected  org.jfree.chart.JFreeChart createAreaChart()
           
protected  org.jfree.chart.JFreeChart createBar3DChart()
           
protected  org.jfree.chart.JFreeChart createBarChart()
           
protected  org.jfree.chart.JFreeChart createBubbleChart()
           
protected  org.jfree.chart.JFreeChart createCandlestickChart()
           
 org.jfree.chart.JFreeChart createChart(ChartContext chartContext)
           
protected  org.jfree.chart.JFreeChart createDialChart()
           
protected  org.jfree.chart.JFreeChart createGanttChart()
           
protected  org.jfree.chart.JFreeChart createHighLowChart()
           
protected  org.jfree.chart.JFreeChart createLineChart()
           
protected  org.jfree.chart.JFreeChart createMeterChart()
           
protected  org.jfree.chart.JFreeChart createPie3DChart()
           
protected  org.jfree.chart.JFreeChart createPieChart()
           
protected  org.jfree.chart.JFreeChart createScatterChart()
           
protected  org.jfree.chart.JFreeChart createStackedAreaChart()
           
protected  org.jfree.chart.JFreeChart createStackedBar3DChart()
           
protected  org.jfree.chart.JFreeChart createStackedBarChart()
           
protected  org.jfree.chart.JFreeChart createThermometerChart()
          Build and run a thermometer chart.
protected  org.jfree.chart.JFreeChart createTimeSeriesChart()
           
protected  org.jfree.chart.JFreeChart createXyAreaChart()
           
protected  org.jfree.chart.JFreeChart createXYBarChart()
           
protected  org.jfree.chart.JFreeChart createXyLineChart()
           
protected  java.lang.Object evaluateExpression(JRExpression expression)
           
protected  java.lang.String evaluateTextExpression(JRExpression expression)
           
protected  JRChart getChart()
           
protected  org.jfree.chart.axis.AxisLocation getChartAxisLocation(JRChartAxis chartAxis)
          Specifies the axis location.
protected  org.jfree.data.general.Dataset getDataset()
           
protected  JRFont getFont(JRFont font)
           
protected  java.lang.Object getLabelGenerator()
           
protected  java.util.Locale getLocale()
           
protected  JRChartPlot getPlot()
           
protected  boolean isShowLegend()
          Specifies whether a chart legend should be visible or no by default.
protected  void setAxisBounds(org.jfree.chart.axis.Axis axis, boolean isRangeAxis, java.lang.Comparable<?> axisMinValue, java.lang.Comparable<?> axisMaxValue)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROPERTY_DIAL_VALUE_DISPLAY_VISIBLE

public static final java.lang.String PROPERTY_DIAL_VALUE_DISPLAY_VISIBLE
See Also:
Constant Field Values

PROPERTY_DIAL_LABEL

public static final java.lang.String PROPERTY_DIAL_LABEL
See Also:
Constant Field Values

PROPERTY_RANGE_AXIS_TICK_COUNT

public static final java.lang.String PROPERTY_RANGE_AXIS_TICK_COUNT
See Also:
Constant Field Values

PROPERTY_RANGE_AXIS_TICK_INTERVAL

public static final java.lang.String PROPERTY_RANGE_AXIS_TICK_INTERVAL
See Also:
Constant Field Values

PROPERTY_RANGE_AXIS_INTEGER_UNIT

public static final java.lang.String PROPERTY_RANGE_AXIS_INTEGER_UNIT
See Also:
Constant Field Values

PROPERTY_DOMAIN_AXIS_TICK_COUNT

public static final java.lang.String PROPERTY_DOMAIN_AXIS_TICK_COUNT
See Also:
Constant Field Values

PROPERTY_DOMAIN_AXIS_TICK_INTERVAL

public static final java.lang.String PROPERTY_DOMAIN_AXIS_TICK_INTERVAL
See Also:
Constant Field Values

PROPERTY_DOMAIN_AXIS_INTEGER_UNIT

public static final java.lang.String PROPERTY_DOMAIN_AXIS_INTEGER_UNIT
See Also:
Constant Field Values

TRANSPARENT_PAINT

protected static final java.awt.Color TRANSPARENT_PAINT

BUNDLE

public static final ChartThemeBundle BUNDLE
Constructor Detail

DefaultChartTheme

public DefaultChartTheme()
Method Detail

getChart

protected JRChart getChart()

getPlot

protected JRChartPlot getPlot()

getDataset

protected org.jfree.data.general.Dataset getDataset()

getLabelGenerator

protected java.lang.Object getLabelGenerator()

getLocale

protected java.util.Locale getLocale()

getFont

protected JRFont getFont(JRFont font)

evaluateTextExpression

protected final java.lang.String evaluateTextExpression(JRExpression expression)
                                                 throws JRException
Throws:
JRException

evaluateExpression

protected final java.lang.Object evaluateExpression(JRExpression expression)
                                             throws JRException
Throws:
JRException

createChart

public org.jfree.chart.JFreeChart createChart(ChartContext chartContext)
                                       throws JRException
Specified by:
createChart in interface ChartTheme
Throws:
JRException

configureChart

protected void configureChart(org.jfree.chart.JFreeChart jfreeChart)
                       throws JRException
Throws:
JRException

configurePlot

protected void configurePlot(org.jfree.chart.plot.Plot plot)

configureAxis

protected void configureAxis(org.jfree.chart.axis.Axis axis,
                             JRFont labelFont,
                             java.awt.Color labelColor,
                             JRFont tickLabelFont,
                             java.awt.Color tickLabelColor,
                             java.lang.String tickLabelMask,
                             java.lang.Boolean verticalTickLabels,
                             java.awt.Color lineColor,
                             boolean isRangeAxis,
                             java.lang.Comparable<?> axisMinValue,
                             java.lang.Comparable<?> axisMaxValue)
Sets all the axis formatting options. This includes the colors and fonts to use on the axis as well as the color to use when drawing the axis line.

Parameters:
axis - the axis to format
labelFont - the font to use for the axis label
labelColor - the color of the axis label
tickLabelFont - the font to use for each tick mark value label
tickLabelColor - the color of each tick mark value label
tickLabelMask - formatting mask for the label. If the axis is a NumberAxis then the mask should be java.text.DecimalFormat mask, and if it is a DateAxis then the mask should be a java.text.SimpleDateFormat mask.
verticalTickLabels - flag to draw tick labels at 90 degrees
lineColor - color to use when drawing the axis line and any tick marks

createAreaChart

protected org.jfree.chart.JFreeChart createAreaChart()
                                              throws JRException
Throws:
JRException

createBar3DChart

protected org.jfree.chart.JFreeChart createBar3DChart()
                                               throws JRException
Throws:
JRException

createBarChart

protected org.jfree.chart.JFreeChart createBarChart()
                                             throws JRException
Throws:
JRException

createBubbleChart

protected org.jfree.chart.JFreeChart createBubbleChart()
                                                throws JRException
Throws:
JRException

createCandlestickChart

protected org.jfree.chart.JFreeChart createCandlestickChart()
                                                     throws JRException
Throws:
JRException

createHighLowChart

protected org.jfree.chart.JFreeChart createHighLowChart()
                                                 throws JRException
Throws:
JRException

createLineChart

protected org.jfree.chart.JFreeChart createLineChart()
                                              throws JRException
Throws:
JRException

createPie3DChart

protected org.jfree.chart.JFreeChart createPie3DChart()
                                               throws JRException
Throws:
JRException

createPieChart

protected org.jfree.chart.JFreeChart createPieChart()
                                             throws JRException
Throws:
JRException

createScatterChart

protected org.jfree.chart.JFreeChart createScatterChart()
                                                 throws JRException
Throws:
JRException

createStackedBar3DChart

protected org.jfree.chart.JFreeChart createStackedBar3DChart()
                                                      throws JRException
Throws:
JRException

createStackedBarChart

protected org.jfree.chart.JFreeChart createStackedBarChart()
                                                    throws JRException
Throws:
JRException

createStackedAreaChart

protected org.jfree.chart.JFreeChart createStackedAreaChart()
                                                     throws JRException
Throws:
JRException

createXyAreaChart

protected org.jfree.chart.JFreeChart createXyAreaChart()
                                                throws JRException
Throws:
JRException

createXYBarChart

protected org.jfree.chart.JFreeChart createXYBarChart()
                                               throws JRException
Throws:
JRException

createXyLineChart

protected org.jfree.chart.JFreeChart createXyLineChart()
                                                throws JRException
Throws:
JRException

createTimeSeriesChart

protected org.jfree.chart.JFreeChart createTimeSeriesChart()
                                                    throws JRException
Throws:
JRException

createGanttChart

protected org.jfree.chart.JFreeChart createGanttChart()
                                               throws JRException
Throws:
JRException

convertRange

protected org.jfree.data.Range convertRange(JRDataRange dataRange)
                                     throws JRException
Converts a JasperReport data range into one understood by JFreeChart.

Parameters:
dataRange - the JasperReport version of the range
Returns:
the JFreeChart version of the range
Throws:
JRException - thrown when the low value of the range is greater than the high value

convertInterval

protected org.jfree.chart.plot.MeterInterval convertInterval(JRMeterInterval interval)
                                                      throws JRException
Converts a JasperReports meter interval to one that JFreeChart understands.

Parameters:
interval - the JasperReports definition of an interval
Returns:
the JFreeChart version of the same interval
Throws:
JRException - thrown when the interval contains an invalid range

createMeterChart

protected org.jfree.chart.JFreeChart createMeterChart()
                                               throws JRException
Throws:
JRException

createThermometerChart

protected org.jfree.chart.JFreeChart createThermometerChart()
                                                     throws JRException
Build and run a thermometer chart. JFreeChart thermometer charts have some limitations. They always have a maximum of three ranges, and the colors of those ranges seems to be fixed.

Throws:
JRException

createDialChart

protected org.jfree.chart.JFreeChart createDialChart()
                                              throws JRException
Throws:
JRException

getChartAxisLocation

protected org.jfree.chart.axis.AxisLocation getChartAxisLocation(JRChartAxis chartAxis)
Specifies the axis location. It has to be overridden for child themes with another default axis location


setAxisBounds

protected void setAxisBounds(org.jfree.chart.axis.Axis axis,
                             boolean isRangeAxis,
                             java.lang.Comparable<?> axisMinValue,
                             java.lang.Comparable<?> axisMaxValue)

calculateTickUnits

protected void calculateTickUnits(org.jfree.chart.axis.Axis axis,
                                  boolean isRangeAxis)
For a given axis, adjust the tick unit size, in order to have a customizable number of ticks on that axis


isShowLegend

protected boolean isShowLegend()
Specifies whether a chart legend should be visible or no by default. It has to be overridden for child themes which don't show chart legends



© 2001-2010 Jaspersoft Corporation www.jaspersoft.com