New functionality:
method
parameter to LinkPeaks()
(@saketkc; #1030)annotation="transcript"
in
CoveragePlot()
)FindMotifs()
, and
new p.adjust
column in output dataframep.adjust.method
parameter to
FindMotifs()
to control multiple testing correction method
usedBug fixes:
CallPeaks()
when project name contained
whitespace (#981)CoveragePlot()
when
tile=TRUE
InsertionBias()
that set the coordinates
beyond the end of some chromosomes (#986)BigwigTrack()
when supplying a single
bigwig file (#1053)GeneActivity()
when specifying biotypes
(#1058)GeneActivity()
when gene name is an empty
string (#1055)FeatureMatrix()
when using list of
Fragment objects (#1056)RegionMatrix()
when running on objects
containing renamed cells (#1076)Footprint()
when using a FASTA file (#1092)Footprint()
when using list of genomic
regions (#1098)FindMotifs()
(#1109)Other changes:
CallPeaks()
(#1062)Seurat
, ggforce
,
ggrepel
, ggseqlogo
, lsa
,
qlcMatrix
to suggested packagesGetGRangesFromEnsDb()
New functionality:
RegionHeatmap()
functionRegionPlot()
functionRegionMatrix()
functionMotifCounts()
functionCoveragePlot()
by providing a list of assay namesassay.scale
, bigwig.scale
, and
split.assay
parameters to CoveragePlot()
ymax
value in
CoveragePlot()
bigwig.scale
and ymax
parameters to
BigwigTrack()
peak.slot
parameter to LinkPeaks()
(#932)Bug fixes:
min.features
parameter in
CreateChromatinAssay()
to retain cells with
>= min.features
(#902)min.cells
parameter in
LinkPeaks()
(#932)Other changes:
Bug fixes:
FeatureMatrix()
when cells information not
present in Fragment object (#803)LinkPeaks()
using Ensembl IDs (#858)GeneActivity()
when gene names are
NA
(#865)FeatureMatrix()
when only one region
suppliedExpressionPlot()
when using
scaled data (#893)Other changes:
idf
parameter to RunTFIDF()
to use
precomputed IDF vectorgene.id
parameter to GeneActivity()
to allow output genes named using gene ID (#837)sep
parameter to
ConnectionsToLinks()
(#841)New functionality:
CoveragePlot()
. The assay
parameter can now be
a list of assays to plot data from, with signal colored by assay of
origin.Bug fixes:
FindMotifs()
when using only one region as
input (#732)ClosestFeature()
when query contained
regions on contigs not present in gene annotation (#758)TSSEnrichment()
when using multiple
fragment files (#783)CallPeaks()
when multiple fragment files
used as inputCallPeaks()
to account for 0-based starts
in called peaks-
characters (#759)Other changes:
genome
parameter in
AddMotifs()
and RunChromVAR()
(#712)FoldChange()
function to use normalized
counts rather than raw counts (#795)GeneActivity()
(#797)format
parameter to CallPeaks()
(#682)Bug fixes:
LinkPeaks()
function when running on a single
gene (#629)fragment.tempdir
parameter to
CallPeaks()
to enable setting directory that split fragment
files are written to during peak calling (#579)FeatureMatrix()
when setting
sep
parameter (#626)RenameCells()
when cell information
not present in Fragment object (#704)Other changes:
GeneActivity()
(#625)FoldChange()
method for
ChromatinAssay()
object that sets proper parameters for
chromatin data. This fixes the calculation of fold changes when running
Seurat::FindMarkers()
on single-cell chromatin data.New functionality:
head()
method for Fragment
-class
objects.Bug fixes:
ChromatinAssay
merging (#596)Other changes:
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
GetCellsInRegion
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 mergingRunChromVAR
function to run chromVAR through
SignacRegionStats
function to add statistics about peak
sequences to the feature metadataFindMotifs
: now selects a set of
background peaks matching the sequence characteristics of the inputIntersectMatrix
ChunkGRanges