16.3 Feature Footprinting

In addition to footprinting motifs, ArchR enables footprinting of any user-defined feature set. To illustrate this capability, we will use the plotFootprints() function to create a TSS insertion profile (introduced previously during the section on data quality control). A TSS insertion profile is just a specialized sub-case of footprinting.

As discussed in the previous section, footprinting is performed using group coverage files which are derived from pseudo-bulk replicates. We originally created these in a previous chapter to perform peak calling. If you haven’t already added group coverages to your ArchRProject, lets do that now.

if(is.null(projHeme5@projectMetadata$GroupCoverages$Clusters2)){
  projHeme5 <- addGroupCoverages(ArchRProj = projHeme5, groupBy = "Clusters2")
}

We create TSS insertion profiles without normalization for Tn5 bias. The main difference from our previous analyses is that we specify flank = 2000 to extend these footprints 2000 bp on either side of each TSS.

seTSS <- getFootprints(
  ArchRProj = projHeme5, 
  positions = GRangesList(TSS = getTSS(projHeme5)), 
  groupBy = "Clusters2",
  flank = 2000
)
## ArchR logging to : ArchRLogs/ArchR-getFootprints-91f663143-Date-2025-02-06_Time-02-41-05.083804.log
## If there is an issue, please report to github with logFile!
## 2025-02-06 02:41:05.603735 : Computing Kmer Bias Table, 0.009 mins elapsed.
## 2025-02-06 02:41:18.234618 : Finished Computing Kmer Tables, 0.21 mins elapsed.
## 2025-02-06 02:41:18.23562 : Computing Footprints, 0.219 mins elapsed.
## 2025-02-06 02:41:37.331191 : Computing Footprints Bias, 0.537 mins elapsed.
## 2025-02-06 02:41:53.403908 : Summarizing Footprints, 0.805 mins elapsed.

We can then plot the TSS insertion profiles for each cell group using plotFootprints().

plotFootprints(
  seFoot = seTSS,
  ArchRProj = projHeme5, 
  normMethod = "None",
  plotName = "TSS-No-Normalization",
  addDOC = FALSE,
  flank = 2000,
  flankNorm = 100
)
## ArchR logging to : ArchRLogs/ArchR-plotFootprints-92fa2b418-Date-2025-02-06_Time-02-41-56.734039.log
## If there is an issue, please report to github with logFile!
## 2025-02-06 02:41:56.918339 : Plotting Footprint : TSS (1 of 1), 0.003 mins elapsed.
## Normalizing by flanking regions
## NormMethod = None
## ArchR logging successful to : ArchRLogs/ArchR-plotFootprints-92fa2b418-Date-2025-02-06_Time-02-41-56.734039.log