NEWS.md
New functionality:
BigwigTrack()
function to plot data from bigWig filesbigwig
and bigwig.type
arguments to CoveragePlot()
to include bigWig files in CoveragePlot()
region.highlight
parameter to CoveragePlot()
biotypes
parameter to GeneActivity()
and GetTSSPositions()
functionsmax.width
parameter to GeneActivity()
min.distance
parameter to LinkPeaks()
(#561)Bug fixes:
standard.chromosomes
parameter in GetGRangesFromEnsDb()
(#513)group.by
parameter in PlotFootprint()
(#522)GeneActivity()
to be incorrect (#521)FindMotifs()
(#549)CountsInRegion()
(#563)Other changes:
TSSEnrichment()
(#485)ChromatinAssay
-specific functions on non-ChromatinAssay
assaysn
in NucleosomeSignal()
TSSEnrichment()
when fast=TRUE
LinkPeaks()
(#550)LinkPeaks()
(#550)biovizBase
and Biostrings
to suggested packagesggbio
dependencyAnnotationPlot()
New functionality:
group.by
parameter to PeakPlot()
to allow coloring plotted genomic ranges by metadata variables.peaks.group.by
and ranges.group.by
parameters to CoveragePlot()
to allow coloring plotted genomic ranges in CoveragePlot()
to be colored by metadata variables.Bug fixes:
assay
parameter in CoveragePlot()
CreateChromatinAssay()
(#387)CreateChromatinAssay()
when setting both min.cells
and min.features
arguments (#390)PlotFootprint()
when only one cell in an identity class (#406)Other changes:
SeuratObject
dependencyNew functionality:
CallPeaks()
function to call peaks using MACS2. Peaks can be called for different groups of cells separately by setting the group.by
parameterLinkPeaks()
function to link peaks to correlated genes.AddMotifs()
function to add motif information to a Seurat object or ChromatinAssay.AggregateTiles()
function to combine adjacent genome tilesranges
parameter to CoveragePlot()
to plot addition sets of genomic rangesshow.bulk
parameter to CoveragePlot()
to plot accessibility of all cells combinedFragment
objects and modify the file path for existing fragment objects (#206)Bug fixes:
AlleleFreq()
(#196 and #260)FeatureMatrix()
(#205, #291)CreateChromatinAssay()
when setting min.features
argument (#194)CreateChromatinAssay()
when setting min.cells
argument (#292)TSSEnrichment()
when cell information not set for fragment files (#203)TSSEnrichment()
when no fragments present in TSS region (#244)qvalue
calculation from FindMotifs()
(#223)SetAssayData()
when setting the scale.data
slotOther changes:
MatchRegionStats()
function when matching distribution of multiple features (eg, GC content and overall accessibility)MatchRegionStats()
This release includes major updates to the Signac package, including new functionality, performance improvements, and new data structures.
The entire package has been updated to use the new ChromatinAssay
class for the storage of single-cell chromatin data. This is an extension of the standard Seurat Assay
that adds additional slots needed for the analysis of chromatin data, including genomic ranges, genome information, fragment file information, motifs, gene annotations, and genomic links.
In addition, we have defined a new Fragment
class to store information relating to a fragment file. This makes use of the fragment files within Signac more robust, as checks are now performed to verify that the expected cells are present in the fragment file, and that the fragment file or index are not modified on disk.
Key new functionality:
http
or ftp
.Footprint()
and PlotFootprint()
functions for TF footprinting analysis.granges()
, findOverlaps()
, seqinfo()
, and other Bioconductor generic functions directly on the ChromatinAssay
or Seurat
object.CoveragePlot()
function.CoverageBrowser()
function.Other changes:
NucleosomeSignal()
: we have greatly improved the scalability of NucleosomeSignal()
, and fixed a bug present in previous versions. The score computed by NucleosomeSignal()
in 1.0.0 will be different to that computed by previous versions of Signac.CountFragments()
function: a fast, memory-efficient function implemented in C++ that counts the total number of fragments for each cell barcode present in a fragment file.fast
option in the TSSEnrichment()
function. Setting this to TRUE
will compute the TSS enrichment score per cell without storing the entire cell by TSS position matrix. This can significantly reduce memory requirements for large datasets, but does not allow subsequent plotting of the TSS signal for different groups of cells.TilePlot()
function and tile
parameter for CoveragePlot()
to plot Tn5 integration events in a genomic region for individual cells.FeatureMatrix()
, CoveragePlot()
, and TSSEnrichment()
blacklist_hg38_unified
object.FRiP()
function to use total fragment counts per cell stored in object metadata.DepthCor
function to compute the correlation between sequencing depth and reduced dimension components.RunTFIDF
.ClosestFeatures
and CoveragePlot
. Use GRanges instead.ucsc
parameter from CoveragePlot
.nchunk
was greater than the number of features used.CoveragePlot
that would prevent plotting multiple regions when using GRanges
.CoveragePlot
that would prevent plotting when a different assay was active.SubsetMatrix
function to subset a matrix based on number of non-zero elements in the rows or columns.seed.use
parameter from RunSVD
.UnifyPeaks
function to create a merged set of peaks from multiple samples.RunSVD
: previously, scaling was applied to each cell rather than each component. Now, mean centering and SD scaling are applied to the cell embeddings within a component.scale.embeddings
option to RunSVD
to control whether embeddings are scaled and centered.irlba.work
parameter to RunSVD
.SingleCoveragePlot
from exported functionsRunSVD
CoveragePlot
CoveragePlot
PeriodPlot
to FragmentHistogram
neighbors
and reductions
slots from motif
classmotif.names
slot to motif
classCoveragePlot
GRanges
objectCoveragePlot
FilterFragments
TSSEnrichment
and TSSPlot
functions for TSS enrichment scoringInsertionBias
functionCoveragePlot
for scaling tracksCoveragePlot
CoveragePlot
: now plots a Tn5 integration score per base, rather than the whole fragment.GetIntersectingFeatures
function to find overlapping peaks between objectsMergeWithRegions
function to perform region-aware Seurat object merging