From: Mitch S. <mit...@be...> - 2010-05-28 15:27:28
|
On 05/28/2010 07:36 AM, Adam Witney wrote: > Is it possible to use multiple source genomes from a single jbrowse installation? > > I have setup a config file for each genome and can run > > bin/biodb-to-json.pl --conf config1.js --ref genome1 > bin/biodb-to-json.pl --conf config2.js --ref genome2 > > ok. But I can't seem to be able the second one up in the browser. Is there a specific way I should approach this? I couldn't see anything on the wiki about this > Aside: If you have multiple data sources that all describe the same genome (say, a chado database, and a GFF file, and a wiggle file, all of which are about the same set of reference sequences) then you can certainly put them into the same JBrowse instance, like you were trying to do. It doesn't sound like that applies to you, but it's an FAQ, so I thought I'd mention it. One assumption that JBrowse makes is that each reference sequence has a unique name, so if your two genomes both have, say, a "chr1" refseq, then there will be confusion. So, if each genome has multiple refseqs (i.e., multiple chromosomes), then usually you want to have one genome per JBrowse "instance"; an instance is one JBrowse "data" directory containing the JSON files generated by biodb-to-json.pl and the other JBrowse scripts. As usual, the best thing you can do at the moment comes down to what you're trying to accomplish. If you make sure that each of the reference sequences has a unique name (say, if you have multiple species that each only have one reference sequence, like viruses) then you can have all your genomes in one JBrowse instance. All you have to do is make sure that run bin/prepare-refseqs.pl gets run for all of the ref seqs. Specifically, start out by doing $ bin/prepare-refseqs.pl --conf config1.js --refs genome1 $ bin/prepare-refseqs.pl --conf config2.js --refs genome2 and then do the bin/biodb-to-json.pl commands you were doing (you should be able to leave the "--refs" argument off of the biodb-to-json.pl commands, if you only have one ref per genome). On the other hand, if you're working with species with multiple chromosomes, one simple thing you can do is have a whole separate JBrowse download for each genome. It takes up a little more space, but the space is usually small relative to the size of the genome data. If you have lots of different genomes and you're concerned about the space taken up by having separate sets of the JBrowse code, then one thing you can do is have a separate "data" directory for each genome, but sharing the same JBrowse code. Then you'd have to copy the index.html file and edit these two lines: <script type="text/javascript" src="data/refSeqs.js"></script> <script type="text/javascript" src="data/trackInfo.js"></script> to refer to the specific data directories. Specifically, I mean doing something like this: $ bin/prepare-refseqs.pl --conf config1.js --refs chr1,chr2,chr3 --out genome1-data $ bin/biodb-to-json.pl --conf config1.js --out genome1-data $ cp index.html genome1.html and edit genome1.html so that those two lines above look like this: <script type="text/javascript" src="genome1-data/refSeqs.js"></script> <script type="text/javascript" src="genome1-data/trackInfo.js"></script> And then you'd do the same thing for genome2, with a new genome2-data directory and a new genome2.html file. Then you could link to each of those html files separately for each genome. Comparing two genomes against each other on the same screen in a synteny-style view is something we're keen to do in the JBrowse renewal, but it's not currently implemented. Does that get you where you want to go? Mitch |