Then, slowly but steadily, Sanders ate into Clinton's lead. At the time of the last Post/ABC poll, Clinton's lead had dropped to seven points.

It's been a remarkable shift.

Perhaps more remarkable, though, is that for the most part the demographic splits we've seen in the voting were there from the outset -- consistently.

Take race, for example. White voters have always been less supportive of Clinton than have non-white voters, even when both groups supported her by wide margins last summer.

Liberals have always been less supportive than moderates.

Men have always been less supportive than women.

In July, 57 percent of men backed Clinton, less than the 68 percent overall who supported her and much less than the 76 percent of women. In the Post and ABC's most recent poll, same pattern. Now 41 percent of men back Clinton, versus 49 percent overall and 55 percent of women. The difference between men and all voters was 11 points in July and 8 points now. Among women it was 8 points then and 6 points now. Not really all that much difference.

One way in which the numbers have shifted by demographic is on age. During the summer, people younger than 50 and those 50 and over had about the same attitude on the candidates. But a dramatic gap quickly appeared -- and has been an important factor in the actual voting.

In all of those graphs, you can still see how the general trend has been toward a closer race between the two candidates. But we can look at the data another way, as we did with the genders above. Relative to the overall vote, the demographic splits have been remarkably consistent. Basically every demographic above the center line -- meaning more relative support for Clinton than Sanders -- has been above the line the whole time. And every line below has been below for months.