Package jcckit.plot

Class Legend


  • public class Legend
    extends Object
    Helper class for creating the legend of a Plot.
    Author:
    Franz-Josef Elmer
    • Constructor Detail

      • Legend

        public Legend​(ConfigParameters config)
        Creates an instance from the specified configuration parameters. All numbers (lengths, fontsizes, linethicknesses, etc.) are in device-independent units.
        Key & Default ValueTypeMandatory Description
        bottomDistance = 0.02 doubleno Distance between the last row and the bottom of the legend box.
        boxAttributes = default values of ShapeAttributes with a white fill color. ConfigParametersno Attributes of the legend box.
        boxHeight = 0.1 doubleno Height of the legend box.
        boxWidth = 0.2 doubleno Width of the legend box.
        curveTitleAttributes = default values of BasicGraphicAttributes ConfigParametersno Text attributes of curve titles printed in the legend.
        curveTitleDistance = 0.005 doubleno Horizontal distance between the line part of the legend symbol and the curve title.
        leftDistance = 0.01 doubleno Horizontal distance between the line part of the legend symbol and the left border of the legend box.
        lineLength = 0.035 doubleno Length of the line part of the legend symbol.
        symbolSize = 0.01 doubleno Size of the symbol part of the legend symbol. Will be the size argument of createLegendSymbol in a SymbolFactory.
        titleAttributes = default values of BasicGraphicAttributes with a text anchor CENTER TOP. ConfigParametersno Text attributes of the title of the legend box.
        title = Legend Stringno Title of the legend box.
        titleDistance = 0.005 doubleno Distance between the center of the upper line of the legend box and the anchor of the legend title.
        topDistance = 0.04 doubleno Distance between the first row and the top of the legend box.
        upperRightCorner = 0.94, 0.54 double[]no Position of the upper-right corner of the legend box.
    • Method Detail

      • getBox

        public GraphicalElement getBox()
        Returns the legend box with title but without legend symbols and curve titles.
      • createSymbol

        public GraphicalElement createSymbol​(int curveIndex,
                                             int numberOfCurves,
                                             SymbolFactory factory,
                                             boolean withLine,
                                             GraphicAttributes lineAttributes)
        Creates the symbol part of a legend symbol.
        Parameters:
        curveIndex - Index of the curve. Will be needed to calculate the y-coordinate of the symbol.
        numberOfCurves - Number of curves. Will be needed to calculate the y-coordinate of the symbol.
        factory - Factory for the symbol part of the legend symbol. Can be null.
        withLine - true if the line part of the legend symbol should be created.
        lineAttributes - Attributes of the line part.
      • createCurveTitle

        public GraphicalElement createCurveTitle​(int curveIndex,
                                                 int numberOfCurves,
                                                 String title)
        Creates the title part of a legend symbol.
        Parameters:
        curveIndex - Index of the curve. Will be needed to calculate the y-coordinate of the title.
        numberOfCurves - Number of curves. Will be needed to calculate the y-coordinate of the symbol.
        title - Title text.