What The Simplest/Easiest Open Source Genome Browser To Develop With? (For A Beginner Programmer)
5
4
Entering edit mode
12.0 years ago
bio monkey ▴ 40

I'm a very novice-level programmer (Biology major) and I want to find a simple genome browser that I can easily add functionality to. What I want to be able to do is be able to upload a file that contains differential gene expression levels and then display these on a "track" on the genome browser a the whole chromosome level.

Ideally you would be able to see the entire track for the chromosome, then be able to zoom in to a section of the chromosome and be able to see the values plotted out.

What is the easiest/simplest genome browser to work with? I've already tried Savant but the code is too extensive and too hard to follow. I've also heard of GBrowse but it seems like thats too complex too.

Thanks,

genome browser visualization gene expression • 4.7k views
ADD COMMENT
1
Entering edit mode

So what is your aim? To find a browser with the features you listed,there is a lot of them, or to find one that is easily extensible, or to find a browser to study for its supreme coding style, or one that is easy to hack?

ADD REPLY
0
Entering edit mode

And btw it also depends on the programming language you prefer. If you haven't chosen your language yet, choose java, there are many browsers in java and it's more newbie friendly than perl. If you want publication ready graphics,go for R and ggplot.

ADD REPLY
0
Entering edit mode

indeed, probably the language that the OP knows is the most important factor - bio monkey should think about the language first, then the browser

ADD REPLY
0
Entering edit mode

Thanks for the help everyone. Just to clarify, I'm looking for something java-based (I took an intro computer science class in Java) that can be manipulated easily. I'll check out Gbrowse2.

But more specifically I'm looking for something with these two components: 1. the reference track is plotted (with genes shown) and a graph is overlayed (or shown above) the reference track that shows the p-value for an entire gene. this way, you would be able to see easily which genes in your viewing window are significant between two populations (e.g. two SAM files uploaded). 2. you can click on a particular gene and then a popup shows up that displays the P-value, t-statistic, maybe some sort of enrichment score.

Does anybody know of a tool that does this?

ADD REPLY
0
Entering edit mode

Yes gbrowse can be configured to do this, but gbrowse is perl, and for larger genomes requires a database installation. See my updated answer.

ADD REPLY
0
Entering edit mode

Galaxy should let you do this. They've got some nice tutorials that you can refer to

ADD REPLY
0
Entering edit mode

You are right that the scores could be precomputed in galaxy and be exported as a track. Normally, for most genome browsers, tracks and scores must be pre-computed,as more complex scores cannot be computed on the fly.

ADD REPLY
5
Entering edit mode
12.0 years ago
brentp 24k

Most genome browsers, including Savant, are built so that you don't have to program.

If your data is in the right format, you can just upload it and view it. Savant supports viewing differential expression data. Did you try just using the browser directly?

You could also use the UCSC genome browser if your data is in BAM format or in wig format.

If you do any programming, it'll likely be to convert data to whatever format your chosen viewer can use to render what you're looking for.

EDIT:

Since you mention Java is a requirement, also check out IGV it's open source: http://code.google.com/p/igv/ if you find you really need to dig in to the code.

ADD COMMENT
3
Entering edit mode
12.0 years ago
Mary 11k

WebGBrowse: http://webgbrowse.cgb.indiana.edu/ All you need to do is structure the file.

EDIT to add: I looked at Gaggle once too and thought it looked nice, but haven't actually tried to add data myself: http://gaggle.systemsbiology.net/docs/geese/genomebrowser/

ADD COMMENT
0
Entering edit mode

That looks like a good solution, you get the power of gbrowse without installation costs. The configuration should work exactly the same way as documented for gbrowse, correct?

ADD REPLY
0
Entering edit mode

Yeah, it's my understanding that it is totally aligned with installed GBrowse. EDIT: see their page at GMOD http://gmod.org/wiki/WebGBrowse

ADD REPLY
2
Entering edit mode
12.0 years ago
Michael 54k

In fact the simples genome browser for a beginner might be the software that doesn't need programming because it already has all features required and that has the largest user community.

To say it frankly, for a beginner in programming modifying an existing codebase of a highly complex software (e.g. any reasonable genome browser) is not going to be a recommended exercise (it depends really on good you are). Instead I recommend to look at GBrowse2 again. It has all the features you describe (custom tracks, zooming, quantitative tracks) and many more. The whole thing comes as a Perl module and needs only writing configuration files, no programming. It has a large user community which is eager to provide support. I have recently evaluated GMOD and GBrowse installation and found it reasonably simple to install. If you'd really need some new feature you can ask for it on the mailing list and might get a hint on how to configure GBrowse to do this.

I recommend you try setting it up and configuring it going through the howto.

Edit, after reading your comment. Imagine you had a gff3 file with your genes and a tag 'pvalue' in the last column, Then the following configuration code would most likely work for you

   description = sub {
       my $feature = shift;
       return $feature->attributes('pvalue');
   }

This is configuration but it also is programming, because you in fact can inject little code fragments via the configuration file without compiling the application again. Also it is sufficiently abstract to be obvious how this code works, or how to change it to display an attribute 'evalue'.

ADD COMMENT
1
Entering edit mode
12.0 years ago

Do you need to use a genome browser to do this? If you only need to generate a figure of the data you describe, you could use Circos to visualize heatmap data overlaid on genomic coordinates. The downside is you have to learn a little bit of Perl. But the upside is, you get to learn a little bit of Perl.

But, if your goal is also to learn about the inner workings of a genome browser, then the other answers here give you some excellent pointers.

ADD COMMENT

Login before adding your answer.

Traffic: 3223 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6