The GenGIS Manual

From The GenGIS wiki
Revision as of 18:16, 4 March 2009 by Beiko (Talk | contribs)

Jump to: navigation, search

A recent version of the manual is also available in Media:.PDF format.


Introduction / Overview of GenGIS


Geography has always been an important component of evolutionary and ecological theory. But the advent of sequence typing approaches such as 16S ribotyping, DNA barcoding using the COX1 gene, and multi-locus sequence typing, gives us the opportunity to understand how communities of organisms interact, move around and evolve. This sequencing revolution is tightly coupled to the development of new algorithms for assessing and comparing populations based on their genes.

Coupled with these developments is the ready availability of high quality, public domain digital map data. By integrating molecular data with cartography and habitat parameters, we can visualize the geographic and ecological factors that influence community composition and function.

GenGIS is designed to bring these components together into a single software package that satisfies the following criteria:

Free and open source. GenGIS is released under a *** license, and we have made extensive use of other free packages such as wxWidgets, R, and Python. Making GenGIS freely available allows it to be downloaded and used anywhere in the world, and allows users to inspect and modify the source code.

User-friendly. Although GenGIS is built to deal with challenging scientific questions, our goal is to make the software as easy to use as possible. This is particularly important as many users will have little experience with digital map data, apart from applications such as Google Earth.

Adaptible and extensible. The principal strength of many open-source projects lies in the ability of a loosely organized community of users to develop and enhance the software: R and BioPerl are two examples of successful open-source projects with many contributors. Since the potential applications of GenGIS are much broader than those we have in mind, we aim to make it as easy as possible to extend its capabilities by exposing the internal data structures and offering a plugin architecture.

Platforms and System Requirements

GenGIS has been developed and tested on the following operating systems:

  • Win32 (XP and Vista)
  • Mac OSX 'Leopard'

Support for Linux is not a development priority at the moment, although it should in principle be difficult to port GenGIS to Linux, and we will happily support any efforts to develop such a version. Similarly, if you experience problems (or successes!) in trying to run GenGIS on an operating system not listed above.

GenGIS can have fairly demanding memory requirements, depending on the size of map that is loaded. ***General guidelines. Please note that we have not tested GenGIS on Windows with anything less than a Pentium 4-class CPU (Centrino, ***), nor on a Mac with anything older than a 2008-vintage iMac.

System requirements

Citing GenGIS

Where to go for help


Getting the Release Version

Adding the Python Console

Adding R

Developer Version – building from source code

Input data

Input data ordering


Supported formats


Data sources and GDAL

Typical limits on map size

Location File

Required fields

Location data – Lat / Long vs. UTM

Sequence File

Required fields

Other fields

Phylogenetic trees

File formats

Constraints / relationship with sequences

The Environment

The map environment

Map pane


Getting around in GenGIS

Control elements


Console input


Menu options

Shortcut buttons

Interacting with sample sites

Working with Layers

Adding and removing

Active / inactive

wx Elements

Graphical analysis tools in GenGIS

Basic data visualizations

Pie charts


2D phylogenetic trees

Defining axes


3D phylogenetic trees

The Python console and API functions

What you can do with the console

Accessing sample and sequence data

Capturing results

RPy and analyzing data

Installing R modules

Accessing sample data as tables in R

Capturing output from R

Implemented API functions (e.g. Mike's invocation of R charts)

Writing your own API functions