Class LineGraph

All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class LineGraph extends JPanel
Axis graph is used by StatGraphVisualizer, which generates bar graphs from the statistical data.
See Also:
  • Field Details

    • data

      protected double[][] data
    • title

      protected String title
    • xAxisTitle

      protected String xAxisTitle
    • yAxisTitle

      protected String yAxisTitle
    • xAxisLabels

      protected String[] xAxisLabels
    • yAxisLabel

      protected String[] yAxisLabel
    • width

      protected int width
    • height

      protected int height
    • shape_counter

      protected int shape_counter
    • paint_counter

      protected int paint_counter
  • Constructor Details

    • LineGraph

      public LineGraph()
    • LineGraph

      public LineGraph(LayoutManager layout)
      Parameters:
      layout - The LayoutManager to be used
    • LineGraph

      public LineGraph(LayoutManager layout, boolean isDoubleBuffered)
      Parameters:
      layout - The LayoutManager to be used
      isDoubleBuffered - Flag whether double buffering should be used
  • Method Details

    • setData

      public void setData(double[][] data)
    • setTitle

      public void setTitle(String title)
    • setXAxisTitle

      public void setXAxisTitle(String title)
    • setYAxisTitle

      public void setYAxisTitle(String title)
    • setXAxisLabels

      public void setXAxisLabels(String[] labels)
    • setYAxisLabels

      public void setYAxisLabels(String[] label)
    • setWidth

      public void setWidth(int w)
    • setHeight

      public void setHeight(int h)
    • paintComponent

      public void paintComponent(Graphics g)
      Overrides:
      paintComponent in class JComponent
    • createShapes

      public Shape[] createShapes(int count)
      Since we only have 4 shapes, the method will start with the first shape and keep cycling through the shapes in order.
      Parameters:
      count - The number of shapes to be created
      Returns:
      the first n shapes
    • nextShape

      public Shape nextShape()
      Return the next shape
      Returns:
      the next shape
    • createStrokes

      public Stroke[] createStrokes(int count)
      Create a given number of Strokes
      Parameters:
      count - The number of strokes to be created
      Returns:
      the first count strokes
    • nextStroke

      public Stroke nextStroke()
      method always return a new BasicStroke with 1.0f weight
      Returns:
      a new BasicStroke with 1.0f weight
    • createPaint

      public Paint[] createPaint(int count)
      return an array of Paint with different colors. The current implementation will cycle through 12 colors if a line graph has more than 12 entries
      Parameters:
      count - The number of Paints to be created
      Returns:
      an array of Paint with different colors
    • nextPaint

      public Paint nextPaint()
      The method will return the next paint color in the PAINT_ARRAY. Rather than return a random color, we want it to always go through the same sequence. This way, the same charts will always use the same color and make it easier to compare side by side.
      Returns:
      the next paint color in the PAINT_ARRAY