VIRUS-MVP: using Dash and Plotly to visualize viral mutations by lineage
2024-07-12 , Main Hall B

During the COVID-19 pandemic, public health researchers have tracked viral genomic mutations to better understand changes in disease severity and transmissibility. The mutation data is often inside large textual files, generated by bioinformatics workflows. Our team developed one such workflow in Python: nf-ncov-voc, which outputs large tabular datasets describing mutation frequencies and locations. To aid researchers in processing and analyzing the datasets, we also developed VIRUS-MVP: a web application that visually summarizes multiple nf-ncov-voc datasets in a single heatmap.

Visually analyzing aggregated mutation data through VIRUS-MVP helps identify links between multiple mutations and distinct virus lineages, including lineages labeled as “variants of concern”. VIRUS-MVP has several interactive features to expedite these analyses, including the ability to jump across genes, search for mutations by name, and toggle mutations by frequency. VIRUS-MVP also annotates mutations with known functions impacting disease severity or transmissibility.

We developed VIRUS-MVP using the Python libraries Plotly and Dash. We selected these libraries to streamline development efforts, as Plotly is a graphing library that draws interactive graphs with minimal code, and Dash is a web framework designed to serve Plotly graphs on a front-end interface. VIRUS-MVP and nf-ncov-voc are both virus-agnostic, but our initial priority was visualizing SARS-CoV-2 data. We deployed this prioritized instance as COVID-MVP at https://virusmvp.org/covid-mvp/, where the application is used by researchers from CoVaRR-Net. We are currently developing instances to also track Mpox and Influenza viruses.


Expected audience expertise

Intermediate

Software developer for the Centre for Infectious Disease Genomics and One Health, located at Simon Fraser University in Vancouver, Canada. I develop applications for public health research.

Attended the University of British Columbia. MSc in Bioinformatics, BSc in Computer Science, and BSc in Animal Biology.