Genesis program for Admixture and PCA Plots

The Genesis program is an interactive program to assist in the creation of structure/admixture and PCA plots. It takes data produced by popular programs such as structure, admixture and Eigenstrat and produces the appropriate chart. The user can then interactively change the charts to make them clearer.

Why use Genesis?

There are first class tools that can be used to create good quality pictures -- Distruct and R are excellent examples. They do require expertise to use, and more importantly, are best used when you know exactly what you want to see. However, our experience in practice is that there is a huge need for an interactive tool. Which colours are best to use is not just an aesthetic problem: in some cases a set of colours works well but with other data the same colours doesn't because the colours don't clearly contrast with a new position of the objects being drawn. There may be a need to rearrange the labelling or the data. We want to make the fonts as big as possible, but what is "big as possible" depends on the quantity and arrangement of data. Often when displaying admixture charts, multiple charts are shown in one diagram, we need to to keep consistency of colours and may want to play with the ordering of data.

So we see the need for an interactive tool that can be used to explore possibilities and produce good quality data. Although tools like Distruct and R are more flexible and produce very high quality pictures, Genesis is interactive and requires much less expertise to use.

Executable code

Please download the this JAR file. The code assumes Java 1.7 is installed. Genesis runs on Windows, Linux and MacOS X. To run on Mac OS X, X11 must be installed. (Download XQuartz here)

Documentation

The manual is available as

Amateur videos showing use of Genesis for PCA and admixture are also available.

Very quick start

On Windows and Linux, the program should be run as


java -jar Genesis.jar

On Mac OS X, the program should be run as

java -XstartOnFirstThread -jar Genesis.jar

Note that X11 should be installed.

Sample data files

Some sample data files can be found here