Skip to content
bio-data-visualization-genome-browser-tracks logo

Genome Browser Tracks

bio-data-visualization-genome-browser-tracks

Generate genome browser visualizations using pyGenomeTracks or IGV batch scripting for publication figures. Use when creating publication figures of genomic regions with multiple data tracks.

SKILL.md

Full skill instructions

Genome Browser Tracks

pyGenomeTracks INI Configuration

[x-axis]
where = top

[bigwig_coverage]
file = sample.bw
title = Coverage
height = 3
color = #4DBBD5
min_value = 0
max_value = auto

[spacer]
height = 0.5

[peaks]
file = peaks.bed
title = Peaks
color = #E64B35
height = 1
display = collapsed

[genes]
file = genes.gtf
title = Genes
height = 5
fontsize = 10
style = UCSC
color = navy

pyGenomeTracks Command

# Generate track plot
pyGenomeTracks --tracks tracks.ini --region chr1:1000000-2000000 \
    --outFileName region.png --dpi 300

# Multiple regions
for region in chr1:1000000-2000000 chr2:5000000-6000000; do
    pyGenomeTracks --tracks tracks.ini --region $region \
        --outFileName "${region//:/​_}.png" --dpi 300
done

pyGenomeTracks Python API

import pygenometracks.tracks as pygtk
from pygenometracks import plotTracks

# Programmatic track configuration
tracks = '''
[x-axis]
where = top

[bigwig]
file = coverage.bw
title = ChIP-seq
height = 4
color = #4DBBD5

[bed]
file = peaks.narrowPeak
title = Peaks
height = 1
color = #E64B35
'''

# Write config and plot
with open('tracks.ini', 'w') as f:
    f.write(tracks)

# Using command line via subprocess
import subprocess
subprocess.run([
    'pyGenomeTracks',
    '--tracks', 'tracks.ini',
    '--region', 'chr1:1000000-2000000',
    '--outFileName', 'output.png',
    '--dpi', '300'
])

Track Types

bigWig Coverage

[bigwig]
file = signal.bw
title = Coverage
height = 4
color = #4DBBD5
min_value = 0
max_value = auto
number_of_bins = 700
nans_to_zeros = true
summary_method = mean
# overlay_previous = share-y  # For overlaying multiple tracks

BED/​narrowPeak

[bed]
file = peaks.narrowPeak
title = Peaks
height = 2
color = #E64B35
display = collapsed  # or stacked, interleaved, triangles
labels = false
# file_type = bed  # auto-detected usually

[bed_links]
file = interactions.bedpe
title = Loops
height = 3
file_type = links
links_type = arcs
color = purple
line_width = 1

Gene Annotations

[genes]
file = genes.gtf
title = Genes
height = 6
fontsize = 10
style = UCSC  # or flybase
prefered_name = gene_name
merge_transcripts = false
color = navy
border_color = black
# arrow_interval = 2  # Arrow frequency

[genes_bed12]
file = genes.bed12
title = Transcripts
height = 5
fontsize = 8
color = darkblue

Hi-C Matrix

[hic_matrix]
file = matrix.cool
title = Hi-C
height = 10
depth = 1000000
min_value = 0
max_value = 100
transform = log1p
colormap = RdYlBu_r
show_masked_bins = false

IGV Batch Scripting

# Create batch script
cat > igv_batch.txt << 'EOF'
new
genome hg38
load sample1.bam
load peaks.bed
snapshotDirectory ./​snapshots
goto chr1:1000000-2000000
snapshot region1.png
goto chr2:5000000-6000000
snapshot region2.png
exit
EOF

# Run IGV in batch mode
igv -b igv_batch.txt

IGV Batch Commands

# Common IGV batch commands
new                          # New session
genome hg38                  # Load genome
load file.bam               # Load track
snapshotDirectory ./​out     # Set output dir
goto chr1:1000000-2000000   # Navigate to region
sort base                   # Sort reads
collapse                    # Collapse tracks
expand                      # Expand tracks
squish                      # Squish display
maxPanelHeight 500          # Set panel height
snapshot file.png           # Take screenshot
exit                        # Exit IGV

Gviz (R)

library(Gviz)
library(GenomicRanges)

# Axis track
axTrack <- GenomeAxisTrack()

# Gene track from TxDb
library(TxDb.Hsapiens.UCSC.hg38.knownGene)
txdb <- TxDb.Hsapiens.UCSC.hg38.knownGene
grTrack <- GeneRegionTrack(txdb, chromosome = 'chr1', name = 'Genes')

# Data track from BigWig
dTrack <- DataTrack(range = 'coverage.bw', type = 'h',
                    chromosome = 'chr1', name = 'Coverage',
                    col = '#4DBBD5')

# Annotation track from BED
aTrack <- AnnotationTrack(range = 'peaks.bed', name = 'Peaks',
                          chromosome = 'chr1', fill = '#E64B35')

# Plot tracks
plotTracks(list(axTrack, dTrack, aTrack, grTrack),
           from = 1000000, to = 2000000,
           chromosome = 'chr1')

# Save to PDF
pdf('tracks.pdf', width = 10, height = 6)
plotTracks(list(axTrack, dTrack, aTrack, grTrack),
           from = 1000000, to = 2000000)
dev.off()

Multi-Sample Comparison

# tracks.ini for multiple samples
[x-axis]

[sample1_bw]
file = sample1.bw
title = Sample 1
height = 3
color = #4DBBD5
min_value = 0
max_value = 100

[sample2_bw]
file = sample2.bw
title = Sample 2
height = 3
color = #E64B35
min_value = 0
max_value = 100
overlay_previous = share-y

[spacer]
height = 0.3

[sample1_peaks]
file = sample1_peaks.bed
title = S1 Peaks
height = 1
color = #4DBBD5

[sample2_peaks]
file = sample2_peaks.bed
title = S2 Peaks
height = 1
color = #E64B35

Publication Export

# High resolution PNG
pyGenomeTracks --tracks tracks.ini --region chr1:1-1000000 \
    --outFileName figure.png --dpi 300 --width 40

# PDF for vector graphics
pyGenomeTracks --tracks tracks.ini --region chr1:1-1000000 \
    --outFileName figure.pdf --width 40

# SVG for editing
pyGenomeTracks --tracks tracks.ini --region chr1:1-1000000 \
    --outFileName figure.svg --width 40

Related Skills

  • alignment-files/​bam-statistics - Input BAM processing
  • chip-seq/​peak-calling - Peak files for tracks
  • hi-c-analysis/​matrix-operations - Hi-C visualization
  • data-visualization/​multipanel-figures - Combining track figures

More skills from majiayu000

xiaohongshu logo
majiayu000/claude-arsenal

xiaohongshu

xiaohongshu

286 148
View
agent-task-conductor logo
majiayu000/claude-skill-registry

agent-task-conductor

Conduct multi-agent task orchestration and workflow coordination.

663 1
View
conductor-setup logo
majiayu000/claude-skill-registry

conductor-setup

Initialize project with Conductor artifacts (product definition,

663 1
View
animation-designer logo
majiayu000/claude-skill-registry

animation-designer

Expert in web animations, transitions, and motion design using Framer Motion and CSS

663 1
View
diagramming logo
majiayu000/claude-skill-registry

diagramming

Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...

663 1
View
h3-pg logo
majiayu000/claude-skill-registry-data

h3-pg

PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.

23 1
View
conductor-development logo
majiayu000/claude-skill-registry

conductor-development

Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...

663 1
View
conductor-status logo
majiayu000/claude-skill-registry

conductor-status

Display project status, active tracks, and next actions

663 1
View
dockerization logo
majiayu000/claude-skill-registry

dockerization

Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.

663 1
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View