Bandage is a GUI program that allows users to interact with the assembly graphs made by de novo assemblers Velvet and SPAdes.
De novo assembly graphs contain assembled contigs (nodes) but also the connections between those contigs (edges), which are not easily accessible to users. Bandage visualises assembly graphs, with connections, using graph layout algorithms. Nodes in the drawn graph, which represent contigs, can be automatically labelled with their ID, length or depth. Users can interact with the graph by moving, labelling and colouring nodes. Sequence information can also be extracted directly from the graph viewer. By displaying connections between contigs, Bandage opens up new possibilities for analysing de novo assemblies that are not possible by looking at contigs alone.
More information and screenshots are on the Bandage website: rrwick.github.io/Bandage
Bandage documentation is available on the Bandage GitHub wiki.
Bandage help is also built into the program. Throughout the UI, you will find these help icons next to controls and settings: . Click on these icons to read a description of how to use that element of Bandage.
Compiled 64-bit binaries for Linux, OS X and Windows are available in the GitHub 'Releases' section and from the Bandage website.
The following instructions successfully build Bandage on a fresh installation of Ubuntu 14.04:
- Ensure the package lists are up-to-date:
sudo apt-get update
- Install prerequisite packages:
sudo apt-get install build-essential git qtbase5-dev
- Prepare the OGDF library:
- Download the OGDF code (2012.07 Sakura release) from www.ogdf.net and unzip.
- Open a terminal in the OGDF directory.
- Create the Makefile:
./makeMakefile.sh
- Compile the library:
make
- Download the Bandage code from GitHub:
git clone https://github.com/rrwick/Bandage.git
- Ensure that the Bandage directory and the OGDF directory are stored in the same parent directory.
- Open a terminal in the Bandage directory.
- Set the environment variable to specify that you will be using Qt 5, not Qt 4:
export QT_SELECT=5
- Run qmake to generate a Makefile:
qmake
- Build the program:
make
Bandage
should now be an executable file.- Optionally, copy the program into /usr/local/bin:
sudo make install
. The Bandage build directory can then be deleted. - Optionally, delete the OGDF directory.
If you download and run the Mac binary, you may receive a warning stating that Bandage 'can't be opened because it is from an unidentified developer.' Right click on the file and select 'Open' to override this warning.
The following instructions successfully build Bandage on OS X 10.7 (Lion), 10.8 (Mountain Lion), 10.9 (Mavericks) and 10.10 (Yosemite):
- Install Xcode, along with the Xcode Command Line Tools.
- Install Qt 5
- For OS X 10.8 and later this is most easily done using Homebrew: brew.sh. Install the Qt 5 package with this command:
brew install qt5
- For OS X 10.7 (or if the Homebrew install fails), it will be necessary to instead download and install the Qt SDK: www.qt.io/download-open-source. The disk space required can be greatly reduced by unticking the iOS and Android options in the Qt installer.
- Prepare the OGDF library:
- Download the OGDF code (2012.07 Sakura release) from www.ogdf.net and unzip.
- In the OGDF directory, edit the makeMakefile.config file. In the 'VERSIONS' section, add
-DOGDF_MEMORY_MALLOC_TS
to both the debug and release lines so they look like this: *debug = -g3 -O0 -DOGDF_DEBUG -DOGDF_MEMORY_MALLOC_TS
*release = -O2 -DOGDF_MEMORY_MALLOC_TS
- Open a terminal in the OGDF directory.
- Create the Makefile:
./makeMakefile.sh
- Compile the library:
make
- Download the Bandage code from GitHub:
git clone https://github.com/rrwick/Bandage.git
- Ensure that the Bandage directory and the OGDF directory are stored in the same parent directory.
- Open a terminal in the Bandage directory.
- Run qmake to generate a Makefile:
- On OS X 10.7 and 10.8, it is first necessary to remove this line from the Bandage.pro file,
CONFIG += C++11
. - If Qt was install with Homebrew, this command will work:
/usr/local/opt/qt5/bin/qmake
- If Qt was installed using the Qt installer, qmake will be located here:
QT_INSTALL_DIRECTORY/QT_VERSION/clang_64/bin/qmake
- Build the program:
make
Bandage
should now be an application bundle.- Optionally, copy the Bandage application bundle into the 'Applications' folder and delete the Bandage build directory.
- Optionally, delete the OGDF directory.
Building Bandage in Windows is more challenging than in Linux or OS X, but it can be done. If you would like to, feel free to contact me (Ryan) at rrwick@gmail.com and I'll do my best to help you out!
Version 0.6.3 - improvements to BLAST functionality
Version 0.6.2 - new features for working with graph paths
Version 0.6.1 - improvements to BLAST functionality
Version 0.6.0 - new features, including command line functionality
Version 0.5.6 - bug fixes
Version 0.5.5 - bug fixes
Version 0.5.4 - bug fixes
Version 0.5.3 - bug fixes
Version 0.5.2 - performance improvements
Version 0.5.1 - bug fixes
Version 0.5.0 - new features, including Trinity support
Version 0.4.2 - bug fixes
Version 0.4.1 - bug fixes
Version 0.4.0 - new features, including BLAST integration
Version 0.3.0 – initial release on GitHub
New contributors are welcome! If you're interested or have ideas, please contact me (Ryan) at rrwick@gmail.com.
GNU General Public License, version 3