Keys
A
M m
C♯
M m
F
M m
F♯
M m
A♯
M m
D
M m
D♯
M m
G
M m
B
M m
C
M m
E
M m
G♯
M m
Chords
F
M
m
d
A
C
M
m
d
A
G
M
m
d
A
D
M
m
d
A
A
M
m
d
A
E
M
m
d
A
B
M
m
d
A
F♯
M
m
d
A
C♯
M
m
d
A
G♯
M
m
d
A
D♯
M
m
d
A
A♯
M
m
d
A

HarmonySpace

A
C♯
D♭
F A
C♯
D♭
F A
C♯
D♭
F
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
D♯
E♭
G B
D♯
E♭
G B
D♯
E♭
G B
C E
G♯
A♭
C E
G♯
A♭
C E
G♯
A♭
A
C♯
D♭
F A
C♯
D♭
F A
C♯
D♭
F
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
D♯
E♭
G B
D♯
E♭
G B
D♯
E♭
G B
C E
G♯
A♭
C E
G♯
A♭
C E
G♯
A♭
A
C♯
D♭
F A
C♯
D♭
F A
C♯
D♭
F
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
F♯
G♭
A♯
B♭
D
D♯
E♭
G B
D♯
E♭
G B
D♯
E♭
G B
C E
G♯
A♭
C E
G♯
A♭
C E
G♯
A♭

About HarmonySpace

I found some interesting old papers online about an application called HarmonySpace, for example this one. The original application had been written for a Mac and was no longer available, so I thought I'd have a go at implementing my own in JavaScript (a good excuse to brush up on JavaScript.) The idea is simple, if non-intuitive:

  1. Starting with any note (let's say C) write a line of notes left to right, a major third apart, stopping just before you get back to the starting note, so that's: C, E, and G♯.
  2. Now ascending above each of those notes write the notes in a sequence of minor thirds, again stopping before you get back to the starting note. So from C that's E♭, F♯, and A. From E it's G, B♭, and C♯, and from G♯ it's B, D and F.
  3. Now take that grid and copy it multiple times to make a big repeating grid.
  4. We now have all twelve notes of the chromatic scale arranged so that for any note, the note to the right is a major third above, and the note above is a minor third above.
  5. What's interesting about that is that perfect fifths are now arranged along the bottom-left to top-right diagonal and minor seconds along the top-left to bottom-right diagonal (it's obvious really - right + up = M3 + m3 = P5, and down + right = -m3 + M3 = m2.)
  6. What's even more interesting is that the notes of the triads, both major and minor, are as close together as it is possible to be, forming triangles either right then up (M3 + m3 = major triad) or up then right (m3 + M3 = minor triad).
  7. Another interesting feature is that the notes of any particular major or natural minor scale form a continuous stream flowing roughly top-right up the grid.

Try it out. You can pick a key from the menu on the left, then choose chords from the menu on the right. If you are lucky your browser may even play them to you.

The original HarmonySpace was much more capable than my poor effort here. I only hope I may in some small way renew interest in the original research.