|February 15, 2013: The BioFabric paper is now available in final published form!See Publications|
|February 19, 2013: Our new gallery of networks has started. Lots more to come! See Gallery|
|February 20, 2013: Come visit the new BioFabric blog at biofabric.blogspot.com|
|May 6, 2013: BioFabric is now also hosted on GitHub|
What does BioFabric do? It displays a network where nodes are depicted as horizontal lines, not as points! Take a look at the
Super-Quick Demo to see how it works in under 60 seconds:
BioFabric uses a novel network presentation method that represents nodes as horizontal line segments, one per row. For example,
this is the
yeastHighQuality.sif sample network of protein-protein interactions distributed with
the Cytoscape download;
it is based upon [vonMering2002] and
[Lee2002]. It contains over 3,000 nodes and 6,800 edges:
Nodes are represented as one-dimensional horizontal line segments, one per row.
Edges are represented as one-dimensional vertical line segments, one per column, terminating at the two rows associated with the endpoint nodes.
Edges are drawn darker than nodes; this has the effect of emphasizing the links and making them appear to float in front of the nodes.
Both ends of a link are represented as a tiny square. This provides sufficient contrast to make the ends of the link stand out even at large scales.
In the case of directed edges, the appropriate end is tagged with an arrowhead.
Edges are unambiguously represented and never overlap.
In networks that have multiple edges between the same nodes, i.e. representing different types of relationships, all edges show up clearly.
As nodes are represented as horizontal lines, there is no requirement that all edges converge upon a single point,
allowing for complete flexibility in where a link is drawn.
Links can originate, and terminate, anywhere along the length of the node segment. This flexibility introduces the powerful
ability to create sets of links that share some semantic property and depict them as discrete groups in the visualization.
The addition of a new edge just increases the width of the visualization, and does not degrade the existing presentation
in any fashion.
The visualization technique produces a distinct edge wedge for each node, created by the close-set juxtaposition
of the parallel links, that provides clear visual cues about how the node is connected, and how it compares to other similar nodes.
A set of 32 colors is used, not randomly, but in a repeating cycle to render node and edge segments.
Colors are not used to apply semantic meaning to network elements, but are crucial for providing a
framework that allows the user to visually trace features over long distances. Also, the use of
cycling insures that antialiased rendering will produce larger-scale color patterns that provide
useful visual cues even when individual links cannot be discerned.
Note that the traditional technique overloads the two-dimensional plane, using the same space to represent
both nodes and edges. BioFabric effectively segregates the plane into two separate one-dimensional spaces,
and assigns each space to either nodes or edges; the imposition of orthogonality and the use of judicious
rendering allow the user to visually distinguish the two. Thus, BioFabric can provide additional clarity
of the network structure while using the same underlying two-dimensional resource.
Try BioFabric Online
BioFabric can be downloaded as a standalone executable and run on your Windows or Mac computer; see below.
However, if you just want to have a look, it can be run from the following link using Java WebStart. Once it is running, you can import
.sif file using File->Import->Import SIF File....
Click HERE to run BioFabric (version 1.0.0, released 07/27/12,
REQUIRES Java 5 or above; Java 6 highly recommended for Macs) using Java Web Start.
If you are working with very large networks, you will need the huge memory version (4 GB allocated for the Java heap) along with the hardware
to make this feasable. Click HERE
to run this version (version 1.0.0, released 07/27/12, REQUIRES Java 5 or above; Java 6 highly recommended for Macs).
BioFabric is written in Java, and can be run on your Windows, Mac, or Linux computer. Note that all these downloadable executables
require that you first download and install the Java Runtime Environment (JRE), which can be downloaded from
here (click the "Free Java Download" button). On MacOS X, Java should already be
factory-installed on all new Macs, but Java 6 is highly recommended for Macs so that large-scale views do not render so lightly as to
be almost invisible. Note that all of the following versions are configured for 2 GB Java heap space.
Choose from the following download options:
- Windows: You need to download this BioFabric100.zip archive file. Depending
on your configuration of Windows, your computer will either automatically unzip the archive and display its contents, or
you will need to unzip it manually using a program like PKZIP. Drag the BioFabric.exe file out of the archive and drop it on your desktop.
Double-clicking on the desktop icon will start the program running.
- Mac: Disk images are a standard way to distribute software on Macs. The BioFabric application is contained
in this BioFabricInstallImage100.dmg disk image. Download this disk image file.
Depending on your configuration, the file may be stored in your Downloads folder, then automatically mounted and opened in
a Finder window, or it may end up on your desktop, where you might have to double-click the file to mount the disk image, and then open the
Finder manually by double-clicking on the hard disk icon (called BioFabricInstallImage100). From the Finder window,
drag the BioFabric icon inside onto your desktop (or, if you prefer, into your Applications folder). You can then eject the disk
image by dragging the hard disk icon to the Trash. Double-clicking on the BioFabric icon will start the program running. Once
it is in the dock, you can Ctrl-click the mouse and select for it to stay in your dock.
Important! Currently, the best results for rendering on a Mac use the Java 6 Runtime! With Java 5, large-scale views are not visible, and small-scale views render too lightly.
|Important Information for Mac Users with OS X newer than v10.7.5!|
Trying to run BioFabric will cause a message to appear
telling you that it is damaged. On Mavericks, it will even recommend that you move it to the trash. There is nothing wrong
with BioFabric. This is due to new restrictions imposed by the Gatekeeper
system; BioFabric not signed with an Apple Developer Certificate. Based on recent user reports, you may need to
to completely disable Gatekeeper to get BioFabric to run the first time, and then immediately restore
Gatekeeper back to its previous secure setting. On some systems, you may be able to tell Gatekeeper to specifically allow BioFabric. The complete discussion
of this issue on Apple's support website is here. Scroll down to
"How to open an app from a unidentified developer and exempt it from Gatekeeper" and follow the instructions there.
In summary, you will need to:
- In Finder, Control-click or right click the BioFabric icon.
- Select Open from the top of contextual menu that appears.
- Click Open in the dialog box. If prompted, enter an administrator name and password.
But if that route does not work, use the information provided in "Gatekeeper options" as follows:
- From Systems Preferences, select Security & Privacy.
- Go to the General tab.
- Under "Allow applications downloaded from:", select "Anywhere".
- Start BioFabric.
- Go back again to Systems Preferences, and under "Allow applications downloaded from:", select the previous secure setting
(e.g. "Mac App Store and identified developers").
- Linux: Sorry this is taking so long to get this done. In the meantime, use the webstart link on this page to run on Linux.
We are continuing to add to the gallery of BioFabric networks. Go and check them out!
Version 1.0.0 of BioFabric has just been released, and the user documentation is... lagging (sorry!). Since the program is just a viewer and
not an editor, all you really need to do to get started is to import a tab-delimited
.sif file (just like Cytoscape uses)
using File->Import->Import SIF File... and start playing around. The BioFabric paper
in BMC Bioinformatics gives a good overview of essential features to know about. Finally, the BioFabric-users Google
group is the place to ask any questions that you may have. It is also the place where I am adding HOWTO posts for using BioFabric; these posts will
probably form the basis for future official documentation.
BioFabric-users Google Group
This group is intended to answer questions, and to provide a forum for feedback
and discussions about BioFabric. The group home page is:
The blog Combing the Hairball is active, with new posts about various BioFabric topics:
BioFabric for Gaggle
The Gaggle is a framework, developed at the Institute for Systems Biology,
"...for exchanging data between independently developed software tools and databases to enable interactive exploration of
systems biology data." BioFabric supports Gaggle, and the link below will launch the
program with the Gaggle feature enabled. Launch the Gaggle Boss and other Gaggle-aware applications using the links on the
Gaggle Blank Slate page.
Click HERE to run the Gaggle-enabled BioFabric
(version 1.0.0, released 07/27/12, REQUIRES Java 5 or above; Java 6 highly recommended for Macs) using Java Web Start.
A variety of
.sif files are available here to use for exploring BioFabric.
The network described in Case Study III of the BioFabric paper is available here (32 MB).
WARNING! This is a compressed zip file of a network with a huge number (over 1,000,000) of links, and is a poor example for
learning how to use BioFabric. It requires the Java WebStart "huge memory version" of BioFabric to run (link provided above), and a computer
with enough physical memory to handle it. It is only included here because the BMC Bioinformatics supplementary materials site does not support files
this large. Instead, use the
.sif example network files provided above, or some of the other
.bif files available
as supplementary materials to the BMC paper.
Please cite BioFabric using [Longabaugh 2012] if you use it in your research:
A tar file of the current version of the source code is available here, but it lacks the toolbar
image files that are needed to get the program running. The entire project is now also hosted on GitHub.
If you have any feedback you wish to send along, such as questions, bug reports, feature requests, and
usability issues, you can send email to:
wlongabaugh -a~t- systemsbiology -d~o~t- org
Web browser launch code adapted from Bare Bones Browser Launch by Dem Pilafian
Windows executable created using the Launch4j Executable Wrapper by Grzegorz Kowal
BioFabric was made possible through the development of BioTapestry,
supported by National Institute of General Medical Sciences Award Number GM061005.
BioFabric development was also supported in part by Award Number U24CA143835 from the
National Cancer Institute. This content is solely the responsibility of the
author and does not necessarily represent the official views of the
National Institute of General Medical Sciences, National Cancer Institute,
or the National Institutes of Health.
License and Disclaimer
This software is licensed under the GNU Lesser General Public
License (LGPL), which is a standard "free software"
and "open source" license. A copy of the license agreement
is available online here. Note that
some of the toolbar icons are distributed under this license.
The downloadable Windows executable is wrapped in code that
is made available by Grzegorz Kowal under this
BioFabric is under continual development, and despite our best efforts
there are bugs in the software. Please be advised that, as stated in the
license agreement, the Institute for Systems Biology and the authors disclaim any
liability stemming from the use of this software.