Hi-C
Hi-C shows how the genome folds in the nucleus. Cells are fixed, their DNA cut and the ends that lay close together joined, so every read pair is two places that touched. Counted between all places at once, those contacts are a map, and the map shows three layers of folding: the A/B compartments (active and inactive chromatin keeping apart), domains (stretches that touch within themselves more than across their edges) and loops (two places held together, often by cohesin and CTCF). Micro-C, Omni-C, in situ Hi-C, DNase Hi-C and Hi-C 3.0 give the same kind of map and are analysed the same way.
What you upload
One contact map per sample, in whatever form your pipeline left it: an .mcool or
.cool file (cooler, distiller, the 4DN portal), a .hic file (Juicer, hictk), a
.pairs file (pairtools, distiller) or Juicer's merged_nodups.txt, or HiC-Pro's
<sample>_<resolution>.matrix beside its _abs.bed (or its allValidPairs). Samples may come in different
forms, as long as they are on one genome assembly. Optionally, add a BED of sites (CTCF peaks,
promoters) or a BEDPE of loops to pile the maps up around, and a GTF of the genes when the genome
is not human or mouse.
baSeq does not yet process raw FASTQ for Hi-C: align and pair the reads with distiller, Juicer or HiC-Pro first.
Balancing
Some parts of the genome are easier for Hi-C to see than others (cut sites, GC content, mappability), which makes their rows of the map larger for reasons that have nothing to do with folding. Every analysis reads balanced maps: one weight per bin so every bin's row sums to the same value (ICE, as cooler computes it). Weights that come with your files are kept: an .mcool's own, or a .hic file's SCALE or KR normalisation. Bins with too few contacts are left out and show as grey.
Resolution
Every step offers a resolution. Auto picks the usual one for what the step does: 100 kb for compartments, 10 kb for domains and loops, about 400 bins across a region for a map. How fine a library can go depends on its depth: Library Quality reports its map resolution, the finest bin size at which 80% of bins hold 1,000 contacts (Rao et al. 2014). On Auto, steps that read single pixels (loops, a viewpoint's contacts, the maps drawn) go no finer than half of it; steps that pool many pixels (contact decay, insulation, pileups) do not need to hold back.
Reading the results
Compartments. E1 above zero is the A compartment (active, gene-rich, GC-rich), below zero B. The saddle plot shows how strongly the two keep apart; a strength of 1 means not at all, and most cell types sit between 2 and 4. Removing cohesin raises it, because loop extrusion mixes the compartments.
Domains. The insulation score dips at domain boundaries. A boundary that holds at all three window sizes is a robust one.
Loops. The APA score of a set of loops is their centre over the corner nearest the diagonal: 1 is no loop, above 2 is usual. Differential Loops normalises by the contacts at the loops' distances by default, so a treatment that weakens every loop (cohesin loss) shows as that, instead of being scaled away.
Contact decay. P(s) falls off with distance. Its slope is about -1 between 100 kb and a few Mb in interphase; a bump in the slope between 50 and 500 kb is loop extrusion, and where the bump peaks estimates the size of the extruded loops.
Translocations. Between Chromosomes lists places where two chromosomes look joined: contacts far above the pair's usual level at a point, and raised across a quadrant beside it, the way contacts fall off from a breakpoint. These are candidates to look at on the map, not calls.
How the methods were checked
Each method is the published one as its reference implementation computes it: balancing as cooler, the expected contact, compartments, saddles, insulation, loops (HiCCUPS) and pileups as cooltools, replicate similarity as hicrep. baSeq's own code was compared with those implementations on public Micro-C data (Hsieh et al. 2022; Krietenstein et al. 2020) and gives the same numbers: the same weights, eigenvectors and boundaries, the same 2,886 and 745 loops. A test holds every method to the numbers the reference implementations give on a small map kept with the tests. On cells with and without cohesin it reproduces what the papers report: compartments strengthen, loops and the extrusion bump in the decay disappear, and the loops left weaken most where they are longest.
What Hi-C does not tell you
A contact map is an average over millions of cells: a loop seen in the map may be present in a few percent of them at any moment. Contacts say two places were close enough to ligate, not why. And a balanced map hides copy number by design: a gained chromosome shows in Library Quality's coverage by chromosome, not in the maps.
Step reference
| Step | Stage | What it does | You get | Key inputs |
|---|---|---|---|---|
| Data Upload | Setup | Reads one contact map per sample: an .mcool or .cool file (cooler, distiller, 4DN), a .hic file (Juicer, hictk), a .pairs file (pairtools) or Juicer's merged_nodups, or HiC-Pro's matrix with its bins. Writes each sample's maps at every resolution from 5 kb to 2.5 Mb the samples share, balances them, and measures each library. | Each library's contacts (within and between chromosomes, near and far), its contact decay, and its first chromosome's map. | None. A BED of sites and a BEDPE of loops are taken if uploaded, for Aggregate Maps. |
| Library Quality | QC | Where each library's contacts fall (between chromosomes, and within one by distance), its map resolution, its contact decay and that decay's slope, and each chromosome's coverage against its share of the genome. | Each measure library by library, the contact decay and its slope, and the coverage by chromosome. | Group by. |
| Replicate Similarity | QC | Scores every pair of samples with HiCRep's stratum-adjusted correlation (SCC), chromosome by chromosome, and places the samples by how alike they are. | The SCC of every pair, the samples on a plane, and each pair's SCC by chromosome. | Group by, resolution, chromosomes. |
| Contact Maps | Analysis | Draws a region (coordinates, or a gene with 1.5 Mb either side) for each condition or sample: balanced contacts, observed over expected, or each condition's difference from the first. | The maps as triangles along the diagonal with compartment and insulation tracks and loops circled, or as squares. | Region, values, view, show, group by, resolution, samples. |
| Contact Decay | Analysis | Each sample's and condition's contact probability against distance, P(s), and its slope, with the loop size the slope's peak implies. | P(s), its slope with the loop-extrusion range shaded, each condition over the first, and each sample's slope. | Group by, resolution, chromosomes, samples. |
| Compartments | Analysis | Each sample's A/B compartment eigenvector, per chromosome arm, oriented by GC content; saved for the steps after it. | One chromosome's compartments for each condition, each sample's share in A, how closely E1 follows GC, and how alike the samples' compartments are. | Group by, resolution, chromosome to draw, chromosomes, samples. |
| Saddle Plots | Analysis | Sorts bins by their eigenvector and averages the contacts between every pair of groups; the compartment strength is (AA + BB) / (AB + BA). | Each condition's saddle with its strength, each sample's strength, and the AA, BB and AB corners. | Group by, resolution, chromosomes, samples. |
| Domains and Boundaries | Analysis | Each sample's insulation score at three windows and its domain boundaries, counted and compared sample by sample (so a condition with more replicates is not favoured); saved for the steps after it. | Boundaries per sample, their strength, domain sizes, the share of one sample's boundaries another's has, and a region's maps with the insulation and boundaries under them. | Group by, resolution, insulation window, region, chromosomes, samples. |
| Loops | Analysis | Calls each sample's loops as HiCCUPS does, merges the calls into one list with the samples that found each loop, and scores every sample on that same list (APA), so the scores compare. Saved for the steps after it. | Loops per sample, their APA scores, loop lengths, the loops each condition shares, and each sample's loops piled up. | Group by, resolution, false discovery rate, farthest loop, chromosomes, samples. |
| Aggregate Maps | Analysis | Piles each condition's observed over expected map up around the loops called, the boundaries, or the sites or loops uploaded, and scores them. | Each condition's pileup, each one's change from the first, and each sample's score. | Pile up around, group by, resolution, window, chromosomes, samples. |
| Viewpoint Contacts | Analysis | A virtual 4C: the contacts of one gene or position with everything within the span, and its strongest partners over what distance predicts. | Each condition's contacts from the viewpoint and each one's change from the first. | Viewpoint, span, values, group by, resolution, samples. |
| Compartment Changes | Analysis | Compares two conditions' compartments bin by bin: switches from A to B and back (consistent in every replicate), and with replicates significant shifts (a moderated t-test, as limma's), with the genes in them. | Each bin's E1 in one condition against the other, switches by chromosome, and one chromosome's change. | Parameter to compare and its two values, resolution, chromosome to draw, chromosomes. |
| Differential Loops | Analysis | Tests every loop's contacts between two conditions with DESeq2, normalised by the contacts at the loops' distances (or by median of ratios). | Volcano and MA plots, the change by loop length, and the loops that strengthen and weaken piled up. | Parameter to compare and its two values, normalisation, adjusted p-value cutoff. |
| Structural Changes | Analysis | Scans the genome in sliding windows for where the folding itself differs most between two conditions (CHESS's structural similarity of observed over expected maps). | The z-score along each chromosome and the most changed regions' observed over expected maps side by side with their difference. | Parameter to compare and its two values, window, resolution, chromosomes. |
| Between Chromosomes | Analysis | How much each pair of chromosomes touches, its change between conditions, and places where two chromosomes look joined (translocation candidates). | Each condition's chromosome pairs, their change, and the candidates' maps. | Group by, candidate threshold, resolution, samples. |