You can use IGV to automatically & programmatically load genomic datasets and take snapshots of regions of interest. This is very handy and helps you avoid taking many screenshots manually. Manual page here: http://software.broadinstitute.org/software/igv/batch These commands are also available: http://software.broadinstitute.org/software/igv/PortCommands Download here: http://software.broadinstitute.org/software/igv/download After installing IGV, a specially-formatted IGV batch script can be used to automate the program. Format your script like this: (save this as `IGV_test.bat`): ``` new snapshotDirectory /path/to/snapshot_dir load /path/to/sample1.bam load /path/to/sample2.bam genome hg19 maxPanelHeight 400 goto chr11:108138003-108138003 snapshot custom_chr11-108138003-108138003.png goto chr9:21971111-21971111 snapshot custom_chr9-21971111-21971111.png exit ``` You can run the script from the terminal like this: ``` bin/IGV_2.3.81/igv.sh -b code/IGV_test.bat ``` Upon running the script, a window to appear and you should see the tracks load and the regions appear on screen as snapshots are taken. If you are running IGV from a headless server (accessing the server via `ssh`), then this will require X11 to be running on the server and installed on your local computer (use XQuartz for OS X). Remember to enable X11 in your terminal by adding `-Y` to your `ssh` command, like so: ``` ssh username@server.edu -Y ``` For scripting purposes, you can run the X11 virtualizer to avoid the requirement for an active X11 window when you call IGV. Use this command: ``` (Xvfb :10 &) && DISPLAY=:10 java -Xmx750m -jar bin/IGV_2.3.81/igv.jar -b code/IGV_test.bat && killall Xvfb ``` Note that you can run an IGV batch script from within IGV itself as well. This allows you to load your tracks and apply manual customization, then iterate through a series of regions and take snapshots. Just omit the portions of the script that start and new session & adjust visual parameters. If you've already loaded your tracks, all your script needs is this: ``` snapshotDirectory /path/to/snapshot_dir goto chr11:108138003-108138003 snapshot custom_chr11-108138003-108138003.png goto chr9:21971111-21971111 snapshot custom_chr9-21971111-21971111.png ``` Example output: ![chr3_185850354-185872709](https://cloud.githubusercontent.com/assets/10505524/19937792/013ef1d8-a0f9-11e6-8b17-289de9706c1d.png)