JFreeChart
org.jfree.chart

Class JFreeChart

    • Field Detail

      • INFO

        public static final org.jfree.ui.about.ProjectInfo INFO
        Information about the project.
      • DEFAULT_TITLE_FONT

        public static final Font DEFAULT_TITLE_FONT
        The default font for titles.
      • DEFAULT_BACKGROUND_PAINT

        public static final Paint DEFAULT_BACKGROUND_PAINT
        The default background color.
      • DEFAULT_BACKGROUND_IMAGE

        public static final Image DEFAULT_BACKGROUND_IMAGE
        The default background image.
      • DEFAULT_BACKGROUND_IMAGE_ALIGNMENT

        public static final int DEFAULT_BACKGROUND_IMAGE_ALIGNMENT
        The default background image alignment.
        See Also:
        Constant Field Values
      • DEFAULT_BACKGROUND_IMAGE_ALPHA

        public static final float DEFAULT_BACKGROUND_IMAGE_ALPHA
        The default background image alpha.
        See Also:
        Constant Field Values
      • KEY_SUPPRESS_SHADOW_GENERATION

        public static final RenderingHints.Key KEY_SUPPRESS_SHADOW_GENERATION
        The key for a rendering hint that can suppress the generation of a shadow effect when drawing the chart. The hint value must be a Boolean.
    • Constructor Detail

      • JFreeChart

        public JFreeChart(Plot plot)
        Creates a new chart based on the supplied plot. The chart will have a legend added automatically, but no title (although you can easily add one later).

        Note that the ChartFactory class contains a range of static methods that will return ready-made charts, and often this is a more convenient way to create charts than using this constructor.
        Parameters:
        plot - the plot (null not permitted).
      • JFreeChart

        public JFreeChart(String title,          Plot plot)
        Creates a new chart with the given title and plot. A default font (DEFAULT_TITLE_FONT) is used for the title, and the chart will have a legend added automatically.

        Note that the ChartFactory class contains a range of static methods that will return ready-made charts, and often this is a more convenient way to create charts than using this constructor.
        Parameters:
        title - the chart title (null permitted).
        plot - the plot (null not permitted).
      • JFreeChart

        public JFreeChart(String title,          Font titleFont,          Plot plot,          boolean createLegend)
        Creates a new chart with the given title and plot. The createLegend argument specifies whether or not a legend should be added to the chart.

        Note that the ChartFactory class contains a range of static methods that will return ready-made charts, and often this is a more convenient way to create charts than using this constructor.
        Parameters:
        title - the chart title (null permitted).
        titleFont - the font for displaying the chart title (null permitted).
        plot - controller of the visual representation of the data (null not permitted).
        createLegend - a flag indicating whether or not a legend should be created for the chart.
    • Method Detail

      • setRenderingHints

        public void setRenderingHints(RenderingHints renderingHints)
        Sets the rendering hints for the chart. These will be added (using the Graphics2D.addRenderingHints() method) near the start of the JFreeChart.draw() method.
        Parameters:
        renderingHints - the rendering hints (null not permitted).
        See Also:
        getRenderingHints()
      • isBorderVisible

        public boolean isBorderVisible()
        Returns a flag that controls whether or not a border is drawn around the outside of the chart.
        Returns:
        A boolean.
        See Also:
        setBorderVisible(boolean)
      • setBorderVisible

        public void setBorderVisible(boolean visible)
        Sets a flag that controls whether or not a border is drawn around the outside of the chart.
        Parameters:
        visible - the flag.
        See Also:
        isBorderVisible()
      • getBorderStroke

        public Stroke getBorderStroke()
        Returns the stroke used to draw the chart border (if visible).
        Returns:
        The border stroke.
        See Also:
        setBorderStroke(Stroke)
      • setBorderStroke

        public void setBorderStroke(Stroke stroke)
        Sets the stroke used to draw the chart border (if visible).
        Parameters:
        stroke - the stroke.
        See Also:
        getBorderStroke()
      • getBorderPaint

        public Paint getBorderPaint()
        Returns the paint used to draw the chart border (if visible).
        Returns:
        The border paint.
        See Also:
        setBorderPaint(Paint)
      • setBorderPaint

        public void setBorderPaint(Paint paint)
        Sets the paint used to draw the chart border (if visible).
        Parameters:
        paint - the paint.
        See Also:
        getBorderPaint()
      • getPadding

        public org.jfree.ui.RectangleInsets getPadding()
        Returns the padding between the chart border and the chart drawing area.
        Returns:
        The padding (never null).
        See Also:
        setPadding(RectangleInsets)
      • setPadding

        public void setPadding(org.jfree.ui.RectangleInsets padding)
        Sets the padding between the chart border and the chart drawing area, and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        padding - the padding (null not permitted).
        See Also:
        getPadding()
      • getTitle

        public TextTitle getTitle()
        Returns the main chart title. Very often a chart will have just one title, so we make this case simple by providing accessor methods for the main title. However, multiple titles are supported - see the addSubtitle(Title) method.
        Returns:
        The chart title (possibly null).
        See Also:
        setTitle(TextTitle)
      • setTitle

        public void setTitle(TextTitle title)
        Sets the main title for the chart and sends a ChartChangeEvent to all registered listeners. If you do not want a title for the chart, set it to null. If you want more than one title on a chart, use the addSubtitle(Title) method.
        Parameters:
        title - the title (null permitted).
        See Also:
        getTitle()
      • setTitle

        public void setTitle(String text)
        Sets the chart title and sends a ChartChangeEvent to all registered listeners. This is a convenience method that ends up calling the setTitle(TextTitle) method. If there is an existing title, its text is updated, otherwise a new title using the default font is added to the chart. If text is null the chart title is set to null.
        Parameters:
        text - the title text (null permitted).
        See Also:
        getTitle()
      • addLegend

        public void addLegend(LegendTitle legend)
        Adds a legend to the plot and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        legend - the legend (null not permitted).
        See Also:
        removeLegend()
      • getLegend

        public LegendTitle getLegend()
        Returns the legend for the chart, if there is one. Note that a chart can have more than one legend - this method returns the first.
        Returns:
        The legend (possibly null).
        See Also:
        getLegend(int)
      • getLegend

        public LegendTitle getLegend(int index)
        Returns the nth legend for a chart, or null.
        Parameters:
        index - the legend index (zero-based).
        Returns:
        The legend (possibly null).
        See Also:
        addLegend(LegendTitle)
      • removeLegend

        public void removeLegend()
        Removes the first legend in the chart and sends a ChartChangeEvent to all registered listeners.
        See Also:
        getLegend()
      • getSubtitles

        public List getSubtitles()
        Returns the list of subtitles for the chart.
        Returns:
        The subtitle list (possibly empty, but never null).
        See Also:
        setSubtitles(List)
      • setSubtitles

        public void setSubtitles(List subtitles)
        Sets the title list for the chart (completely replaces any existing titles) and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        subtitles - the new list of subtitles (null not permitted).
        See Also:
        getSubtitles()
      • getSubtitleCount

        public int getSubtitleCount()
        Returns the number of titles for the chart.
        Returns:
        The number of titles for the chart.
        See Also:
        getSubtitles()
      • getSubtitle

        public Title getSubtitle(int index)
        Returns a chart subtitle.
        Parameters:
        index - the index of the chart subtitle (zero based).
        Returns:
        A chart subtitle.
        See Also:
        addSubtitle(Title)
      • addSubtitle

        public void addSubtitle(Title subtitle)
        Adds a chart subtitle, and notifies registered listeners that the chart has been modified.
        Parameters:
        subtitle - the subtitle (null not permitted).
        See Also:
        getSubtitle(int)
      • addSubtitle

        public void addSubtitle(int index,               Title subtitle)
        Adds a subtitle at a particular position in the subtitle list, and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        index - the index (in the range 0 to getSubtitleCount()).
        subtitle - the subtitle to add (null not permitted).
      • removeSubtitle

        public void removeSubtitle(Title title)
        Removes the specified subtitle and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        title - the title.
        See Also:
        addSubtitle(Title)
      • getPlot

        public Plot getPlot()
        Returns the plot for the chart. The plot is a class responsible for coordinating the visual representation of the data, including the axes (if any).
        Returns:
        The plot.
      • getXYPlot

        public XYPlot getXYPlot()
        Returns the plot cast as an XYPlot.

        NOTE: if the plot is not an instance of XYPlot, then a ClassCastException is thrown.

        Returns:
        The plot.
        See Also:
        getPlot()
      • getAntiAlias

        public boolean getAntiAlias()
        Returns a flag that indicates whether or not anti-aliasing is used when the chart is drawn.
        Returns:
        The flag.
        See Also:
        setAntiAlias(boolean)
      • setAntiAlias

        public void setAntiAlias(boolean flag)
        Sets a flag that indicates whether or not anti-aliasing is used when the chart is drawn.

        Anti-aliasing usually improves the appearance of charts, but is slower.

        Parameters:
        flag - the new value of the flag.
        See Also:
        getAntiAlias()
      • getBackgroundPaint

        public Paint getBackgroundPaint()
        Returns the paint used for the chart background.
        Returns:
        The paint (possibly null).
        See Also:
        setBackgroundPaint(Paint)
      • setBackgroundPaint

        public void setBackgroundPaint(Paint paint)
        Sets the paint used to fill the chart background and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        paint - the paint (null permitted).
        See Also:
        getBackgroundPaint()
      • getBackgroundImage

        public Image getBackgroundImage()
        Returns the background image for the chart, or null if there is no image.
        Returns:
        The image (possibly null).
        See Also:
        setBackgroundImage(Image)
      • setBackgroundImage

        public void setBackgroundImage(Image image)
        Sets the background image for the chart and sends a ChartChangeEvent to all registered listeners.
        Parameters:
        image - the image (null permitted).
        See Also:
        getBackgroundImage()
      • getBackgroundImageAlignment

        public int getBackgroundImageAlignment()
        Returns the background image alignment. Alignment constants are defined in the org.jfree.ui.Align class in the JCommon class library.
        Returns:
        The alignment.
        See Also:
        setBackgroundImageAlignment(int)
      • setBackgroundImageAlignment

        public void setBackgroundImageAlignment(int alignment)
        Sets the background alignment. Alignment options are defined by the Align class.
        Parameters:
        alignment - the alignment.
        See Also:
        getBackgroundImageAlignment()
      • getBackgroundImageAlpha

        public float getBackgroundImageAlpha()
        Returns the alpha-transparency for the chart's background image.
        Returns:
        The alpha-transparency.
        See Also:
        setBackgroundImageAlpha(float)
      • setBackgroundImageAlpha

        public void setBackgroundImageAlpha(float alpha)
        Sets the alpha-transparency for the chart's background image. Registered listeners are notified that the chart has been changed.
        Parameters:
        alpha - the alpha value.
        See Also:
        getBackgroundImageAlpha()
      • isNotify

        public boolean isNotify()
        Returns a flag that controls whether or not change events are sent to registered listeners.
        Returns:
        A boolean.
        See Also:
        setNotify(boolean)
      • setNotify

        public void setNotify(boolean notify)
        Sets a flag that controls whether or not listeners receive ChartChangeEvent notifications.
        Parameters:
        notify - a boolean.
        See Also:
        isNotify()
      • draw

        public void draw(Graphics2D g2,        Rectangle2D area)
        Draws the chart on a Java 2D graphics device (such as the screen or a printer).

        This method is the focus of the entire JFreeChart library.

        Specified by:
        draw in interface org.jfree.ui.Drawable
        Parameters:
        g2 - the graphics device.
        area - the area within which the chart should be drawn.
      • draw

        public void draw(Graphics2D g2,        Rectangle2D area,        ChartRenderingInfo info)
        Draws the chart on a Java 2D graphics device (such as the screen or a printer). This method is the focus of the entire JFreeChart library.
        Parameters:
        g2 - the graphics device.
        area - the area within which the chart should be drawn.
        info - records info about the drawing (null means collect no info).
      • draw

        public void draw(Graphics2D g2,        Rectangle2D chartArea,        Point2D anchor,        ChartRenderingInfo info)
        Draws the chart on a Java 2D graphics device (such as the screen or a printer).

        This method is the focus of the entire JFreeChart library.

        Parameters:
        g2 - the graphics device.
        chartArea - the area within which the chart should be drawn.
        anchor - the anchor point (in Java2D space) for the chart (null permitted).
        info - records info about the drawing (null means collect no info).
      • createBufferedImage

        public BufferedImage createBufferedImage(int width,                                int height)
        Creates and returns a buffered image into which the chart has been drawn.
        Parameters:
        width - the width.
        height - the height.
        Returns:
        A buffered image.
      • createBufferedImage

        public BufferedImage createBufferedImage(int width,                                int height,                                ChartRenderingInfo info)
        Creates and returns a buffered image into which the chart has been drawn.
        Parameters:
        width - the width.
        height - the height.
        info - carries back chart state information (null permitted).
        Returns:
        A buffered image.
      • createBufferedImage

        public BufferedImage createBufferedImage(int width,                                int height,                                int imageType,                                ChartRenderingInfo info)
        Creates and returns a buffered image into which the chart has been drawn.
        Parameters:
        width - the width.
        height - the height.
        imageType - the image type.
        info - carries back chart state information (null permitted).
        Returns:
        A buffered image.
      • createBufferedImage

        public BufferedImage createBufferedImage(int imageWidth,                                int imageHeight,                                double drawWidth,                                double drawHeight,                                ChartRenderingInfo info)
        Creates and returns a buffered image into which the chart has been drawn.
        Parameters:
        imageWidth - the image width.
        imageHeight - the image height.
        drawWidth - the width for drawing the chart (will be scaled to fit image).
        drawHeight - the height for drawing the chart (will be scaled to fit image).
        info - optional object for collection chart dimension and entity information.
        Returns:
        A buffered image.
      • handleClick

        public void handleClick(int x,               int y,               ChartRenderingInfo info)
        Handles a 'click' on the chart. JFreeChart is not a UI component, so some other object (for example, ChartPanel) needs to capture the click event and pass it onto the JFreeChart object. If you are not using JFreeChart in a client application, then this method is not required.
        Parameters:
        x - x-coordinate of the click (in Java2D space).
        y - y-coordinate of the click (in Java2D space).
        info - contains chart dimension and entity information (null not permitted).
      • fireChartChanged

        public void fireChartChanged()
        Sends a default ChartChangeEvent to all registered listeners.

        This method is for convenience only.

      • titleChanged

        public void titleChanged(TitleChangeEvent event)
        Receives notification that a chart title has changed, and passes this on to registered listeners.
        Specified by:
        titleChanged in interface TitleChangeListener
        Parameters:
        event - information about the chart title change.
      • plotChanged

        public void plotChanged(PlotChangeEvent event)
        Receives notification that the plot has changed, and passes this on to registered listeners.
        Specified by:
        plotChanged in interface PlotChangeListener
        Parameters:
        event - information about the plot change.
      • equals

        public boolean equals(Object obj)
        Tests this chart for equality with another object.
        Overrides:
        equals in class Object
        Parameters:
        obj - the object (null permitted).
        Returns:
        A boolean.
      • main

        public static void main(String[] args)
        Prints information about JFreeChart to standard output.
        Parameters:
        args - no arguments are honored.

SCaVis 2.1 © jWork.ORG