---
title: "Virology & Genomics Bioinformatics Analysis Templates"
subtitle: "Reusable analysis templates for virology and genomics research"
page-layout: full
toc: false
---
```{r}
#| label: setup
#| include: false
library(dplyr)
```
::: {.site-intro}
Working notebook templates used as starting points for common analyses. Each ships with
synthetic example data and a publication-oriented figure style. Adapt by
editing the `## -- USER CONFIGURATION --` block at the top; everything below runs unchanged.
:::
::: {.callout-note}
Developed and maintained by Alejandro Ponce-Flores for virology and genomics bioinformatics
work at UTHSC. Every template on this site is rendered from **synthetic example data generated
by the `data/simulate_data.R` / `data/simulate_data.py` script in its own folder** — no
experimental or study data is included, and no figure or statistic shown here was produced
from a real dataset.
:::
---
::: {.gallery-section-heading}
Infection & Virology
:::
::: {.card-grid}
::: {.template-card .card-virology}
::: {.card-body}
#### 01 — Plaque Assay + Violin Plots
[R]{.badge-r}
Replicate QC (Limits of Agreement), one-way ANOVA, Tukey HSD, and violin plots for plaque assay titres.
[Open Template →](templates/01_plaque-assay-violin/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-virology}
::: {.card-body}
#### 02 — Image Infection + Dose-Response
[R]{.badge-r}
CQ1-style gating, infection thresholding, EC50/CC50 estimation, and dose-response curves.
[Open Template →](templates/02_image-infection-dose-response/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-virology}
::: {.card-body}
#### 03 — Multi-Condition ANOVA
[R]{.badge-r}
Welch ANOVA with planned contrasts and Holm correction across conditions or cell types.
[Open Template →](templates/03_multicondition-anova/template.html){.btn .btn-primary}
:::
:::
:::
::: {.gallery-section-heading}
Immunology
:::
::: {.card-grid}
::: {.template-card .card-immuno}
::: {.card-body}
#### 04 — MagPix / Luminex Multiplex
[R]{.badge-r}
Two-way ANOVA, emmeans contrasts, FDR correction, and cytokine visualization panels.
[Open Template →](templates/04_magpix-luminex/template.html){.btn .btn-primary}
:::
:::
:::
::: {.gallery-section-heading}
Phylogenetics
:::
::: {.card-grid}
::: {.template-card .card-phylo}
::: {.card-body}
#### 05 — Phylo-Geographic Analysis
[R]{.badge-r}
Isolation-by-distance testing, scatter pie maps, and Mantel correlograms for pathogen datasets.
[Open Template →](templates/05_phylo-geographic/template.html){.btn .btn-primary}
:::
:::
:::
::: {.gallery-section-heading}
Genomics & Transcriptomics
:::
::: {.card-grid}
::: {.template-card .card-genomics}
::: {.card-body}
#### 06 — GO Enrichment Analysis
[R]{.badge-r}
GO and KEGG enrichment across comparisons with bubble plots and export tables.
[Open Template →](templates/06_go-enrichment/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 07 — RNA-seq / DESeq2
[R]{.badge-r}
DESeq2 from counts or SummarizedExperiment — volcano, PCA, bubble plots, and heatmaps.
[Open Template →](templates/07_rnaseq-deseq2/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 08 — VCF Mutation Analysis
[Python]{.badge-python}
Mutation-frequency summaries and Shannon entropy heatmaps from per-sample VCF files.
[Open Template →](templates/08_vcf-mutation-analysis/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 09 — WGCNA Co-Expression Analysis
[R]{.badge-r}
Weighted gene co-expression network, soft-thresholding, module–trait heatmap,
eigengene trajectories, hub gene ranking, and gprofiler2 enrichment per module.
[Open Template →](templates/09_wgcna/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 10 — RNA-seq TF/Causal Network
[R]{.badge-r}
DE-table-first TF activity scoring, signed prior-network overlap, cached CARNIVAL-style causal networks,
module network plots, and Cytoscape-ready exports.
[Open Template →](templates/10_rnaseq-tf-causal-network/template.html){.btn .btn-primary}
:::
:::
:::
::: {.gallery-section-heading}
Viral Genomics
:::
::: {.card-grid}
::: {.template-card .card-genomics}
::: {.card-body}
#### 11 — Variant Frequency + Entropy
[Python]{.badge-python}
Variant scatter, Shannon entropy per timepoint, and caller-shared mutation Venn diagrams.
[Open Template →](templates/11_variant-entropy-analysis/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 12 — Coverage Depth
[Python]{.badge-python}
Genome-wide sequencing depth curves with gene annotations and DPI comparisons.
[Open Template →](templates/12_coverage-depth-analysis/template.html){.btn .btn-primary}
:::
:::
::: {.template-card .card-genomics}
::: {.card-body}
#### 13 — Selection Pressure (πN-πS)
[Python]{.badge-python}
Per-gene delta bar plots with Kruskal-Wallis BH FDR stars and DPI panel comparisons.
[Open Template →](templates/13_selection-pressure/template.html){.btn .btn-primary}
:::
:::
:::
::: {.gallery-section-heading}
Haplotype & Population
:::
::: {.card-grid}
::: {.template-card .card-genomics}
::: {.card-body}
#### 14 — Haplotype Composition
[Python]{.badge-python}
Stacked bar charts of intra-host haplotype frequencies by route, DPI, and replicate.
[Open Template →](templates/14_haplotype-composition/template.html){.btn .btn-primary}
:::
:::
:::
---
## Reference Index
::: {.catalog-label}
Searchable list of all templates — same content as the cards above.
:::
```{r}
#| label: gallery-table
#| echo: false
library(DT)
templates <- data.frame(
`#` = c("01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14"),
Template = c(
"<a href='templates/01_plaque-assay-violin/template.html'>Plaque Assay + Violin Plots</a>",
"<a href='templates/02_image-infection-dose-response/template.html'>Image Infection + Dose-Response</a>",
"<a href='templates/03_multicondition-anova/template.html'>Multi-Condition ANOVA</a>",
"<a href='templates/04_magpix-luminex/template.html'>MagPix / Luminex Multiplex</a>",
"<a href='templates/05_phylo-geographic/template.html'>Phylo-Geographic Analysis</a>",
"<a href='templates/06_go-enrichment/template.html'>GO Enrichment Analysis</a>",
"<a href='templates/07_rnaseq-deseq2/template.html'>RNA-seq / DESeq2</a>",
"<a href='templates/08_vcf-mutation-analysis/template.html'>VCF Mutation Analysis</a>",
"<a href='templates/09_wgcna/template.html'>WGCNA Co-Expression Analysis</a>",
"<a href='templates/10_rnaseq-tf-causal-network/template.html'>RNA-seq TF/Causal Network</a>",
"<a href='templates/11_variant-entropy-analysis/template.html'>Variant Frequency + Entropy</a>",
"<a href='templates/12_coverage-depth-analysis/template.html'>Coverage Depth</a>",
"<a href='templates/13_selection-pressure/template.html'>Selection Pressure (piN-piS)</a>",
"<a href='templates/14_haplotype-composition/template.html'>Haplotype Composition</a>"
),
Category = c(
"Infection & Virology", "Infection & Virology", "Infection & Virology",
"Immunology", "Phylogenetics", "Genomics", "Transcriptomics", "Genomics",
"Transcriptomics", "Transcriptomics",
"Viral Genomics", "Viral Genomics", "Viral Genomics", "Haplotype & Population"
),
Language = c("R", "R", "R", "R", "R", "R", "R", "Python", "R", "R", "Python", "Python", "Python", "Python"),
`Key Statistics` = c(
"One-way ANOVA, Tukey HSD",
"4PL dose-response, EC50/CC50",
"Welch ANOVA, Holm correction",
"Two-way ANOVA, emmeans, FDR",
"Mantel test, geographic distance",
"clusterProfiler, GO/KEGG",
"DESeq2, Wald test, FDR",
"Shannon entropy, Kruskal-Wallis",
"Bicor, scale-free topology, module-trait r (FDR)",
"TF activity score, PKN overlap, recurrent causal edges",
"Shannon entropy, allele frequency",
"Coverage depth per position",
"piN-piS, Kruskal-Wallis, BH FDR",
"Haplotype frequency, SNP clustering"
),
`Key Plots` = c(
"Violin + jitter, log10 titer",
"Ridge, density gate, dose-response curve",
"Bar + error, fold-change table",
"Dot, bar, violin, heatmap",
"Scatter pie, Mantel correlogram, map",
"Dot plot, bar, Venn",
"Volcano, PCA, heatmap, bubble",
"Mutation freq bar, entropy heatmap",
"Dendrogram, module-trait heatmap, eigengene trajectories, hub bubble",
"TF volcano, TF heatmap, recurrent-edge graph, module networks",
"Variant scatter, entropy curves, Venn",
"Coverage depth curves, gene annotations",
"Delta bar plots, FDR colormap, stars",
"Stacked bar, route/DPI brackets"
),
check.names = FALSE,
stringsAsFactors = FALSE
)
datatable(
templates,
escape = FALSE,
rownames = FALSE,
options = list(
pageLength = 10,
dom = "ft",
columnDefs = list(list(width = "20%", targets = 1))
)
)
```
---
## Setup
```r
source("install_packages.R") # R templates — run once
```
```bash
conda env create -f environment.yml && conda activate virology-bioinfo # Python templates 08, 11-14
```