private void drawElements(Graphics g) {
    if (elist.hasElements()) {
      // Smallest size is used for radius of circle so elements don't
      // get "squished in" when one of the axis is smaller than the other:
      int smallestSize = GRID_SPACING;
      if (GRID_SPACING > GRID_SPACING_Y) {
        smallestSize = GRID_SPACING_Y;
      }

      for (Element e : elist.getCoordinates()) {

        g.setColor(e.getColor());
        g.fillOval(
            e.getX() * GRID_SPACING + OBJECT_OFFSET / 4,
            e.getY() * GRID_SPACING_Y + OBJECT_OFFSET_Y / 4,
            smallestSize / 2,
            smallestSize / 2);
      }
    }
  }