NAME - Construct a UCSC genome browser TrackHub


  perl [--out I<PATH>] [--baseurl -I<URL>] [--bigbeds -I<URL#URL>] [--bigwigs -I<URL,URL#URL>]


This script demonstrates the semi-automated construction of UCSC genome browser TrackHubs with Bio::ViennaNGS.

The result of this tutorial can be viewed by navigating your browser here

This tutorial is based on the script and the output from While the option descriptions here are specific for the results from Tutorial02 the can be applied in the same manner to other datasets. The example call uses the bigwig and bedfiles available from our server. Example call: -o /home/user/public_html/hg19_trackHub -u -b


To run this tutorial on your machine you will need a full installation of the Bio::ViennaNGS distribution. Input files can be downloaded here):

For the UCSC genome browser to be able to visualize our trackhub it needs to be accessible via URL. This is the base URL you need to provide as commandline argument.


The resulting trackhub can only be read by the UCSC genome browser if it is accessible via URL. If you have no webspace for testing available you can use example output available from our webserver here.


Create UCSC Genome Browser Trackhub

  print "Constructing UCSC genome browser trackhub ...\n";
  $track_hub_return_value = make_track_hub($genome_identifier,$dest,$base_URL,$big_bed_urls,$big_wig_urls,$lf);
  print "Loading the trackhub into the UCSC genome browser...\n\n";
  print "1. Point your browser to:\n\n";
  print "2. Select Genome Browser from the left menu\n\n";
  print "3. You are now redirected to nearest mirror of the genome browser.\n    Select \"My Data\" from the top menu and then \"Track Hubs\" in the popup list.\n\n";
  print "4. The \"Track Data Hubs\" page is displayed. In the register \"My Hubs\" it is possible to add the newly created track hub. Paste the URL to hub.txt into the URL field and click \"Add Hub\" (e.g.\n\n";
  print "5. The track hub now loads into the hg19 public hub. \n\n";
  print "6. Enter e.g. chr15 in the position field and hit go\n\n";
  print "7. You should now see 2 annotation tracks and a bigwig multi-track plotted in red and green\n\n";
  print "DONE\n";



--out -o

Destination folder for the output Track Hub.

--baseurl -u

BaseURL used within the Track Hub. This URL will be included verbatim in the resulting Track Hub. It is crucial that this URl is valid, else the resulting Track Hub will be broken.

--bigbeds -b

URLs pointing to big bed files to be included in the trackhub. Multiple URLs are separated by the character #.

--bigwigs -w

URLs pointing to big wig files to be included in the trackhub. Multiple URLs are separated by the character #. It is possible to create a multiwig container by providing 2 URLs instead of one separated by comma character ,. E.g., yields a multi big wig container displaying bar as positive reads in green and bar2 as negative 3 red colored reads in the same track and additionally bar3 in an own track colored blue.

--help -h

Print short help


Prints the manual page and exits


Florian Eggenhofer <>

1 POD Error

The following errors were encountered while parsing the POD:

Around line 176:

You forgot a '=back' before '=head1'