1 / 10

GBrowse-related work at ApiDB

GBrowse-related work at ApiDB. Haiming Wang ApiDB Bioinformatics Resource Center Dr. Jessica Kissinger Group GMOD Nov 2007. Same database schema – GUS Multi-species – comparative analysis Graphical for protein data. Database adaptor vs GFF. Pros: Live interactive with database

saniya
Download Presentation

GBrowse-related work at ApiDB

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GBrowse-related work at ApiDB Haiming Wang ApiDB Bioinformatics Resource Center Dr. Jessica Kissinger Group GMOD Nov 2007

  2. Same database schema – GUS • Multi-species – comparative analysis • Graphical for protein data

  3. Database adaptor vs GFF Pros: • Live interactive with database • Flexible with database schema – GUS, Chado • Support complex data type, e.g. synteny, protein data Cons: • Relatively slow – database tuning + bulkSubfeatures • Familiar with SQL

  4. Database Adaptor for GBrowse • Based on the Chado adaptor • Separate queries into a separate config file • Segment->Feature->SubFeature • [GENERAL] • description = PlasmoDB Release 5.3 • db_adaptor = DAS::GUS • database = dbi:Oracle:sid=crypto;host=rad.rcc.uga.edu;port=1521 • user = gususer • pass = pass • db_args = -sqlfile =>$ENV{DOC_ROOT}.'/gbrowse.conf/plasmodb.xml'

  5. features segment

  6. PBrowse

  7. Synteny Browser - SynView Steve Fisher will present it in details later

  8. Track Customization

  9. init_code = sub hover { use HTML::Template; my ($name, $data) = @_; my $tmpl = HTML::Template=>new(filename=>$ENV{ROOT}.'/gbrowse/hover.tmpl'); $tmpl->param(DATA => [ map {{@$_ > 1 ? (KEY=>$_->[0], VALUE => $_->[1]):(SINGLE => $_->[0])}} @$data]); my $str = $tmpl->output; $str =~ s/'/\\'/g; return qq{" onMouseOver="$cmd;return escape('$str')}; } link_target = sub { my $f = shift; my $name = $f->name; my $start = $f->start; my $stop = $f->stop; my ($freq) = $f->get_tag_values('RawCount'); my ($tag) = $f->get_tag_values('Sequence'); my @data; push @data, [ 'Location:' => "$start..$stop" ]; push @data, [ 'Sequence:' => $tag ]; push @data, [ 'Library:' => $lib ]; push @data, [ 'Frequency:' => $freq]; return hover( "Sage Tag - Temp ID $name", \@data); }

  10. Future Works • Performance tuning – SQL, bulksubfeatures, AJAX tooltips • Unification with web inferface WDK • All projects share same gbrowse configuration • Be able to divide the .conf and .xml files into sub files • Be able to include/exclude based on project • Re-using sql and perl across tracks, e.g. duplicate code

More Related