Skip to content

html_tables

Carolina MonzΓ³ edited this page Feb 4, 2026 · 4 revisions

Interactive HTML Tables

Explore your data offline with interactive, filterable HTML reports - no UCSC account needed!


πŸ’‘ What Are HTML Tables?

When you use the --tables flag, SQANTI-browser generates beautiful, interactive HTML reports that let you explore your classification data in any web browser.

python -m sqanti_browser \
    --gtf corrected.gtf \
    --classification classification.txt \
    --output my_hub \
    --genome hg38 \
    --tables  ✨

Output: Self-contained HTML files in output_dir/table_reports/ πŸ“

No installation, no login, no internet needed! Just open in your browser and start exploring! πŸš€


πŸ“‚ What's Included

A Complete Table and One Table Per Category

Besides a file for the whole transcriptome, each structural category gets its own interactive HTML file:

table_reports/
β”œβ”€β”€ πŸ”΅ full-splice_match_isoforms.html
β”œβ”€β”€ 🟠 incomplete-splice_match_isoforms.html
β”œβ”€β”€ 🟒 novel_in_catalog_isoforms.html
β”œβ”€β”€ πŸ”΄ novel_not_in_catalog_isoforms.html
β”œβ”€β”€ ⚫ genic_isoforms.html
β”œβ”€β”€ πŸ”· antisense_isoforms.html
β”œβ”€β”€ 🟑 fusion_isoforms.html
β”œβ”€β”€ 🟀 intergenic_isoforms.html
└── πŸ”Ά genic_intron_isoforms.html
└── 😎 complete_transcriptome_isoforms.html

Each file: All isoforms of that category + all 50+ classification metrics


✨ 5 Powerful Features

1. 🎯 Interactive Filtering

Dropdown filters for categorical data:

  • πŸ“Š structural_category
  • 🧬 coding status
  • πŸ“‘ subcategory
  • βœ… predicted_NMD
  • 🏷️ FSM_class
  • πŸ”„ RTS_stage
  • πŸ“ within_CAGE_peak
  • 🎯 polyA_motif_found

Range filtering for numeric data:

  • πŸ“ length, exons
  • πŸ“ˆ iso_exp, gene_exp, FL
  • πŸ“ diff_to_TSS, diff_to_TTS
  • 🎯 dist_to_CAGE_peak, dist_to_polyA_site

2. πŸ”„ Sortable Columns

Click any column header:

  • πŸ‘† First click: Sort ascending ↑
  • πŸ‘† Second click: Sort descending ↓
  • Works on all columns!

3. πŸ” Free Text Search

Global search box filters:

  • Find genes: BRCA1 🧬
  • Find isoforms: PB.1234.1 πŸ”¬
  • Find anything: Works across all data! ⚑

4. πŸ’Ύ Export to CSV

Download your filtered results:

  1. πŸŽ›οΈ Apply your filters
  2. πŸ–±οΈ Click "Export to CSV"
  3. πŸ’Ύ Download only visible rows
  4. πŸ“Š Open in Excel/R/Python

Perfect for downstream analysis! πŸ”¬

5. πŸŽͺ Generate Trix String

Magic button that creates UCSC search strings!

🎨 Filter-based mode:

  1. Set dropdown filters (e.g., coding + high expression)
  2. Click "Generate Trix String"
  3. Copy the string
  4. Paste into UCSC β†’ Boom! All matching isoforms appear πŸŽ†

🎯 Row-based mode:

  1. Click any isoform row (turns blue πŸ’™)
  2. Click "Generate Trix String"
  3. Copy the string
  4. Paste into UCSC β†’ Jump directly to that isoform! 🎯

image image

🎯 Real-World Use Cases

πŸ“„ Publication Data Sharing

Share with collaborators who don't have UCSC accounts:

  • Self-contained (just send the HTML file!)
  • Works in any browser
  • No installation needed
  • Can export filtered subsets to CSV

πŸ”¬ Quick Data Exploration

Browse offline, on your laptop, anywhere:

  • Fast filtering (no internet lag)
  • Sort by any metric
  • Search for specific genes
  • Discover interesting patterns

πŸ›‘οΈ Quality Control

Sanity-check your data before visualization:

  • Count isoforms per category
  • Check expression distributions
  • Find potential issues (low coverage, missing polyA)
  • Identify specific isoforms for follow-up

πŸ“š Supplementary Materials

Perfect for paper supplements:

  • Interactive
  • Self-contained
  • Filterable and sortable
  • Exportable for reanalysis

πŸš€ Example Workflows

πŸ† Find High-Confidence Novel Isoforms

  1. Open novel_in_catalog_isoforms.html
  2. Set filters:
    • coding: coding
    • FL: > 10 (10:)
    • within_CAGE_peak: True
  3. Click "Export to CSV"
  4. πŸŽ‰ Result: Novel coding isoforms with solid evidence!

✨ Generate UCSC Search for Validated FSM

  1. Open full-splice_match_isoforms.html
  2. Set filters:
    • within_CAGE_peak: True
    • polyA_motif_found: True
  3. Click "Generate Trix String"
  4. Copy the generated string
  5. Paste into UCSC search box
  6. πŸŽ† Boom! All validated FSM isoforms appear in the browser!

πŸ‘€ Find NMD Candidates

  1. Open any category table
  2. Set filters:
    • predicted_NMD: True ⚠️
    • coding: coding
  3. Sort by iso_exp (click header, descending)
  4. Identify top expressed NMD targets
  5. Click row β†’ "Generate Trix String" β†’ View in UCSC!

πŸ”§ Technical Details

πŸ“‹ All Columns Included

Tables include 50+ metrics from your classification file:

  • Isoform ID
  • structural_category
  • associated_gene, associated_transcript
  • coding status
  • length, exons
  • Expression: iso_exp, gene_exp, FL
  • Reference distances: diff_to_TSS, diff_to_TTS
  • Validation: within_CAGE_peak, dist_to_CAGE_peak
  • ORF info: ORF_length, CDS_length
  • And much more! πŸŽ‰

⚠️ Exception: ORF_seq excluded by default (too huge!). Use python src/filter_isoforms.py --include-sequences if you really need it.

🌐 Browser Compatibility

Works everywhere:

  • βœ… Chrome/Chromium
  • βœ… Firefox
  • βœ… Safari
  • βœ… Edge

Zero installation! Pure HTML + JavaScript magic ✨

πŸ“¦ File Sizes

Dataset Size File Size Load Time
Small (~1K) 100-500KB Instant ⚑
Medium (~10K) 1-5MB Fast πŸš€
Large (~100K) 10-50MB Slower 🐒

πŸ’‘ Tip: Even large files work, they just take a few seconds to load!


πŸŽ“ Advanced: Standalone Generation

Generate HTML tables without creating a UCSC hub:

python src/filter_isoforms.py \
    --classification classification.txt \
    --output-dir reports

Use case: Just want shareable HTML tables, don't need UCSC visualization πŸ“Š

With ORF sequences:

python src/filter_isoforms.py \
    --classification classification.txt \
    --output-dir reports \
    --include-sequences

⚠️ Warning: ORF sequences make files MUCH larger!


πŸ’‘ Pro Tips

Tip Why
Always use --tables Incredibly useful for data exploration!
Start with category tables Pre-filtered to what you care about
Use Trix String generator Jump to specific isoforms in UCSC instantly!
Export filtered subsets Create custom lists for analysis
Share with collaborators No UCSC account? No problem!
Works on tablets/phones Explore your data anywhere!

⚠️ Limitations

What It Can't Do Use This Instead
Show genome context UCSC track hub 🌐
Live filtering with genome UCSC browser filters πŸ”
Handle range filters in Trix Manual copy-paste πŸ“‹
Load 100MB+ files quickly Split by category or filter before export πŸ”ͺ

Bottom line: HTML tables = amazing for data exploration. UCSC hub = amazing for genome visualization. Use both! πŸŽ‰


πŸ“š See Also


Clone this wiki locally