Class SimpleChartTheme

  • All Implemented Interfaces:
    ChartTheme
    Direct Known Subclasses:
    XmlChartTheme

    public class SimpleChartTheme
    extends Object
    implements ChartTheme
    Author:
    Teodor Danciu (teodord@users.sourceforge.net)
    • Constructor Detail

      • SimpleChartTheme

        protected SimpleChartTheme()
    • Method Detail

      • setChartThemeSettings

        public void setChartThemeSettings​(ChartThemeSettings chartThemeSettings)
      • getSubtitleSettings

        public TitleSettings getSubtitleSettings()
      • getDomainAxisSettings

        public AxisSettings getDomainAxisSettings()
      • getRangeAxisSettings

        public AxisSettings getRangeAxisSettings()
      • getChart

        protected JRChart getChart()
      • getDataset

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

        protected Object getLabelGenerator()
      • getLocale

        protected Locale getLocale()
      • configurePlot

        protected void configurePlot​(org.jfree.chart.plot.Plot plot,
                                     JRChartPlot jrPlot)
      • configureAxis

        protected void configureAxis​(org.jfree.chart.axis.Axis axis,
                                     JRFont labelFont,
                                     Color labelColor,
                                     JRFont tickLabelFont,
                                     Color tickLabelColor,
                                     String tickLabelMask,
                                     Boolean verticalTickLabels,
                                     Paint lineColor,
                                     AxisSettings axisSettings,
                                     Comparable<?> axisMinValue,
                                     Comparable<?> axisMaxValue)
                              throws JRException
        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
        Throws:
        JRException
      • configureAxis

        protected void configureAxis​(org.jfree.chart.axis.Axis axis,
                                     JRFont labelFont,
                                     Color labelColor,
                                     JRFont tickLabelFont,
                                     Color tickLabelColor,
                                     String tickLabelMask,
                                     Boolean verticalTickLabels,
                                     Paint lineColor,
                                     AxisSettings axisSettings,
                                     org.jfree.chart.axis.DateTickUnitType timePeriod,
                                     Comparable<?> axisMinValue,
                                     Comparable<?> axisMaxValue)
                              throws JRException
        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
        Throws:
        JRException
      • 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
        Build and configure a meter chart.
        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
      • populateSeriesColors

        protected void populateSeriesColors​(Paint[] colors,
                                            Paint[] colorSequence)
      • setChartBackground

        protected void setChartBackground​(org.jfree.chart.JFreeChart jfreeChart)
      • setChartBackgroundImage

        protected void setChartBackgroundImage​(org.jfree.chart.JFreeChart jfreeChart)
      • setChartTitle

        protected void setChartTitle​(org.jfree.chart.JFreeChart jfreeChart)
      • setChartSubtitles

        protected void setChartSubtitles​(org.jfree.chart.JFreeChart jfreeChart)
                                  throws JRException
        Throws:
        JRException
      • setChartLegend

        protected void setChartLegend​(org.jfree.chart.JFreeChart jfreeChart)
      • setChartBorder

        protected void setChartBorder​(org.jfree.chart.JFreeChart jfreeChart)
      • setPlotBackground

        protected void setPlotBackground​(org.jfree.chart.plot.Plot plot,
                                         JRChartPlot jrPlot)
      • handleCategoryPlotSettings

        protected void handleCategoryPlotSettings​(org.jfree.chart.plot.CategoryPlot p,
                                                  JRChartPlot jrPlot)
      • handleXYPlotSettings

        protected void handleXYPlotSettings​(org.jfree.chart.plot.XYPlot p,
                                            JRChartPlot jrPlot)
      • setPlotDrawingDefaults

        protected void setPlotDrawingDefaults​(org.jfree.chart.plot.Plot p,
                                              JRChartPlot jrPlot)
      • setAxisLine

        protected void setAxisLine​(org.jfree.chart.axis.Axis axis,
                                   Paint lineColor,
                                   AxisSettings axisSettings)
      • setAxisLabel

        protected void setAxisLabel​(org.jfree.chart.axis.Axis axis,
                                    JRFont labelFont,
                                    Paint labelColor,
                                    AxisSettings axisSettings)
      • setAxisTickLabels

        protected void setAxisTickLabels​(org.jfree.chart.axis.Axis axis,
                                         JRFont tickLabelFont,
                                         Paint tickLabelColor,
                                         String tickLabelMask,
                                         AxisSettings axisSettings)
      • setAxisTickMarks

        protected void setAxisTickMarks​(org.jfree.chart.axis.Axis axis,
                                        Paint lineColor,
                                        AxisSettings axisSettings)
      • calculateTickUnits

        protected void calculateTickUnits​(org.jfree.chart.axis.Axis axis,
                                          AxisSettings axisSettings,
                                          org.jfree.chart.axis.DateTickUnitType timePeriodUnitx)
        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.
      • getOutlinePaintSequence

        protected Paint[] getOutlinePaintSequence​(PlotSettings plotSettings)
      • getOutlineStrokeSequence

        protected Stroke[] getOutlineStrokeSequence​(PlotSettings plotSettings)
      • handleTitleSettings

        protected void handleTitleSettings​(org.jfree.chart.title.TextTitle title,
                                           TitleSettings titleSettings,
                                           JRFont titleFont,
                                           Paint titleForegroundPaint,
                                           org.jfree.chart.ui.RectangleEdge titleEdge)