   /// - Returns: Notes of fretboard horizontally, from left to right frets increasing, from top to down strings increasing.
   private func getNotes() -> [FretboardNote] {
     var notes: [FretboardNote] = []
-    for (stringIndex, string) in tuning.strings.enumerated() {
+    let strings = direction == .vertical ? tuning.strings : tuning.strings.reversed()
+    for (stringIndex, string) in strings.enumerated() {
       for (fretIndex, fret) in (startIndex..<startIndex + count).enumerated() {
         notes.append(FretboardNote(
           note: string + fret,

      }

      label.textLayer.string = NSAttributedString(
        string: "\(fretboard.tuning.strings[index].type)",
        attributes: [
          NSForegroundColorAttributeName: stringLabelColor,
          NSFontAttributeName: FRFont.systemFont(ofSize: min(min(stringLabelSize.width, stringLabelSize.height), 17))

    switch self {
    case .standard:
      return [
        Note(type: .e, octave: 2),
        Note(type: .a, octave: 2),
        Note(type: .d, octave: 3),
        Note(type: .g, octave: 3),
        Note(type: .b, octave: 3),
        Note(type: .e, octave: 4),
      ]
    case .dropD:
      return FretboardTuning.standard.strings.map({ $0 - 1 })
