Any of you who are even slightly into politics, or have followed any news lately, have probably seen something about the DNA test Elizabeth Warren took to prove/disprove her Native American ancestry. The test indicates she might have had a Native American ancestor 6 to 10 generations ago. That's a rather complex number to get your brain around, so I thought I'd create a visualization to help...

Let's start with a smaller example - a visualization going back 3 generations. You have two biological parents, four grandparents, and eight great grandparents ... and you got 1/2 of your DNA from each parent, ~1/4 from each grandparent, and ~1/8 from each great grandparent. Here's an article with more info on DNA numbers, if you want to dig a little deeper. Note that my chart shows 4 generations (when you include yourself), but it "goes back" 3 generations (from you) - I think this "counting fenceposts" problem is what confused some of the news organizations, and caused them to first print the wrong numbers, and then they had to go back and print corrections.

Now that you understand how I've laid out my graphic, let's visualize Elizabeth Warren's data. Her tests indicate that she might have had a Native American ancestor 6 to 10 generations ago, so let's start with a chart showing 6 generations. When you go back 6 generations, that's your great great great great grandparents, and there were 64 of them ... therefore you get approximately 1/64 of your DNA from each of them. In the previous example (above), I added some red text labels ... but with higher numbers of generations the graph quickly becomes too crowded for labels, therefore I added HTML mouse-over text. You can click this link to view the interactive version of the chart, with the mouse-over text for each pie slice.

Now, let's go back 10 generations. Here, the outer ring represents your 1024 great great great great great great great great grandparents, and each of them contributed approximately 1/1024 of your DNA.

How'd he do that?...

This is all just simple overlaid pie slices, using the annotate pie function in SAS/Graph. I annotate them one ring at a time, starting with the outer slices. And then each successive smaller ring obscures the lines from the outer ring. As I am drawing the rings, I programmatically assign it as 'mother' or 'father' based on whether it's an odd/even numbered slice.

Hopefully this visualization helps you get a grasp on the numbers that have been floating around recently in the news, and also shows a cool example of the custom graphs you can create in SAS - here's a link to the code if you'd like to experiment with it.