def generate_field(emptyChar = @last_empty_char)
      if plottable
        new_field = []
        @field.each do |rows|
          rows.each do |items|
            if items.length == 0
              items.insert(0, "#{emptyChar} ")
            elsif emptyChar != @last_empty_char && items == ["#{last_empty_char} "]
              items[0] = "#{emptyChar} "
            end
          end
          new_field.insert(-1, rows.join(''))
        end
        @last_empty_char = emptyChar
        package = (owner.package.nil?) ? 'No package chosen.' : owner.package.to_s
        puts "\nPin field: #{package}\n\n"
        group_display = @groups.join("\n")
        puts "Legend: \n#{group_display}\n\n"
        puts @upper_axes.join('').yellow
        new_field.each_with_index { |line, index| puts line + "#{@rows[index]} (#{index + 1})\n".chop.yellow }
        puts @lower_axes.join('').yellow, "\n"
      end
    end
def generate_field(emptyChar = @last_empty_char)
      if plottable
        new_field = []
        @field.each do |rows|
          rows.each do |items|
            if items.length == 0
              items.insert(0, "#{emptyChar} ")
            elsif emptyChar != @last_empty_char && items == ["#{last_empty_char} "]
              items[0] = "#{emptyChar} "
            end
          end
          new_field.insert(-1, rows.join(''))
        end
        @last_empty_char = emptyChar
        package = (owner.package.nil?) ? 'No package chosen.' : owner.package.to_s
        puts "\nPin field: #{package}\n\n"
        group_display = @groups.join("\n")
        puts "Legend: \n#{group_display}\n\n"
        puts @upper_axes.join('').yellow
        new_field.each_with_index { |line, index| puts line + "#{@rows[index]} (#{index + 1})\n".chop.yellow }
        puts @lower_axes.join('').yellow, "\n"
      end
    end
generate_field should not need to be called explicitly. It is called
  by other methods when need-be, and is fundamentallyis responsible
  for two things:

    1. It fills the .field array with the appropriate symbols/markers.
    2. It concatenates the array elements into printable rows, and prints
       them.