├── .gitignore ├── DESCRIPTION ├── FigR.Rproj ├── LICENSE ├── NAMESPACE ├── R ├── DORCs.R ├── FigR.R ├── cellPairing.R └── utils.R ├── README.md ├── _pkgdown.yml ├── data ├── cisBP_human_pfms_2021.rds ├── cisBP_mouse_pfms_2021.rds ├── hg19_refSeq.RData ├── hg38_refseq.RData └── mm10_refSeq.RData ├── docs ├── 404.html ├── LICENSE-text.html ├── articles │ ├── FigR_shareseq.html │ ├── FigR_shareseq_files │ │ ├── crosstalk-1.1.1 │ │ │ ├── css │ │ │ │ └── crosstalk.css │ │ │ └── js │ │ │ │ ├── crosstalk.js │ │ │ │ ├── crosstalk.js.map │ │ │ │ ├── crosstalk.min.js │ │ │ │ └── crosstalk.min.js.map │ │ ├── d3-4.5.0 │ │ │ ├── LICENSE │ │ │ └── d3.min.js │ │ ├── figure-html │ │ │ ├── firstUMAP-1.png │ │ │ ├── getDORCs-1.png │ │ │ ├── plotDrivers-1.png │ │ │ ├── plotHeat-1.png │ │ │ ├── plotHeat2-1.png │ │ │ ├── plotallFigR-1.png │ │ │ ├── rankDrivers-1.png │ │ │ └── visDORCs-1.png │ │ ├── forceNetwork-binding-0.4 │ │ │ └── forceNetwork.js │ │ ├── htmlwidgets-1.5.3 │ │ │ └── htmlwidgets.js │ │ ├── plotly-binding-4.9.3 │ │ │ └── plotly.js │ │ ├── plotly-htmlwidgets-css-1.57.1 │ │ │ └── plotly-htmlwidgets.css │ │ ├── plotly-main-1.57.1 │ │ │ └── plotly-latest.min.js │ │ └── typedarray-0.1 │ │ │ └── typedarray.min.js │ ├── FigR_stim.html │ ├── FigR_stim_files │ │ ├── crosstalk-1.1.1 │ │ │ ├── css │ │ │ │ └── crosstalk.css │ │ │ └── js │ │ │ │ ├── crosstalk.js │ │ │ │ ├── crosstalk.js.map │ │ │ │ ├── crosstalk.min.js │ │ │ │ └── crosstalk.min.js.map │ │ ├── d3-4.5.0 │ │ │ ├── LICENSE │ │ │ └── d3.min.js │ │ ├── figure-html │ │ │ ├── CCAumap-1.png │ │ │ ├── getDORCs-1.png │ │ │ ├── plotATAC-1.png │ │ │ ├── plotHeat-1.png │ │ │ ├── plotPairs-1.png │ │ │ ├── plotallFigR-1.png │ │ │ ├── rankDrivers-1.png │ │ │ └── visDORCs-1.png │ │ ├── forceNetwork-binding-0.4 │ │ │ └── forceNetwork.js │ │ ├── htmlwidgets-1.5.3 │ │ │ └── htmlwidgets.js │ │ ├── plotly-binding-4.9.3 │ │ │ └── plotly.js │ │ ├── plotly-htmlwidgets-css-1.57.1 │ │ │ └── plotly-htmlwidgets.css │ │ ├── plotly-main-1.57.1 │ │ │ └── plotly-latest.min.js │ │ └── typedarray-0.1 │ │ │ └── typedarray.min.js │ └── index.html ├── authors.html ├── bootstrap-toc.css ├── bootstrap-toc.js ├── deps │ ├── bootstrap-5.1.0 │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.min.css │ │ ├── font.css │ │ └── fonts │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff │ │ │ ├── 4iCs6KVjbNBYlgo6ew.woff │ │ │ ├── 4iCs6KVjbNBYlgoKfw7w.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvTtA.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjsGyL.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_TOQ.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff │ │ │ ├── JTURjIg1_i6t8kCHKm45_ZpC7g0.woff │ │ │ ├── JTURjIg1_i6t8kCHKm45_dJE7g0.woff │ │ │ ├── JTUSjIg1_i6t8kCHKm45xW0.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlfBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlvAA.woff │ │ │ ├── KFOmCnqEu92Fr1Me5g.woff │ │ │ ├── KFOmCnqEu92Fr1Mu4mxM.woff │ │ │ ├── QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff │ │ │ ├── S6u8w4BMUTPHjxsAXC-s.woff │ │ │ ├── S6u8w4BMUTPHjxswWA.woff │ │ │ ├── S6u9w4BMUTPHh6UVSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh6UVeww.woff │ │ │ ├── S6u9w4BMUTPHh7USSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh7USeww.woff │ │ │ ├── S6uyw4BMUTPHjx4wWA.woff │ │ │ ├── S6uyw4BMUTPHvxo.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff │ │ │ ├── XRXV3I6Li01BKof4MQ.woff │ │ │ ├── XRXW3I6Li01BKofA6sKkZQ.woff │ │ │ ├── XRXW3I6Li01BKofAjsOkZQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff │ │ │ ├── pe03MImSLYBIv1o4X1M8cc9iB_5p.woff │ │ │ ├── pe0qMImSLYBIv1o4X1M8cfe5.woff │ │ │ └── q5uGsou0JOdh94bfvQlr.woff │ ├── data-deps.txt │ └── jquery-3.5.1 │ │ ├── AUTHORS.txt │ │ ├── LICENSE.txt │ │ ├── jquery-1.12.4.js │ │ ├── jquery-1.12.4.min.js │ │ ├── jquery-1.12.4.min.map │ │ ├── jquery-2.2.4.js │ │ ├── jquery-2.2.4.min.js │ │ ├── jquery-2.2.4.min.map │ │ ├── jquery-3.5.1.js │ │ ├── jquery-3.5.1.min.js │ │ └── jquery-3.5.1.min.map ├── docsearch.css ├── docsearch.js ├── index.html ├── link.svg ├── pkgdown.css ├── pkgdown.js ├── pkgdown.yml ├── reference │ ├── Rplot001.png │ ├── cell_pairing.html │ ├── centerCounts.html │ ├── dorcJPlot.html │ ├── extractTFNames.html │ ├── figures │ │ ├── FigR.PNG │ │ ├── PBMCs.png │ │ └── skinv2.png │ ├── getDORCScores.html │ ├── index.html │ ├── motifPeakZtest.html │ ├── pairCells.html │ ├── plotDrivers.html │ ├── plotMarker2D.html │ ├── plotPairs.html │ ├── plotfigRHeatmap.html │ ├── plotfigRNetwork.html │ ├── rankDrivers.html │ ├── runFigRGRN.html │ ├── runGenePeakcorr.html │ ├── smoothScoresNN.html │ └── splitAndFetch.html ├── search.json └── sitemap.xml ├── images ├── FigR.PNG ├── PBMCs.png ├── skin.PNG └── skinv2.png ├── inst └── CITATION ├── man ├── cell_pairing.Rd ├── centerCounts.Rd ├── dorcJPlot.Rd ├── extractTFNames.Rd ├── figures │ ├── FigR.PNG │ ├── PBMCs.png │ └── skinv2.png ├── getDORCScores.Rd ├── motifPeakZtest.Rd ├── pairCells.Rd ├── plotDrivers.Rd ├── plotMarker2D.Rd ├── plotPairs.Rd ├── plotfigRHeatmap.Rd ├── plotfigRNetwork.Rd ├── rankDrivers.Rd ├── runFigRGRN.Rd ├── runGenePeakcorr.Rd ├── smoothScoresNN.Rd └── splitAndFetch.Rd └── vignettes └── web_only ├── FigR_shareseq_tutorial.html └── FigR_stim_tutorial.html /.gitignore: -------------------------------------------------------------------------------- 1 | .Rproj.user 2 | .Rhistory 3 | .RData 4 | .Ruserdata 5 | -------------------------------------------------------------------------------- /DESCRIPTION: -------------------------------------------------------------------------------- 1 | Package: FigR 2 | Type: Package 3 | Title: Functional Inference of Gene Regulation (FigR) using paired single cell ATAC-seq and RNA-seq data 4 | Version: 0.1.0 5 | Authors@R: c( 6 | person("Vinay","Kartha",email= "vinay_kartha@g.harvard.edu",role = c("aut", "cre")), 7 | person("Jason","D. Buenrostro",role = c("aut"))) 8 | Description: This R package supports the integration of scATAC-seq and scRNA-seq data using which one can determine 9 | cis-regulatory elements linked to gene to define domains of regulatory chromatin (DORCs), and TF-gene associations using FigR. 10 | This framework is associated with (our manuscript)[https://www.sciencedirect.com/science/article/pii/S2666979X22001082] published in 2022 11 | URL: https://buenrostrolab.github.io/FigR/ 12 | BugReports: https://github.com/buenrostrolab/FigR/issues 13 | Imports: Matrix, SummarizedExperiment, GenomicRanges, dplyr, ggplot2, chromVAR, doParallel, doSNOW, ggrepel, ComplexHeatmap, BuenColors, pbmcapply, tibble, scales, reshape2, Rmpfr, optmatch, FNN 14 | Depends: Matrix, SummarizedExperiment, dplyr, ggplot2, cowplot, chromVAR, motifmatchr 15 | Suggests: BSgenome.Mmusculus.UCSC.hg19, BSgenome.Mmusculus.UCSC.mm10, BSgenome.Hsapiens.UCSC.hg38, networkD3, knitr, rmarkdown, ggrastr 16 | VignetteBuilder: knitr 17 | License: MIT + file LICENSE 18 | Encoding: UTF-8 19 | LazyData: true 20 | RoxygenNote: 7.1.1 21 | -------------------------------------------------------------------------------- /FigR.Rproj: -------------------------------------------------------------------------------- 1 | Version: 1.0 2 | 3 | RestoreWorkspace: Default 4 | SaveWorkspace: Default 5 | AlwaysSaveHistory: Default 6 | 7 | EnableCodeIndexing: Yes 8 | UseSpacesForTab: Yes 9 | NumSpacesForTab: 2 10 | Encoding: UTF-8 11 | 12 | RnwWeave: Sweave 13 | LaTeX: pdfLaTeX 14 | 15 | AutoAppendNewline: Yes 16 | StripTrailingWhitespace: Yes 17 | 18 | BuildType: Package 19 | PackageUseDevtools: Yes 20 | PackageInstallArgs: --no-multiarch --with-keep.source 21 | PackageRoxygenize: rd,collate,namespace 22 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Buenrostro Lab 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /NAMESPACE: -------------------------------------------------------------------------------- 1 | exportPattern("^[[:alpha:]]+") 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Functional Inference of Gene Regulation (FigR) 2 | 3 | FigR is a computational framework for supporting the integration of single cell chromatin accessibility and gene expression data to infer transcriptional regulators of target genes 4 | 5 | 6 |

7 | 8 |

9 | 10 | FigR uses independently or concomitantly-profiled single-cell ATAC-seq (scATAC-seq) and scRNA-seq, to 11 | i) computationally-pair scATAC-seq and scRNA-seq datasets (if needed), ii) infers cis-regulatory interactions, and iii) defines a TF-gene gene regulatory network (GRN) 12 | 13 | 14 | # Installation 15 | 16 | `devtools::install_github("buenrostrolab/FigR")` 17 | 18 | # Quickstart 19 | 20 | ### DORC calling 21 | 22 | If you have a `SummarizedExperiment` object of the scATAC-seq reads in peaks counts (peaks x cells), as well as a `sparseMatrix` object of the scRNA-seq gene counts (genes x cells) that are paired (either computationally or true multi-modal), you can determine *cis*-regulatory associations (gene-peak correlations) as follows 23 | 24 | ``` 25 | # Run using multiple cores if parallel support 26 | cisCor <- runGenePeakcorr(ATAC.se = ATAC.SE, 27 | RNAmat = rnaMat, 28 | genome = "hg19", # Also supports mm10 and hg38 29 | nCores = 4, 30 | p.cut=NULL) 31 | 32 | # Filter peak-gene correlations by p-value 33 | cisCor.filt <- cisCor %>% filter(pvalZ <= 0.05) 34 | 35 | # Determine DORC genes 36 | dorcGenes <- cisCor.filt %>% dorcJPlot(cutoff=7, # Default 37 | returnGeneList = TRUE) 38 | 39 | # Get DORC scores 40 | dorcMat <- getDORCScores(ATAC.SE,dorcTab=cisCor.filt,geneList=dorcGenes,nCores=4) 41 | 42 | # Smooth DORC scores (using cell KNNs) 43 | dorcMat.smooth <- smoothScoresNN(NNmat=cellKNN.mat,mat=dorcMat,nCores=4) 44 | 45 | ``` 46 | 47 | *Cis*-regulatory correlation analysis framework to identify gene-peak (chromatin accessibility peak) significant associations and deduce key genes that are domains of such regulatory activity (DORCs) 48 | 49 | ### FigR 50 | 51 | Once you have your DORC definitions, you can use this, along with the paired RNA data, to run the core FigR function. This returns a table of regulations cores between each DORC gene and a TF in the reference database, which we can filter on and visualize (see section below) 52 | 53 | ``` 54 | # Run FigR 55 | fig.d <- runFigRGRN(ATAC.se=,ATAC.SE, 56 | rnaMat=rnaMat.smooth, # Smoothed RNA matrix using paired cell kNNs 57 | dorcMat=dorcMat.smooth, 58 | dorcTab=cisCor.filt, 59 | genome="hg19", 60 | dorcGenes=dorcGenes, 61 | nCores=4) 62 | 63 | ``` 64 | 65 | ### Visualizing FigR results 66 | 67 | ``` 68 | 69 | # Visualize all TF-DORC regulation scores (Scatter plot) 70 | require(ggplot2) 71 | require(ggrastr) 72 | require(BuenColors) # https://github.com/caleblareau/BuenColors 73 | 74 | fig.d %>% ggplot(aes(Corr.log10P,Enrichment.log10P,color=Score)) + 75 | geom_point_rast(size=0.01,shape=16) + 76 | theme_classic() + 77 | scale_color_gradientn(colours = jdb_palette("solar_extra"),limits=c(-4,4),oob = scales::squish) 78 | 79 | 80 | ``` 81 | 82 | ### What reference genomes does FigR currently support? 83 | 84 | FigR currently has built in support for human reference genomes hg19 and hg38, and mouse reference genome mm10. We will soon provide support for user-defined input genome objects (has to be supported by the `BSgenome` suite of packages) as well as objects with TSS coordinates per gene (of class `GRanges`). Users are responsible for ensuring the right reference genome object is paired with the appropriate TSS gene object, if specified 85 | 86 | # About 87 | 88 | We are actively updating this package to help with user requests! 89 | 90 | Please visit our [documentation website](https://buenrostrolab.github.io/FigR/) for more details on examples and functions that the FigR package supports. 91 | 92 | You may also directly check out our walk-throughs on applying the FigR framework to multi-modal and independently derived scATAC-seq / scRNA-seq data by clicking on the links below: 93 | 94 |

95 | 96 | 97 |

98 | 99 |

100 | 101 |

102 | 103 | # Reference / Citation 104 | 105 | See our [published manuscript](https://www.sciencedirect.com/science/article/pii/S2666979X22001082) detailing the use of the FigR framework for gene regulatory network inference using scATAC and scRNA-seq integration 106 | -------------------------------------------------------------------------------- /_pkgdown.yml: -------------------------------------------------------------------------------- 1 | url: https://buenrostrolab.github.io/FigR/ 2 | 3 | template: 4 | bootstrap: 5 5 | bootswatch: sandstone 6 | theme: github-light 7 | bslib: 8 | pkgdown-nav-height: 150px 9 | 10 | reference: 11 | - title: Peak-gene correlations 12 | contents: 13 | - runGenePeakcorr 14 | - dorcJPlot 15 | - getDORCScores 16 | 17 | - title: TF-DORC associations 18 | contents: 19 | - runFigRGRN 20 | - motifPeakZtest 21 | 22 | - title: scATAC-scRNA scOptMatch cell pairing 23 | contents: 24 | - pairCells 25 | - plotPairs 26 | 27 | - title: Visualizing FigRGRN results 28 | contents: 29 | - plotDrivers 30 | - rankDrivers 31 | - plotfigRHeatmap 32 | - plotfigRNetwork 33 | 34 | - title: Miscellaneous helper functions 35 | contents: 36 | - centerCounts 37 | - smoothScoresNN 38 | - plotMarker2D 39 | - splitAndFetch 40 | 41 | navbar: 42 | bg: primary 43 | structure: 44 | left: [tutorials, reference, news] 45 | right: [search, github, contact] 46 | components: 47 | tutorials: 48 | text: "Tutorials" 49 | menu: 50 | - text: "Pairing scATAC and scRNA-seq" 51 | href: articles/FigR_stim.html 52 | - text: "FigR on multi-modal data" 53 | href: articles/FigR_shareseq.html 54 | 55 | reference: 56 | icon: fa-gears 57 | text: "Functions" 58 | href: reference/index.html 59 | 60 | news: 61 | icon: fa-newspaper-o 62 | text: "News" 63 | 64 | resource_files: 65 | - media/FigR.PNG 66 | - media/skinv2.png 67 | - media/PBMCs.png 68 | - vignettes/web_only/FigR_shareseq_tutorial.html 69 | - vignettes/web_only/FigR_stim_tutorial.html 70 | -------------------------------------------------------------------------------- /data/cisBP_human_pfms_2021.rds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/data/cisBP_human_pfms_2021.rds -------------------------------------------------------------------------------- /data/cisBP_mouse_pfms_2021.rds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/data/cisBP_mouse_pfms_2021.rds -------------------------------------------------------------------------------- /data/hg19_refSeq.RData: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/data/hg19_refSeq.RData -------------------------------------------------------------------------------- /data/hg38_refseq.RData: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/data/hg38_refseq.RData -------------------------------------------------------------------------------- /data/mm10_refSeq.RData: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/data/mm10_refSeq.RData -------------------------------------------------------------------------------- /docs/404.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Page not found (404) • FigR 9 | 10 | 11 | 12 | 13 | 14 | 18 | 19 | 20 | Skip to contents 21 | 22 | 23 |
69 |
70 |
74 | 75 | Content not found. Please use links in the navbar. 76 | 77 |
78 |
79 | 80 | 81 | 92 |
93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /docs/LICENSE-text.html: -------------------------------------------------------------------------------- 1 | 2 | License • FigR 6 | Skip to contents 7 | 8 | 9 |
50 |
51 |
55 | 56 |
MIT License
57 | 
58 | Copyright (c) 2021 Buenrostro Lab
59 | 
60 | Permission is hereby granted, free of charge, to any person obtaining a copy
61 | of this software and associated documentation files (the "Software"), to deal
62 | in the Software without restriction, including without limitation the rights
63 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
64 | copies of the Software, and to permit persons to whom the Software is
65 | furnished to do so, subject to the following conditions:
66 | 
67 | The above copyright notice and this permission notice shall be included in all
68 | copies or substantial portions of the Software.
69 | 
70 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
71 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
72 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
73 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
74 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
75 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
76 | SOFTWARE.
77 | 
78 | 79 |
80 | 81 | 82 |
91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/crosstalk-1.1.1/css/crosstalk.css: -------------------------------------------------------------------------------- 1 | /* Adjust margins outwards, so column contents line up with the edges of the 2 | parent of container-fluid. */ 3 | .container-fluid.crosstalk-bscols { 4 | margin-left: -30px; 5 | margin-right: -30px; 6 | white-space: normal; 7 | } 8 | 9 | /* But don't adjust the margins outwards if we're directly under the body, 10 | i.e. we were the top-level of something at the console. */ 11 | body > .container-fluid.crosstalk-bscols { 12 | margin-left: auto; 13 | margin-right: auto; 14 | } 15 | 16 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 17 | display: inline-block; 18 | padding-right: 12px; 19 | vertical-align: top; 20 | } 21 | 22 | @media only screen and (max-width:480px) { 23 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 24 | display: block; 25 | padding-right: inherit; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/d3-4.5.0/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2010-2016 Mike Bostock 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of contributors may be used to 15 | endorse or promote products derived from this software without specific prior 16 | written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 19 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 22 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 23 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 25 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/firstUMAP-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/firstUMAP-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/getDORCs-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/getDORCs-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/plotDrivers-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/plotDrivers-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/plotHeat-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/plotHeat-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/plotHeat2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/plotHeat2-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/plotallFigR-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/plotallFigR-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/rankDrivers-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/rankDrivers-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/figure-html/visDORCs-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_shareseq_files/figure-html/visDORCs-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_shareseq_files/plotly-htmlwidgets-css-1.57.1/plotly-htmlwidgets.css: -------------------------------------------------------------------------------- 1 | /* 2 | just here so that plotly works 3 | correctly with ioslides. 4 | see https://github.com/ropensci/plotly/issues/463 5 | */ 6 | 7 | slide:not(.current) .plotly.html-widget{ 8 | display: none; 9 | } 10 | -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/crosstalk-1.1.1/css/crosstalk.css: -------------------------------------------------------------------------------- 1 | /* Adjust margins outwards, so column contents line up with the edges of the 2 | parent of container-fluid. */ 3 | .container-fluid.crosstalk-bscols { 4 | margin-left: -30px; 5 | margin-right: -30px; 6 | white-space: normal; 7 | } 8 | 9 | /* But don't adjust the margins outwards if we're directly under the body, 10 | i.e. we were the top-level of something at the console. */ 11 | body > .container-fluid.crosstalk-bscols { 12 | margin-left: auto; 13 | margin-right: auto; 14 | } 15 | 16 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 17 | display: inline-block; 18 | padding-right: 12px; 19 | vertical-align: top; 20 | } 21 | 22 | @media only screen and (max-width:480px) { 23 | .crosstalk-input-checkboxgroup .crosstalk-options-group .crosstalk-options-column { 24 | display: block; 25 | padding-right: inherit; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/d3-4.5.0/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2010-2016 Mike Bostock 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of contributors may be used to 15 | endorse or promote products derived from this software without specific prior 16 | written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 19 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 22 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 23 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 25 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/CCAumap-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/CCAumap-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/getDORCs-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/getDORCs-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/plotATAC-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/plotATAC-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/plotHeat-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/plotHeat-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/plotPairs-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/plotPairs-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/plotallFigR-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/plotallFigR-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/rankDrivers-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/rankDrivers-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/figure-html/visDORCs-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/articles/FigR_stim_files/figure-html/visDORCs-1.png -------------------------------------------------------------------------------- /docs/articles/FigR_stim_files/plotly-htmlwidgets-css-1.57.1/plotly-htmlwidgets.css: -------------------------------------------------------------------------------- 1 | /* 2 | just here so that plotly works 3 | correctly with ioslides. 4 | see https://github.com/ropensci/plotly/issues/463 5 | */ 6 | 7 | slide:not(.current) .plotly.html-widget{ 8 | display: none; 9 | } 10 | -------------------------------------------------------------------------------- /docs/articles/index.html: -------------------------------------------------------------------------------- 1 | 2 | Articles • FigR 6 | Skip to contents 7 | 8 | 9 |
50 |
51 |
54 | 55 | 64 |
65 | 66 | 67 |
76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | -------------------------------------------------------------------------------- /docs/authors.html: -------------------------------------------------------------------------------- 1 | 2 | Authors and Citation • FigR 6 | Skip to contents 7 | 8 | 9 |
50 |
51 |
54 | 55 |
56 |

Authors

57 | 58 |
  • 59 |

    Vinay Kartha. Author, maintainer. 60 |

    61 |
  • 62 |
  • 63 |

    Jason D. Buenrostro. Author. 64 |

    65 |
  • 66 |
67 | 68 |
69 |

Citation

70 |

Source: inst/CITATION

71 | 72 |

Kartha, VK. et al. Functional Inference of Gene Regulation using Single-Cell Multi-Omics. BioRxiv (2021)

73 |
@Article{,
 74 |   title = {Functional Inference of Gene Regulation using Single-Cell Multi-Omics},
 75 |   author = {Vinay Kartha et al.},
 76 |   journal = {BiorXiv preprint},
 77 |   year = {2021},
 78 |   url = {https://www.biorxiv.org/content/10.1101/2021.07.28.453784v1},
 79 | }
80 |
81 |
83 | 84 | 85 |
94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | -------------------------------------------------------------------------------- /docs/bootstrap-toc.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) 3 | * Copyright 2015 Aidan Feldman 4 | * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ 5 | 6 | /* modified from https://github.com/twbs/bootstrap/blob/94b4076dd2efba9af71f0b18d4ee4b163aa9e0dd/docs/assets/css/src/docs.css#L548-L601 */ 7 | 8 | /* All levels of nav */ 9 | nav[data-toggle='toc'] .nav > li > a { 10 | display: block; 11 | padding: 4px 20px; 12 | font-size: 13px; 13 | font-weight: 500; 14 | color: #767676; 15 | } 16 | nav[data-toggle='toc'] .nav > li > a:hover, 17 | nav[data-toggle='toc'] .nav > li > a:focus { 18 | padding-left: 19px; 19 | color: #563d7c; 20 | text-decoration: none; 21 | background-color: transparent; 22 | border-left: 1px solid #563d7c; 23 | } 24 | nav[data-toggle='toc'] .nav > .active > a, 25 | nav[data-toggle='toc'] .nav > .active:hover > a, 26 | nav[data-toggle='toc'] .nav > .active:focus > a { 27 | padding-left: 18px; 28 | font-weight: bold; 29 | color: #563d7c; 30 | background-color: transparent; 31 | border-left: 2px solid #563d7c; 32 | } 33 | 34 | /* Nav: second level (shown on .active) */ 35 | nav[data-toggle='toc'] .nav .nav { 36 | display: none; /* Hide by default, but at >768px, show it */ 37 | padding-bottom: 10px; 38 | } 39 | nav[data-toggle='toc'] .nav .nav > li > a { 40 | padding-top: 1px; 41 | padding-bottom: 1px; 42 | padding-left: 30px; 43 | font-size: 12px; 44 | font-weight: normal; 45 | } 46 | nav[data-toggle='toc'] .nav .nav > li > a:hover, 47 | nav[data-toggle='toc'] .nav .nav > li > a:focus { 48 | padding-left: 29px; 49 | } 50 | nav[data-toggle='toc'] .nav .nav > .active > a, 51 | nav[data-toggle='toc'] .nav .nav > .active:hover > a, 52 | nav[data-toggle='toc'] .nav .nav > .active:focus > a { 53 | padding-left: 28px; 54 | font-weight: 500; 55 | } 56 | 57 | /* from https://github.com/twbs/bootstrap/blob/e38f066d8c203c3e032da0ff23cd2d6098ee2dd6/docs/assets/css/src/docs.css#L631-L634 */ 58 | nav[data-toggle='toc'] .nav > .active > ul { 59 | display: block; 60 | } 61 | -------------------------------------------------------------------------------- /docs/bootstrap-toc.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Table of Contents v0.4.1 (http://afeld.github.io/bootstrap-toc/) 3 | * Copyright 2015 Aidan Feldman 4 | * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ 5 | (function() { 6 | 'use strict'; 7 | 8 | window.Toc = { 9 | helpers: { 10 | // return all matching elements in the set, or their descendants 11 | findOrFilter: function($el, selector) { 12 | // http://danielnouri.org/notes/2011/03/14/a-jquery-find-that-also-finds-the-root-element/ 13 | // http://stackoverflow.com/a/12731439/358804 14 | var $descendants = $el.find(selector); 15 | return $el.filter(selector).add($descendants).filter(':not([data-toc-skip])'); 16 | }, 17 | 18 | generateUniqueIdBase: function(el) { 19 | var text = $(el).text(); 20 | var anchor = text.trim().toLowerCase().replace(/[^A-Za-z0-9]+/g, '-'); 21 | return anchor || el.tagName.toLowerCase(); 22 | }, 23 | 24 | generateUniqueId: function(el) { 25 | var anchorBase = this.generateUniqueIdBase(el); 26 | for (var i = 0; ; i++) { 27 | var anchor = anchorBase; 28 | if (i > 0) { 29 | // add suffix 30 | anchor += '-' + i; 31 | } 32 | // check if ID already exists 33 | if (!document.getElementById(anchor)) { 34 | return anchor; 35 | } 36 | } 37 | }, 38 | 39 | generateAnchor: function(el) { 40 | if (el.id) { 41 | return el.id; 42 | } else { 43 | var anchor = this.generateUniqueId(el); 44 | el.id = anchor; 45 | return anchor; 46 | } 47 | }, 48 | 49 | createNavList: function() { 50 | return $(''); 51 | }, 52 | 53 | createChildNavList: function($parent) { 54 | var $childList = this.createNavList(); 55 | $parent.append($childList); 56 | return $childList; 57 | }, 58 | 59 | generateNavEl: function(anchor, text) { 60 | var $a = $(''); 61 | $a.attr('href', '#' + anchor); 62 | $a.text(text); 63 | var $li = $('
  • '); 64 | $li.append($a); 65 | return $li; 66 | }, 67 | 68 | generateNavItem: function(headingEl) { 69 | var anchor = this.generateAnchor(headingEl); 70 | var $heading = $(headingEl); 71 | var text = $heading.data('toc-text') || $heading.text(); 72 | return this.generateNavEl(anchor, text); 73 | }, 74 | 75 | // Find the first heading level (`

    `, then `

    `, etc.) that has more than one element. Defaults to 1 (for `

    `). 76 | getTopLevel: function($scope) { 77 | for (var i = 1; i <= 6; i++) { 78 | var $headings = this.findOrFilter($scope, 'h' + i); 79 | if ($headings.length > 1) { 80 | return i; 81 | } 82 | } 83 | 84 | return 1; 85 | }, 86 | 87 | // returns the elements for the top level, and the next below it 88 | getHeadings: function($scope, topLevel) { 89 | var topSelector = 'h' + topLevel; 90 | 91 | var secondaryLevel = topLevel + 1; 92 | var secondarySelector = 'h' + secondaryLevel; 93 | 94 | return this.findOrFilter($scope, topSelector + ',' + secondarySelector); 95 | }, 96 | 97 | getNavLevel: function(el) { 98 | return parseInt(el.tagName.charAt(1), 10); 99 | }, 100 | 101 | populateNav: function($topContext, topLevel, $headings) { 102 | var $context = $topContext; 103 | var $prevNav; 104 | 105 | var helpers = this; 106 | $headings.each(function(i, el) { 107 | var $newNav = helpers.generateNavItem(el); 108 | var navLevel = helpers.getNavLevel(el); 109 | 110 | // determine the proper $context 111 | if (navLevel === topLevel) { 112 | // use top level 113 | $context = $topContext; 114 | } else if ($prevNav && $context === $topContext) { 115 | // create a new level of the tree and switch to it 116 | $context = helpers.createChildNavList($prevNav); 117 | } // else use the current $context 118 | 119 | $context.append($newNav); 120 | 121 | $prevNav = $newNav; 122 | }); 123 | }, 124 | 125 | parseOps: function(arg) { 126 | var opts; 127 | if (arg.jquery) { 128 | opts = { 129 | $nav: arg 130 | }; 131 | } else { 132 | opts = arg; 133 | } 134 | opts.$scope = opts.$scope || $(document.body); 135 | return opts; 136 | } 137 | }, 138 | 139 | // accepts a jQuery object, or an options object 140 | init: function(opts) { 141 | opts = this.helpers.parseOps(opts); 142 | 143 | // ensure that the data attribute is in place for styling 144 | opts.$nav.attr('data-toggle', 'toc'); 145 | 146 | var $topContext = this.helpers.createChildNavList(opts.$nav); 147 | var topLevel = this.helpers.getTopLevel(opts.$scope); 148 | var $headings = this.helpers.getHeadings(opts.$scope, topLevel); 149 | this.helpers.populateNav($topContext, topLevel, $headings); 150 | } 151 | }; 152 | 153 | $(function() { 154 | $('nav[data-toggle="toc"]').each(function(i, el) { 155 | var $nav = $(el); 156 | Toc.init($nav); 157 | }); 158 | }); 159 | })(); 160 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/font.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Roboto'; 3 | font-style: normal; 4 | font-weight: 400; 5 | font-display: swap; 6 | src: url(fonts/KFOmCnqEu92Fr1Me5g.woff) format('woff'); 7 | } 8 | @font-face { 9 | font-family: 'Roboto'; 10 | font-style: normal; 11 | font-weight: 500; 12 | font-display: swap; 13 | src: url(fonts/KFOlCnqEu92Fr1MmEU9vAA.woff) format('woff'); 14 | } 15 | @font-face { 16 | font-family: 'Roboto'; 17 | font-style: normal; 18 | font-weight: 700; 19 | font-display: swap; 20 | src: url(fonts/KFOlCnqEu92Fr1MmWUlvAA.woff) format('woff'); 21 | } 22 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/4iCs6KVjbNBYlgo6ew.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/4iCs6KVjbNBYlgo6ew.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/4iCs6KVjbNBYlgoKfw7w.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/4iCs6KVjbNBYlgoKfw7w.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/JTURjIg1_i6t8kCHKm45_ZpC7g0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/JTURjIg1_i6t8kCHKm45_ZpC7g0.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/JTURjIg1_i6t8kCHKm45_dJE7g0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/JTURjIg1_i6t8kCHKm45_dJE7g0.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/JTUSjIg1_i6t8kCHKm45xW0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/JTUSjIg1_i6t8kCHKm45xW0.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOmCnqEu92Fr1Me5g.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOmCnqEu92Fr1Me5g.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/KFOmCnqEu92Fr1Mu4mxM.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/KFOmCnqEu92Fr1Mu4mxM.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u8w4BMUTPHjxsAXC-s.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u8w4BMUTPHjxsAXC-s.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u8w4BMUTPHjxswWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u8w4BMUTPHjxswWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh6UVeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh6UVeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh7USSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh7USSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh7USeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6u9w4BMUTPHh7USeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6uyw4BMUTPHjx4wWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6uyw4BMUTPHjx4wWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/S6uyw4BMUTPHvxo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/S6uyw4BMUTPHvxo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/XRXV3I6Li01BKof4MQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/XRXV3I6Li01BKof4MQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/XRXW3I6Li01BKofA6sKkZQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/XRXW3I6Li01BKofA6sKkZQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/XRXW3I6Li01BKofAjsOkZQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/XRXW3I6Li01BKofAjsOkZQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/pe03MImSLYBIv1o4X1M8cc9iB_5p.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/pe03MImSLYBIv1o4X1M8cc9iB_5p.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/pe0qMImSLYBIv1o4X1M8cfe5.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/pe0qMImSLYBIv1o4X1M8cfe5.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.1.0/fonts/q5uGsou0JOdh94bfvQlr.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/deps/bootstrap-5.1.0/fonts/q5uGsou0JOdh94bfvQlr.woff -------------------------------------------------------------------------------- /docs/deps/data-deps.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /docs/deps/jquery-3.5.1/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright OpenJS Foundation and other contributors, https://openjsf.org/ 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /docs/docsearch.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | 3 | // register a handler to move the focus to the search bar 4 | // upon pressing shift + "/" (i.e. "?") 5 | $(document).on('keydown', function(e) { 6 | if (e.shiftKey && e.keyCode == 191) { 7 | e.preventDefault(); 8 | $("#search-input").focus(); 9 | } 10 | }); 11 | 12 | $(document).ready(function() { 13 | // do keyword highlighting 14 | /* modified from https://jsfiddle.net/julmot/bL6bb5oo/ */ 15 | var mark = function() { 16 | 17 | var referrer = document.URL ; 18 | var paramKey = "q" ; 19 | 20 | if (referrer.indexOf("?") !== -1) { 21 | var qs = referrer.substr(referrer.indexOf('?') + 1); 22 | var qs_noanchor = qs.split('#')[0]; 23 | var qsa = qs_noanchor.split('&'); 24 | var keyword = ""; 25 | 26 | for (var i = 0; i < qsa.length; i++) { 27 | var currentParam = qsa[i].split('='); 28 | 29 | if (currentParam.length !== 2) { 30 | continue; 31 | } 32 | 33 | if (currentParam[0] == paramKey) { 34 | keyword = decodeURIComponent(currentParam[1].replace(/\+/g, "%20")); 35 | } 36 | } 37 | 38 | if (keyword !== "") { 39 | $(".contents").unmark({ 40 | done: function() { 41 | $(".contents").mark(keyword); 42 | } 43 | }); 44 | } 45 | } 46 | }; 47 | 48 | mark(); 49 | }); 50 | }); 51 | 52 | /* Search term highlighting ------------------------------*/ 53 | 54 | function matchedWords(hit) { 55 | var words = []; 56 | 57 | var hierarchy = hit._highlightResult.hierarchy; 58 | // loop to fetch from lvl0, lvl1, etc. 59 | for (var idx in hierarchy) { 60 | words = words.concat(hierarchy[idx].matchedWords); 61 | } 62 | 63 | var content = hit._highlightResult.content; 64 | if (content) { 65 | words = words.concat(content.matchedWords); 66 | } 67 | 68 | // return unique words 69 | var words_uniq = [...new Set(words)]; 70 | return words_uniq; 71 | } 72 | 73 | function updateHitURL(hit) { 74 | 75 | var words = matchedWords(hit); 76 | var url = ""; 77 | 78 | if (hit.anchor) { 79 | url = hit.url_without_anchor + '?q=' + escape(words.join(" ")) + '#' + hit.anchor; 80 | } else { 81 | url = hit.url + '?q=' + escape(words.join(" ")); 82 | } 83 | 84 | return url; 85 | } 86 | -------------------------------------------------------------------------------- /docs/link.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /docs/pkgdown.css: -------------------------------------------------------------------------------- 1 | /* Sticky footer */ 2 | 3 | /** 4 | * Basic idea: https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/ 5 | * Details: https://github.com/philipwalton/solved-by-flexbox/blob/master/assets/css/components/site.css 6 | * 7 | * .Site -> body > .container 8 | * .Site-content -> body > .container .row 9 | * .footer -> footer 10 | * 11 | * Key idea seems to be to ensure that .container and __all its parents__ 12 | * have height set to 100% 13 | * 14 | */ 15 | 16 | html, body { 17 | height: 100%; 18 | } 19 | 20 | body { 21 | position: relative; 22 | } 23 | 24 | body > .container { 25 | display: flex; 26 | height: 100%; 27 | flex-direction: column; 28 | } 29 | 30 | body > .container .row { 31 | flex: 1 0 auto; 32 | } 33 | 34 | footer { 35 | margin-top: 45px; 36 | padding: 35px 0 36px; 37 | border-top: 1px solid #e5e5e5; 38 | color: #666; 39 | display: flex; 40 | flex-shrink: 0; 41 | } 42 | footer p { 43 | margin-bottom: 0; 44 | } 45 | footer div { 46 | flex: 1; 47 | } 48 | footer .pkgdown { 49 | text-align: right; 50 | } 51 | footer p { 52 | margin-bottom: 0; 53 | } 54 | 55 | img.icon { 56 | float: right; 57 | } 58 | 59 | /* Ensure in-page images don't run outside their container */ 60 | .contents img { 61 | max-width: 100%; 62 | height: auto; 63 | } 64 | 65 | /* Fix bug in bootstrap (only seen in firefox) */ 66 | summary { 67 | display: list-item; 68 | } 69 | 70 | /* Typographic tweaking ---------------------------------*/ 71 | 72 | .contents .page-header { 73 | margin-top: calc(-60px + 1em); 74 | } 75 | 76 | dd { 77 | margin-left: 3em; 78 | } 79 | 80 | /* Section anchors ---------------------------------*/ 81 | 82 | a.anchor { 83 | display: none; 84 | margin-left: 5px; 85 | width: 20px; 86 | height: 20px; 87 | 88 | background-image: url(./link.svg); 89 | background-repeat: no-repeat; 90 | background-size: 20px 20px; 91 | background-position: center center; 92 | } 93 | 94 | h1:hover .anchor, 95 | h2:hover .anchor, 96 | h3:hover .anchor, 97 | h4:hover .anchor, 98 | h5:hover .anchor, 99 | h6:hover .anchor { 100 | display: inline-block; 101 | } 102 | 103 | /* Fixes for fixed navbar --------------------------*/ 104 | 105 | .contents h1, .contents h2, .contents h3, .contents h4 { 106 | padding-top: 60px; 107 | margin-top: -40px; 108 | } 109 | 110 | /* Navbar submenu --------------------------*/ 111 | 112 | .dropdown-submenu { 113 | position: relative; 114 | } 115 | 116 | .dropdown-submenu>.dropdown-menu { 117 | top: 0; 118 | left: 100%; 119 | margin-top: -6px; 120 | margin-left: -1px; 121 | border-radius: 0 6px 6px 6px; 122 | } 123 | 124 | .dropdown-submenu:hover>.dropdown-menu { 125 | display: block; 126 | } 127 | 128 | .dropdown-submenu>a:after { 129 | display: block; 130 | content: " "; 131 | float: right; 132 | width: 0; 133 | height: 0; 134 | border-color: transparent; 135 | border-style: solid; 136 | border-width: 5px 0 5px 5px; 137 | border-left-color: #cccccc; 138 | margin-top: 5px; 139 | margin-right: -10px; 140 | } 141 | 142 | .dropdown-submenu:hover>a:after { 143 | border-left-color: #ffffff; 144 | } 145 | 146 | .dropdown-submenu.pull-left { 147 | float: none; 148 | } 149 | 150 | .dropdown-submenu.pull-left>.dropdown-menu { 151 | left: -100%; 152 | margin-left: 10px; 153 | border-radius: 6px 0 6px 6px; 154 | } 155 | 156 | /* Sidebar --------------------------*/ 157 | 158 | #pkgdown-sidebar { 159 | margin-top: 30px; 160 | position: -webkit-sticky; 161 | position: sticky; 162 | top: 70px; 163 | } 164 | 165 | #pkgdown-sidebar h2 { 166 | font-size: 1.5em; 167 | margin-top: 1em; 168 | } 169 | 170 | #pkgdown-sidebar h2:first-child { 171 | margin-top: 0; 172 | } 173 | 174 | #pkgdown-sidebar .list-unstyled li { 175 | margin-bottom: 0.5em; 176 | } 177 | 178 | /* bootstrap-toc tweaks ------------------------------------------------------*/ 179 | 180 | /* All levels of nav */ 181 | 182 | nav[data-toggle='toc'] .nav > li > a { 183 | padding: 4px 20px 4px 6px; 184 | font-size: 1.5rem; 185 | font-weight: 400; 186 | color: inherit; 187 | } 188 | 189 | nav[data-toggle='toc'] .nav > li > a:hover, 190 | nav[data-toggle='toc'] .nav > li > a:focus { 191 | padding-left: 5px; 192 | color: inherit; 193 | border-left: 1px solid #878787; 194 | } 195 | 196 | nav[data-toggle='toc'] .nav > .active > a, 197 | nav[data-toggle='toc'] .nav > .active:hover > a, 198 | nav[data-toggle='toc'] .nav > .active:focus > a { 199 | padding-left: 5px; 200 | font-size: 1.5rem; 201 | font-weight: 400; 202 | color: inherit; 203 | border-left: 2px solid #878787; 204 | } 205 | 206 | /* Nav: second level (shown on .active) */ 207 | 208 | nav[data-toggle='toc'] .nav .nav { 209 | display: none; /* Hide by default, but at >768px, show it */ 210 | padding-bottom: 10px; 211 | } 212 | 213 | nav[data-toggle='toc'] .nav .nav > li > a { 214 | padding-left: 16px; 215 | font-size: 1.35rem; 216 | } 217 | 218 | nav[data-toggle='toc'] .nav .nav > li > a:hover, 219 | nav[data-toggle='toc'] .nav .nav > li > a:focus { 220 | padding-left: 15px; 221 | } 222 | 223 | nav[data-toggle='toc'] .nav .nav > .active > a, 224 | nav[data-toggle='toc'] .nav .nav > .active:hover > a, 225 | nav[data-toggle='toc'] .nav .nav > .active:focus > a { 226 | padding-left: 15px; 227 | font-weight: 500; 228 | font-size: 1.35rem; 229 | } 230 | 231 | /* orcid ------------------------------------------------------------------- */ 232 | 233 | .orcid { 234 | font-size: 16px; 235 | color: #A6CE39; 236 | /* margins are required by official ORCID trademark and display guidelines */ 237 | margin-left:4px; 238 | margin-right:4px; 239 | vertical-align: middle; 240 | } 241 | 242 | /* Reference index & topics ----------------------------------------------- */ 243 | 244 | .ref-index th {font-weight: normal;} 245 | 246 | .ref-index td {vertical-align: top; min-width: 100px} 247 | .ref-index .icon {width: 40px;} 248 | .ref-index .alias {width: 40%;} 249 | .ref-index-icons .alias {width: calc(40% - 40px);} 250 | .ref-index .title {width: 60%;} 251 | 252 | .ref-arguments th {text-align: right; padding-right: 10px;} 253 | .ref-arguments th, .ref-arguments td {vertical-align: top; min-width: 100px} 254 | .ref-arguments .name {width: 20%;} 255 | .ref-arguments .desc {width: 80%;} 256 | 257 | /* Nice scrolling for wide elements --------------------------------------- */ 258 | 259 | table { 260 | display: block; 261 | overflow: auto; 262 | } 263 | 264 | /* Syntax highlighting ---------------------------------------------------- */ 265 | 266 | pre, code, pre code { 267 | background-color: #f8f8f8; 268 | color: #333; 269 | } 270 | pre, pre code { 271 | white-space: pre-wrap; 272 | word-break: break-all; 273 | overflow-wrap: break-word; 274 | } 275 | 276 | pre { 277 | border: 1px solid #eee; 278 | } 279 | 280 | pre .img, pre .r-plt { 281 | margin: 5px 0; 282 | } 283 | 284 | pre .img img, pre .r-plt img { 285 | background-color: #fff; 286 | } 287 | 288 | code a, pre a { 289 | color: #375f84; 290 | } 291 | 292 | a.sourceLine:hover { 293 | text-decoration: none; 294 | } 295 | 296 | .fl {color: #1514b5;} 297 | .fu {color: #000000;} /* function */ 298 | .ch,.st {color: #036a07;} /* string */ 299 | .kw {color: #264D66;} /* keyword */ 300 | .co {color: #888888;} /* comment */ 301 | 302 | .error {font-weight: bolder;} 303 | .warning {font-weight: bolder;} 304 | 305 | /* Clipboard --------------------------*/ 306 | 307 | .hasCopyButton { 308 | position: relative; 309 | } 310 | 311 | .btn-copy-ex { 312 | position: absolute; 313 | right: 0; 314 | top: 0; 315 | visibility: hidden; 316 | } 317 | 318 | .hasCopyButton:hover button.btn-copy-ex { 319 | visibility: visible; 320 | } 321 | 322 | /* headroom.js ------------------------ */ 323 | 324 | .headroom { 325 | will-change: transform; 326 | transition: transform 200ms linear; 327 | } 328 | .headroom--pinned { 329 | transform: translateY(0%); 330 | } 331 | .headroom--unpinned { 332 | transform: translateY(-100%); 333 | } 334 | 335 | /* mark.js ----------------------------*/ 336 | 337 | mark { 338 | background-color: rgba(255, 255, 51, 0.5); 339 | border-bottom: 2px solid rgba(255, 153, 51, 0.3); 340 | padding: 1px; 341 | } 342 | 343 | /* vertical spacing after htmlwidgets */ 344 | .html-widget { 345 | margin-bottom: 10px; 346 | } 347 | 348 | /* fontawesome ------------------------ */ 349 | 350 | .fab { 351 | font-family: "Font Awesome 5 Brands" !important; 352 | } 353 | 354 | /* don't display links in code chunks when printing */ 355 | /* source: https://stackoverflow.com/a/10781533 */ 356 | @media print { 357 | code a:link:after, code a:visited:after { 358 | content: ""; 359 | } 360 | } 361 | 362 | /* Section anchors --------------------------------- 363 | Added in pandoc 2.11: https://github.com/jgm/pandoc-templates/commit/9904bf71 364 | */ 365 | 366 | div.csl-bib-body { } 367 | div.csl-entry { 368 | clear: both; 369 | } 370 | .hanging-indent div.csl-entry { 371 | margin-left:2em; 372 | text-indent:-2em; 373 | } 374 | div.csl-left-margin { 375 | min-width:2em; 376 | float:left; 377 | } 378 | div.csl-right-inline { 379 | margin-left:2em; 380 | padding-left:1em; 381 | } 382 | div.csl-indent { 383 | margin-left: 2em; 384 | } 385 | -------------------------------------------------------------------------------- /docs/pkgdown.js: -------------------------------------------------------------------------------- 1 | /* http://gregfranko.com/blog/jquery-best-practices/ */ 2 | (function($) { 3 | $(function() { 4 | 5 | $('nav.navbar').headroom(); 6 | 7 | Toc.init({ 8 | $nav: $("#toc"), 9 | $scope: $("main h2, main h3, main h4, main h5, main h6") 10 | }); 11 | 12 | if ($('#toc').length) { 13 | $('body').scrollspy({ 14 | target: '#toc', 15 | offset: $("nav.navbar").outerHeight() + 1 16 | }); 17 | } 18 | 19 | // Activate popovers 20 | $('[data-bs-toggle="popover"]').popover({ 21 | container: 'body', 22 | html: true, 23 | trigger: 'focus', 24 | placement: "top", 25 | sanitize: false, 26 | }); 27 | 28 | $('[data-bs-toggle="tooltip"]').tooltip(); 29 | 30 | /* Clipboard --------------------------*/ 31 | 32 | function changeTooltipMessage(element, msg) { 33 | var tooltipOriginalTitle=element.getAttribute('data-original-title'); 34 | element.setAttribute('data-original-title', msg); 35 | $(element).tooltip('show'); 36 | element.setAttribute('data-original-title', tooltipOriginalTitle); 37 | } 38 | 39 | if(ClipboardJS.isSupported()) { 40 | $(document).ready(function() { 41 | var copyButton = ""; 42 | 43 | $("div.sourceCode").addClass("hasCopyButton"); 44 | 45 | // Insert copy buttons: 46 | $(copyButton).prependTo(".hasCopyButton"); 47 | 48 | // Initialize tooltips: 49 | $('.btn-copy-ex').tooltip({container: 'body'}); 50 | 51 | // Initialize clipboard: 52 | var clipboard = new ClipboardJS('[data-clipboard-copy]', { 53 | text: function(trigger) { 54 | return trigger.parentNode.textContent.replace(/\n#>[^\n]*/g, ""); 55 | } 56 | }); 57 | 58 | clipboard.on('success', function(e) { 59 | changeTooltipMessage(e.trigger, 'Copied!'); 60 | e.clearSelection(); 61 | }); 62 | 63 | clipboard.on('error', function() { 64 | changeTooltipMessage(e.trigger,'Press Ctrl+C or Command+C to copy'); 65 | }); 66 | 67 | }); 68 | } 69 | 70 | /* Search marking --------------------------*/ 71 | var url = new URL(window.location.href); 72 | var toMark = url.searchParams.get("q"); 73 | var mark = new Mark("div.col-md-9"); 74 | if (toMark) { 75 | mark.mark(toMark, { 76 | accuracy: { 77 | value: "complementary", 78 | limiters: [",", ".", ":", "/"], 79 | } 80 | }); 81 | } 82 | 83 | /* Search --------------------------*/ 84 | /* Adapted from https://github.com/rstudio/bookdown/blob/2d692ba4b61f1e466c92e78fd712b0ab08c11d31/inst/resources/bs4_book/bs4_book.js#L25 */ 85 | // Initialise search index on focus 86 | var fuse; 87 | $("#search-input").focus(async function(e) { 88 | if (fuse) { 89 | return; 90 | } 91 | 92 | $(e.target).addClass("loading"); 93 | var response = await fetch($("#search-input").data("search-index")); 94 | var data = await response.json(); 95 | 96 | var options = { 97 | keys: ["what", "text", "code"], 98 | ignoreLocation: true, 99 | threshold: 0.1, 100 | includeMatches: true, 101 | includeScore: true, 102 | }; 103 | fuse = new Fuse(data, options); 104 | 105 | $(e.target).removeClass("loading"); 106 | }); 107 | 108 | // Use algolia autocomplete 109 | var options = { 110 | autoselect: true, 111 | debug: true, 112 | hint: false, 113 | minLength: 2, 114 | }; 115 | var q; 116 | async function searchFuse(query, callback) { 117 | await fuse; 118 | 119 | var items; 120 | if (!fuse) { 121 | items = []; 122 | } else { 123 | q = query; 124 | var results = fuse.search(query, { limit: 20 }); 125 | items = results 126 | .filter((x) => x.score <= 0.75) 127 | .map((x) => x.item); 128 | if (items.length === 0) { 129 | items = [{dir:"Sorry 😿",previous_headings:"",title:"No results found.",what:"No results found.",path:window.location.href}]; 130 | } 131 | } 132 | callback(items); 133 | } 134 | $("#search-input").autocomplete(options, [ 135 | { 136 | name: "content", 137 | source: searchFuse, 138 | templates: { 139 | suggestion: (s) => { 140 | if (s.title == s.what) { 141 | return `${s.dir} >
    ${s.title}
    `; 142 | } else if (s.previous_headings == "") { 143 | return `${s.dir} >
    ${s.title}
    > ${s.what}`; 144 | } else { 145 | return `${s.dir} >
    ${s.title}
    > ${s.previous_headings} > ${s.what}`; 146 | } 147 | }, 148 | }, 149 | }, 150 | ]).on('autocomplete:selected', function(event, s) { 151 | window.location.href = s.path + "?q=" + q + "#" + s.id; 152 | }); 153 | }); 154 | })(window.jQuery || window.$) 155 | 156 | 157 | -------------------------------------------------------------------------------- /docs/pkgdown.yml: -------------------------------------------------------------------------------- 1 | pandoc: 2.11.2 2 | pkgdown: 2.0.2 3 | pkgdown_sha: ~ 4 | articles: 5 | FigR_shareseq: FigR_shareseq.html 6 | FigR_stim: FigR_stim.html 7 | last_built: 2022-03-26T20:51Z 8 | urls: 9 | reference: https://buenrostrolab.github.io/FigR/reference 10 | article: https://buenrostrolab.github.io/FigR/articles 11 | 12 | -------------------------------------------------------------------------------- /docs/reference/Rplot001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/reference/Rplot001.png -------------------------------------------------------------------------------- /docs/reference/centerCounts.html: -------------------------------------------------------------------------------- 1 | 2 | Center single-cell ATAC-seq count data — centerCounts • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Function to center raw read counts for scATAC-seq data based on mean reads in features/rows (e.g. peaks) per cell

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    centerCounts(obj, doInChunks = TRUE, chunkSize = 1000)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    obj
    69 |

    Either a RangedSummarizedExperiment-class or dgeMatrix-class object of the single-cell ATAC data (peaks x cells) to center raw data for

    70 |
    doInChunks
    71 |

    boolean value whether or not to score cells in chunks (useful for large scATAC datasets of > 5,000 cells). If TRUE, cells are centered sequentially in chunks of size=1000 cells at a time to avoid memory limitations, and eventually merged (column-wise). Overriden and set to TRUE if > 10,000 cells in dataset

    72 |
    chunkSize
    73 |

    numeric specifying the number of cells to perform centering for at once, if running in chunks (to save memory). Default is 1000

    74 |
    75 |
    76 |

    Value

    77 |

    Either a RangedSummarizedExperiment-class or dgeMatrix-class object with counts centered by mean reads in peaks per cell

    78 |
    79 |
    80 |

    Author

    81 |

    Vinay Kartha

    82 |
    83 | 84 |
    86 | 87 | 88 |
    91 | 92 | 95 | 96 |
    97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /docs/reference/extractTFNames.html: -------------------------------------------------------------------------------- 1 | 2 | Fetch TF names — extractTFNames • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    This function fetches TF names from full motif IDs (see https://github.com/GreenleafLab/chromVARmotifs)

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    extractTFNames(motifIDs)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    motifIDs
    69 |

    vector of full motif IDs that are part of the original human or mouse pwms matrix (see https://github.com/GreenleafLab/chromVARmotifs)

    70 |
    71 |
    72 |

    Value

    73 |

    a vector of TF names extracted from the full motif ID (if older format with '_'), or returned as is otherwise

    74 |
    75 |
    76 |

    Author

    77 |

    Vinay Kartha

    78 |
    79 | 80 |
    82 | 83 | 84 |
    87 | 88 | 91 | 92 |
    93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | -------------------------------------------------------------------------------- /docs/reference/figures/FigR.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/reference/figures/FigR.PNG -------------------------------------------------------------------------------- /docs/reference/figures/PBMCs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/reference/figures/PBMCs.png -------------------------------------------------------------------------------- /docs/reference/figures/skinv2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/docs/reference/figures/skinv2.png -------------------------------------------------------------------------------- /docs/reference/getDORCScores.html: -------------------------------------------------------------------------------- 1 | 2 | DORC scATAC-seq score summarization for single cells — getDORCScores • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Function to compute single cell DORC scores for each gene identified as a DORC (see runGenePeakcorr for determining DORCs through peak-gene correlations)

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    getDORCScores(
     64 |   ATAC.se,
     65 |   dorcTab,
     66 |   normalizeATACmat = TRUE,
     67 |   geneList = NULL,
     68 |   nCores = 4
     69 | )
    70 |
    71 | 72 |
    73 |

    Arguments

    74 |
    ATAC.se
    75 |

    SummarizedExperiment object of the scATAC-seq reads in peak counts.

    76 |
    dorcTab
    77 |

    data.frame object containing significant peak-gene pairs using which DORC scores will be computed. Must be a filtered set returned from runGenePeakcorr. IMPORTANT: Make sure the exact same scATAC SE (peak set) was used when determining DORCs that is used here to get corresponding DORC peak counts

    78 |
    normalizeATACmat
    79 |

    boolean indicating whether or not to normalize the counts present in the ATAC.se object prior to summing peak counts per gene. Default is TRUE (i.e. assumes peak counts are raw).

    80 |
    geneList
    81 |

    character vector specifying a subset of genes to compute scores for. Useful if you already have a set list of DORCs and you only want to compute scores for those genes/peaks.

    82 |
    nCores
    83 |

    numeric indicating the number of cores to use if parallelizing tasks

    84 |
    85 |
    86 |

    Value

    87 |

    a Matrix object of scores pertaining to the sum of normalized scATAC peak counts per gene, as determined for significant gene-peak pairs when calling DORCs

    88 |
    89 |
    90 |

    Author

    91 |

    Vinay Kartha

    92 |
    93 | 94 |
    96 | 97 | 98 |
    101 | 102 | 105 | 106 |
    107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | -------------------------------------------------------------------------------- /docs/reference/motifPeakZtest.html: -------------------------------------------------------------------------------- 1 | 2 | Peak-based TF motif enrichment Z-test — motifPeakZtest • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Wrapper function to assess a specific set of peaks for enrichment with respect to TF binding motifs using a Z test after adjusting for GC bias and Tn5 accessibility

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    motifPeakZtest(peakSet, bgPeaks, tfMat)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    peakSet
    69 |

    vector of peak indices you wish to test for motif enrichment

    70 |
    bgPeaks
    71 |

    background peaks matrix returned by getBackgroundPeaks function in chromVAR

    72 |
    tfMat
    73 |

    binary match sparseMatrix object of (reference) peaks by TF motifs returned by matchMotifs function

    74 |
    75 |
    76 |

    Value

    77 |

    data frame of motif enrichment results rank sorted by significance and frequency of motifs in the peakset, respectively

    78 |
    79 |
    80 |

    Author

    81 |

    Vinay Kartha, Samuel Rose, and Jason D. Buenrostro

    82 |
    83 | 84 |
    86 | 87 | 88 |
    91 | 92 | 95 | 96 |
    97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | -------------------------------------------------------------------------------- /docs/reference/pairCells.html: -------------------------------------------------------------------------------- 1 | 2 | Pair cells — pairCells • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Wrapper function for running ATAC/RNA pairing in cell chunks using co-embedding components

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    pairCells(ATAC, RNA, keepUnique = FALSE, ...)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    ATAC
    69 |

    combined co-embedding components matrix of the ATAC cells (e.g. CCA). Must have valid ATAC cell barcode names as the rownames.

    70 |
    RNA
    71 |

    same as `ATAC`, but for RNA cells. Must have valid RNA cell barcode names as the rownames (unique from ATAC cell barcodes), and have the same number of components (columns) as the `ATAC` matrix

    72 |
    keepUnique
    73 |

    boolean indicating whether or not to remove any resulting many-to-many ATAC-RNA paired cells returned by the geodesic pairing method (depending on what the `max_multimatch` parameter is set to in FigR[cell_pairing], which defaults to 5). Default is FALSE, meaning in the returned pairing, there can a single cell in the larger dataset paired to upto `max_multimatch` cells in the smaller dataset. See FigR[cell_pairing] for more details. If set to TRUE, we further filter pairs and return for each cell in the larger dataset the best match in the smaller dataset (among the multiple options, if any) based on the min euclidean distances between pair options (in the supplied reduced dimension space). Useful for RNA to ATAC cell cluster label transfer (since each ATAC cell can only acquire a single cluster identity based on the best RNA cell match), but not required for downstream analyses (peak-gene correlations and TF-DORC associations)

    74 |
    ...
    75 |

    additional parameters passed to cell_pairing. Useful parameters for enabling a search solution include `search_range` and `min_subgraph_size`, which dictates how cells are potentially excluded from being paired

    76 |
    77 |
    78 |

    Value

    79 | 80 |
    81 |
    82 |

    Author

    83 |

    Vinay Kartha Yan Hu

    84 |
    85 | 86 |
    88 | 89 | 90 |
    93 | 94 | 97 | 98 |
    99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | -------------------------------------------------------------------------------- /docs/reference/plotDrivers.html: -------------------------------------------------------------------------------- 1 | 2 | Plot FigR scatter profile — plotDrivers • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Scatter plot visualization of filtered TF-DORC associations based on the enrichment of each motif among the queried DORC's peaks and the correlation of the TF RNA to the DORC accessibility score

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    plotDrivers(figR.d, marker, score.cut = 1, label = TRUE)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    figR.d
    69 |

    data.frame of results returned by runFigRGRN)

    70 |
    marker
    71 |

    character specifying a valid DORC gene to restrict TF drivers for

    72 |
    score.cut
    73 |

    numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1

    74 |
    label
    75 |

    boolean indicating whether or not to add text labels for TF drivers passing score filter

    76 |
    77 |
    78 |

    Value

    79 |

    a ggplot2 object of the scatter plot of predicted TF drivers for the specified DORC

    80 |
    81 |
    82 |

    Author

    83 |

    Vinay Kartha

    84 |
    85 | 86 |
    88 | 89 | 90 |
    93 | 94 | 97 | 98 |
    99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | -------------------------------------------------------------------------------- /docs/reference/plotPairs.html: -------------------------------------------------------------------------------- 1 | 2 | Plot ATAC-RNA scOptMatch pairs — plotPairs • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Function to plot ATAC-RNA pairs in a joint embedding space (.e.g 2D UMAP of both ATAC and RNA cells)

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    plotPairs(ATAC, RNA, umap.df, max.show = 300, seed = 123, pairPointSize = 1)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    ATAC
    69 |

    character vector of the ATAC barcodes returned in the resulting pairing data frame returned by the cell_pairing function

    70 |
    RNA
    71 |

    character vector of the RNA barcodes returned in the resulting pairing data frame returned by the cell_pairing function

    72 |
    umap.df
    73 |

    data.frame that has the ATAC/RNA co-embedding UMAP 1/2 coordinates in the first and second columns, respectively. Must have valid ATAC and RNA barcodes as row names, which will be used to subset pairs

    74 |
    max.show
    75 |

    numeric specifying the maximum number of pairs to limit plotting to. Default is 300 (choose fewer for better visibility if the UMAP is crowded)

    76 |
    seed
    77 |

    numeric specifying a random seed to set for sampling pairs (for reproducibility). Default is 123

    78 |
    pairPointSize
    79 |

    scatter plot point size. Default is 1

    80 |
    81 |
    82 |

    Value

    83 |

    a ggplot scatter plot with user-provided coordinates, highlighting ATAC-RNA pairs

    84 |
    85 |
    86 |

    Author

    87 |

    Vinay Kartha

    88 |
    89 | 90 |
    92 | 93 | 94 |
    97 | 98 | 101 | 102 |
    103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | -------------------------------------------------------------------------------- /docs/reference/plotfigRHeatmap.html: -------------------------------------------------------------------------------- 1 | 2 | Plot FigR heatmap — plotfigRHeatmap • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Heatmap visualization of TF-DORC associations based on the regulation scores inferred by FigR

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    plotfigRHeatmap(figR.d, score.cut = 1, DORCs = NULL, TFs = NULL, ...)
    64 |
    65 | 66 |
    67 |

    Arguments

    68 |
    figR.d
    69 |

    data.frame of results returned by runFigRGRN).

    70 |
    score.cut
    71 |

    numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1

    72 |
    DORCs
    73 |

    character specifying valid DORC gene symbols to subset heatmap to. Default is NULL (no subsetting)

    74 |
    TFs
    75 |

    character specifying valid TF gene symbols to subset heatmap to. Default is NULL (no subsetting)

    76 |
    ...
    77 |

    additional parameters passed to the Heatmap)

    78 |
    79 |
    80 |

    Value

    81 |

    a TF-DORC filtered Heatmap generatd using Heatmap)

    82 |
    83 |
    84 |

    Author

    85 |

    Vinay Kartha

    86 |
    87 | 88 |
    90 | 91 | 92 |
    95 | 96 | 99 | 100 |
    101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /docs/reference/plotfigRNetwork.html: -------------------------------------------------------------------------------- 1 | 2 | Plot FigR Network — plotfigRNetwork • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Network visualization of TF-DORC associations based on the regulation scores inferred by FigR

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    plotfigRNetwork(
     64 |   figR.d,
     65 |   score.cut = 1,
     66 |   DORCs = NULL,
     67 |   TFs = NULL,
     68 |   weight.edges = FALSE
     69 | )
    70 |
    71 | 72 |
    73 |

    Arguments

    74 |
    figR.d
    75 |

    data.frame of results returned by runFigRGRN)

    76 |
    score.cut
    77 |

    numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1

    78 |
    DORCs
    79 |

    character specifying valid DORC gene symbols to subset heatmap to. Default is NULL (no subsetting)

    80 |
    TFs
    81 |

    character specifying valid TF gene symbols to subset heatmap to. Default is NULL (no subsetting)

    82 |
    weight.edge
    83 |

    boolean specifying whether or not to weight edges by FigR regulation score. Default is FALSE

    84 |
    85 |
    86 |

    Value

    87 |

    a network plot of the resulting filtered TF-DORC associations

    88 |
    89 |
    90 |

    Author

    91 |

    Vinay Kartha

    92 |
    93 | 94 |
    96 | 97 | 98 |
    101 | 102 | 105 | 106 |
    107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | -------------------------------------------------------------------------------- /docs/reference/rankDrivers.html: -------------------------------------------------------------------------------- 1 | 2 | Rank TF drivers — rankDrivers • FigR 6 | Skip to contents 7 | 8 | 9 |
    50 |
    51 |
    56 | 57 |
    58 |

    Ranked plot of TF activators and repressors based on their inferred regulation score

    59 |
    60 | 61 |
    62 |

    Usage

    63 |
    rankDrivers(
     64 |   figR.d,
     65 |   rankBy = c("meanScore", "nTargets"),
     66 |   myLabels = NULL,
     67 |   score.cut = NULL,
     68 |   interactive = FALSE
     69 | )
    70 |
    71 | 72 |
    73 |

    Arguments

    74 |
    figR.d
    75 |

    data.frame of results returned by runFigRGRN)

    76 |
    rankBy
    77 |

    character specifying one of "meanScore" or "nTargets" to either rank TFs by the mean regulation score across all genes, or by the total number of inferred activated or repressed targets passing a specified (absolute) regulation score, respectively

    78 |
    myLabels
    79 |

    character vector specifying the subset of TFs to highlight on the plot, if rankBy is set to "meanScore". Useful if you want to see where your TFs of interest lie. If NULL (Default), we label the top and bottom 95 percentile TFs

    80 |
    score.cut
    81 |

    numeric specifying the absolute regulation score to threshold TF-DORC connections on, only if rankBy is set to "nTargets". Default is 1 if "nTargets" and no custom cut-off is specified

    82 |
    interactive
    83 |

    boolean indicating whether or not to allow interactive hover-over utility for more label information (useful if visualizing too many TFs and labels are hard to distinguish). Default is FALSE

    84 |
    85 |
    86 |

    Value

    87 |

    a ggplot2 object of the resulting plot

    88 |
    89 |
    90 |

    Author

    91 |

    Vinay Kartha

    92 |
    93 | 94 |
    96 | 97 | 98 |
    101 | 102 | 105 | 106 |
    107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | -------------------------------------------------------------------------------- /docs/sitemap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | https://buenrostrolab.github.io/FigR/404.html 5 | 6 | 7 | https://buenrostrolab.github.io/FigR/articles/FigR_shareseq.html 8 | 9 | 10 | https://buenrostrolab.github.io/FigR/articles/FigR_stim.html 11 | 12 | 13 | https://buenrostrolab.github.io/FigR/articles/index.html 14 | 15 | 16 | https://buenrostrolab.github.io/FigR/authors.html 17 | 18 | 19 | https://buenrostrolab.github.io/FigR/index.html 20 | 21 | 22 | https://buenrostrolab.github.io/FigR/LICENSE-text.html 23 | 24 | 25 | https://buenrostrolab.github.io/FigR/reference/cell_pairing.html 26 | 27 | 28 | https://buenrostrolab.github.io/FigR/reference/centerCounts.html 29 | 30 | 31 | https://buenrostrolab.github.io/FigR/reference/dorcJPlot.html 32 | 33 | 34 | https://buenrostrolab.github.io/FigR/reference/extractTFNames.html 35 | 36 | 37 | https://buenrostrolab.github.io/FigR/reference/getDORCScores.html 38 | 39 | 40 | https://buenrostrolab.github.io/FigR/reference/index.html 41 | 42 | 43 | https://buenrostrolab.github.io/FigR/reference/motifPeakZtest.html 44 | 45 | 46 | https://buenrostrolab.github.io/FigR/reference/pairCells.html 47 | 48 | 49 | https://buenrostrolab.github.io/FigR/reference/plotDrivers.html 50 | 51 | 52 | https://buenrostrolab.github.io/FigR/reference/plotfigRHeatmap.html 53 | 54 | 55 | https://buenrostrolab.github.io/FigR/reference/plotfigRNetwork.html 56 | 57 | 58 | https://buenrostrolab.github.io/FigR/reference/plotMarker2D.html 59 | 60 | 61 | https://buenrostrolab.github.io/FigR/reference/plotPairs.html 62 | 63 | 64 | https://buenrostrolab.github.io/FigR/reference/rankDrivers.html 65 | 66 | 67 | https://buenrostrolab.github.io/FigR/reference/runFigRGRN.html 68 | 69 | 70 | https://buenrostrolab.github.io/FigR/reference/runGenePeakcorr.html 71 | 72 | 73 | https://buenrostrolab.github.io/FigR/reference/smoothScoresNN.html 74 | 75 | 76 | https://buenrostrolab.github.io/FigR/reference/splitAndFetch.html 77 | 78 | 79 | -------------------------------------------------------------------------------- /images/FigR.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/images/FigR.PNG -------------------------------------------------------------------------------- /images/PBMCs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/images/PBMCs.png -------------------------------------------------------------------------------- /images/skin.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/images/skin.PNG -------------------------------------------------------------------------------- /images/skinv2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/images/skinv2.png -------------------------------------------------------------------------------- /inst/CITATION: -------------------------------------------------------------------------------- 1 | citHeader("To cite FigR in publications please use:") 2 | 3 | citEntry( 4 | entry = "Article", 5 | title = "Functional Inference of Gene Regulation using Single-Cell Multi-Omics", 6 | author = "Vinay K. Kartha et al.", 7 | journal = "Cell Genomics", 8 | year = "2022", 9 | volume = "2", 10 | number = "9", 11 | pages = "100166", 12 | url = "https://www.sciencedirect.com/science/article/pii/S2666979X22001082", 13 | textVersion = paste( 14 | "Kartha, VK. et al. Functional Inference of Gene Regulation using Single-Cell Multi-Omics. Cell Genomics (2022)" 15 | ) 16 | ) 17 | 18 | -------------------------------------------------------------------------------- /man/cell_pairing.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellPairing.R 3 | \name{cell_pairing} 4 | \alias{cell_pairing} 5 | \title{Pair cells} 6 | \usage{ 7 | cell_pairing( 8 | ATACpcs, 9 | RNApcs, 10 | mode = "geodesic", 11 | tol = 1e-04, 12 | search_range = 0.2, 13 | max_multimatch = 5, 14 | umap_knn_k = 30, 15 | min_subgraph_size = 50, 16 | cca_umap_df = NULL, 17 | seed = 123 18 | ) 19 | } 20 | \arguments{ 21 | \item{ATACpcs}{combined co-embedding components matrix of the ATAC cells. Must have valid ATAC cell barcode names as the rownames.} 22 | 23 | \item{RNApcs}{combined co-embedding components matrix of the RNA cells. Must have valid RNA cell barcode names as the rownames (unique from ATAC cell barcodes), and have the same number of components (columns) as the `ATACpcs` matrix} 24 | 25 | \item{mode}{character specifying the pairing mode. Must be one of 'geodesic' (default) or 'greedy'.} 26 | 27 | \item{tol}{See \code{\link[optmatch]{fullmatch}} for more information on this parameter} 28 | 29 | \item{search_range}{This determines the size of the search knn window for allowed pairing. search_range * total number of cells = size of knn. Default is 0.2. Increasing this can take more time since we have to evaluate over more possible pairs} 30 | 31 | \item{max_multimatch}{Maximum number of cells in the larger dataset that is allowed to be matched to each cell in the smaller dataset (after up-sampling). Default is 5. This is only to allow for a solvable optmatch solution given geodesic constraints} 32 | 33 | \item{umap_knn_k}{Number of geodesic ATAC x RNA neighbors to consider in co-embedding graph} 34 | 35 | \item{min_subgraph_size}{Minimum number of cells (ATAC/RNA each) needed for pairing in a given subgraph. Will skip subgraphs with fewer than these cells.Default is 50 cells. Useful to set this to the smallest cell cluster size you might have in the data} 36 | 37 | \item{cca_umap_df}{optional umap of all ATAC+RNA cells to visualize UMAP of cells from each chunk being paired, colored by subgraph} 38 | 39 | \item{seed}{numeric specifying seed to use for subgraph UMAP and for down-sampling in case subgraphs are imbalanced} 40 | } 41 | \value{ 42 | a data.frame object containing ATAC and RNA cell barcodes from the resulting pairing 43 | } 44 | \description{ 45 | Perform geodesic pairing using ATAC/RNA co-embedding components 46 | } 47 | \author{ 48 | Yan Hu, Vinay Kartha 49 | } 50 | -------------------------------------------------------------------------------- /man/centerCounts.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{centerCounts} 4 | \alias{centerCounts} 5 | \title{Center single-cell ATAC-seq count data} 6 | \usage{ 7 | centerCounts(obj, doInChunks = TRUE, chunkSize = 1000) 8 | } 9 | \arguments{ 10 | \item{obj}{Either a \code{\link[SummarizedExperiment]{RangedSummarizedExperiment-class}} or \code{\link[Matrix]{dgeMatrix-class}} object of the single-cell ATAC data (peaks x cells) to center raw data for} 11 | 12 | \item{doInChunks}{boolean value whether or not to score cells in chunks (useful for large scATAC datasets of > 5,000 cells). If TRUE, cells are centered sequentially in chunks of size=1000 cells at a time to avoid memory limitations, and eventually merged (column-wise). Overriden and set to TRUE if > 10,000 cells in dataset} 13 | 14 | \item{chunkSize}{numeric specifying the number of cells to perform centering for at once, if running in chunks (to save memory). Default is 1000} 15 | } 16 | \value{ 17 | Either a \code{\link[SummarizedExperiment]{RangedSummarizedExperiment-class}} or \code{\link[Matrix]{dgeMatrix-class}} object with counts centered by mean reads in peaks per cell 18 | } 19 | \description{ 20 | Function to center raw read counts for scATAC-seq data based on mean reads in features/rows (e.g. peaks) per cell 21 | } 22 | \author{ 23 | Vinay Kartha 24 | } 25 | -------------------------------------------------------------------------------- /man/dorcJPlot.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/DORCs.R 3 | \name{dorcJPlot} 4 | \alias{dorcJPlot} 5 | \title{DORC J scatter plot} 6 | \usage{ 7 | dorcJPlot( 8 | dorcTab, 9 | cutoff = 7, 10 | labelTop = 25, 11 | returnGeneList = FALSE, 12 | cleanLabels = TRUE, 13 | labelSize = 4, 14 | ... 15 | ) 16 | } 17 | \arguments{ 18 | \item{dorcTab}{data.frame object containing significant peak-gene pairs using which DORC scores will be computed. Must be a filtered set returned from \code{\link[FigR]{runGenePeakcorr}}. IMPORTANT: Make sure the exact same scATAC SE (peak set) was used when determining DORCs that is used here to get corresponding DORC peak counts} 19 | 20 | \item{cutoff}{numeric indicating cut-off to use for number of significant peaks per gene to call it a DORC. Default is 7 significant peaks per gene.} 21 | 22 | \item{labelTop}{numeric indicating the number of top genes to add labels for. Setting this to a very high number can lead to plot rendering difficulties (since labels get crowded).} 23 | 24 | \item{returnGeneList}{boolean indicating whether to also return the DORCs passing the provided filter. Default is FALSE (will just plot and nothing else)} 25 | 26 | \item{cleanLabels}{boolean indicating whether or not to try to have cleaner DORC gene labels. If TRUE, uses \code{\link[ggrepel]{geom_text_repel}}, if FALSE, will use regular \code{\link[ggplot2]{geom_text}}} 27 | 28 | \item{labelSize}{numeric indicating what to set label size to. Default is 4.} 29 | 30 | \item{...}{additional parameters passed to either \code{\link[ggrepel]{geom_text_repel}} (if cleanLabels is set to TRUE) or \code{\link[ggplot2]{geom_text}}. For example, set size to control font size, or segment.length or segment.color to control call-out segment length and color etc.} 31 | } 32 | \value{ 33 | a ggplot object of the DORC J plot. If returnGeneList is set to TRUE, then also returns the vector of DORC genes passing the specified threshold 34 | } 35 | \description{ 36 | Function to visualize genes based on number of significant gene-peak correlations (per gene), used to define DORCs 37 | } 38 | \author{ 39 | Vinay Kartha 40 | } 41 | -------------------------------------------------------------------------------- /man/extractTFNames.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{extractTFNames} 4 | \alias{extractTFNames} 5 | \title{Fetch TF names} 6 | \usage{ 7 | extractTFNames(motifIDs) 8 | } 9 | \arguments{ 10 | \item{motifIDs}{vector of full motif IDs that are part of the original human or mouse pwms matrix (see \url{https://github.com/GreenleafLab/chromVARmotifs})} 11 | } 12 | \value{ 13 | a vector of TF names extracted from the full motif ID (if older format with '_'), or returned as is otherwise 14 | } 15 | \description{ 16 | This function fetches TF names from full motif IDs (see \url{https://github.com/GreenleafLab/chromVARmotifs}) 17 | } 18 | \author{ 19 | Vinay Kartha 20 | } 21 | -------------------------------------------------------------------------------- /man/figures/FigR.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/man/figures/FigR.PNG -------------------------------------------------------------------------------- /man/figures/PBMCs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/man/figures/PBMCs.png -------------------------------------------------------------------------------- /man/figures/skinv2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/buenrostrolab/FigR/094f5aa036aa9dc09b85d60c13dd9ead7da416fd/man/figures/skinv2.png -------------------------------------------------------------------------------- /man/getDORCScores.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/DORCs.R 3 | \name{getDORCScores} 4 | \alias{getDORCScores} 5 | \title{DORC scATAC-seq score summarization for single cells} 6 | \usage{ 7 | getDORCScores( 8 | ATAC.se, 9 | dorcTab, 10 | normalizeATACmat = TRUE, 11 | geneList = NULL, 12 | nCores = 4 13 | ) 14 | } 15 | \arguments{ 16 | \item{ATAC.se}{SummarizedExperiment object of the scATAC-seq reads in peak counts.} 17 | 18 | \item{dorcTab}{data.frame object containing significant peak-gene pairs using which DORC scores will be computed. Must be a filtered set returned from \code{\link[FigR]{runGenePeakcorr}}. IMPORTANT: Make sure the exact same scATAC SE (peak set) was used when determining DORCs that is used here to get corresponding DORC peak counts} 19 | 20 | \item{normalizeATACmat}{boolean indicating whether or not to normalize the counts present in the ATAC.se object prior to summing peak counts per gene. Default is TRUE (i.e. assumes peak counts are raw).} 21 | 22 | \item{geneList}{character vector specifying a subset of genes to compute scores for. Useful if you already have a set list of DORCs and you only want to compute scores for those genes/peaks.} 23 | 24 | \item{nCores}{numeric indicating the number of cores to use if parallelizing tasks} 25 | } 26 | \value{ 27 | a Matrix object of scores pertaining to the sum of normalized scATAC peak counts per gene, as determined for significant gene-peak pairs when calling DORCs 28 | } 29 | \description{ 30 | Function to compute single cell DORC scores for each gene identified as a DORC (see \code{\link[FigR]{runGenePeakcorr}} for determining DORCs through peak-gene correlations) 31 | } 32 | \author{ 33 | Vinay Kartha 34 | } 35 | -------------------------------------------------------------------------------- /man/motifPeakZtest.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{motifPeakZtest} 4 | \alias{motifPeakZtest} 5 | \title{Peak-based TF motif enrichment Z-test} 6 | \usage{ 7 | motifPeakZtest(peakSet, bgPeaks, tfMat) 8 | } 9 | \arguments{ 10 | \item{peakSet}{vector of peak indices you wish to test for motif enrichment} 11 | 12 | \item{bgPeaks}{background peaks matrix returned by \code{\link[chromVAR]{getBackgroundPeaks}} function in chromVAR} 13 | 14 | \item{tfMat}{binary match \code{\link[Matrix]{sparseMatrix}} object of (reference) peaks by TF motifs returned by \code{\link[motifmatchr]{matchMotifs}} function} 15 | } 16 | \value{ 17 | data frame of motif enrichment results rank sorted by significance and frequency of motifs in the peakset, respectively 18 | } 19 | \description{ 20 | Wrapper function to assess a specific set of peaks for enrichment with respect to TF binding motifs using a Z test after adjusting for GC bias and Tn5 accessibility 21 | } 22 | \author{ 23 | Vinay Kartha, Samuel Rose, and Jason D. Buenrostro 24 | } 25 | -------------------------------------------------------------------------------- /man/pairCells.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellPairing.R 3 | \name{pairCells} 4 | \alias{pairCells} 5 | \title{Pair cells} 6 | \usage{ 7 | pairCells(ATAC, RNA, keepUnique = FALSE, ...) 8 | } 9 | \arguments{ 10 | \item{ATAC}{combined co-embedding components matrix of the ATAC cells (e.g. CCA). Must have valid ATAC cell barcode names as the rownames.} 11 | 12 | \item{RNA}{same as `ATAC`, but for RNA cells. Must have valid RNA cell barcode names as the rownames (unique from ATAC cell barcodes), and have the same number of components (columns) as the `ATAC` matrix} 13 | 14 | \item{keepUnique}{boolean indicating whether or not to remove any resulting many-to-many ATAC-RNA paired cells returned by the geodesic pairing method (depending on what the `max_multimatch` parameter is set to in {FigR}[cell_pairing], which defaults to 5). Default is FALSE, meaning in the returned pairing, there can a single cell in the larger dataset paired to upto `max_multimatch` cells in the smaller dataset. See {FigR}[cell_pairing] for more details. If set to TRUE, we further filter pairs and return for each cell in the larger dataset the best match in the smaller dataset (among the multiple options, if any) based on the min euclidean distances between pair options (in the supplied reduced dimension space). Useful for RNA to ATAC cell cluster label transfer (since each ATAC cell can only acquire a single cluster identity based on the best RNA cell match), but not required for downstream analyses (peak-gene correlations and TF-DORC associations)} 15 | 16 | \item{...}{additional parameters passed to \code{\link[FigR]{cell_pairing}}. Useful parameters for enabling a search solution include `search_range` and `min_subgraph_size`, which dictates how cells are potentially excluded from being paired} 17 | } 18 | \value{ 19 | 20 | } 21 | \description{ 22 | Wrapper function for running ATAC/RNA pairing in cell chunks using co-embedding components 23 | } 24 | \author{ 25 | Vinay Kartha Yan Hu 26 | } 27 | -------------------------------------------------------------------------------- /man/plotDrivers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/FigR.R 3 | \name{plotDrivers} 4 | \alias{plotDrivers} 5 | \title{Plot FigR scatter profile} 6 | \usage{ 7 | plotDrivers(figR.d, marker, score.cut = 1, label = TRUE) 8 | } 9 | \arguments{ 10 | \item{figR.d}{data.frame of results returned by \code{\link[FigR]{runFigRGRN}})} 11 | 12 | \item{marker}{character specifying a valid DORC gene to restrict TF drivers for} 13 | 14 | \item{score.cut}{numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1} 15 | 16 | \item{label}{boolean indicating whether or not to add text labels for TF drivers passing score filter} 17 | } 18 | \value{ 19 | a ggplot2 object of the scatter plot of predicted TF drivers for the specified DORC 20 | } 21 | \description{ 22 | Scatter plot visualization of filtered TF-DORC associations based on the enrichment of each motif among the queried DORC's peaks and the correlation of the TF RNA to the DORC accessibility score 23 | } 24 | \author{ 25 | Vinay Kartha 26 | } 27 | -------------------------------------------------------------------------------- /man/plotMarker2D.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{plotMarker2D} 4 | \alias{plotMarker2D} 5 | \title{Plot marker scores on single cell scatter plots} 6 | \usage{ 7 | plotMarker2D( 8 | df, 9 | markers, 10 | markerMat, 11 | pointSize = 0.5, 12 | plotClean = TRUE, 13 | rasteRize = TRUE, 14 | splitBy = NULL, 15 | minCutoff = NULL, 16 | maxCutoff = NULL, 17 | colorPalette = "solar_extra", 18 | legend.position = "bottom", 19 | showDataRange = TRUE, 20 | combine = TRUE, 21 | ... 22 | ) 23 | } 24 | \arguments{ 25 | \item{df}{data.frame object of 2-D coordinates, where each row is a cell and the first two columns corresponds to the first (x-axis) and second (y-axis) dimensions to use for the plot (e.g. UMAP coordinates). Can have additional cell metadata columns used for splitting (see splitBy parameter)} 26 | 27 | \item{markers}{character vector of markers to visualize (can list multiple). Must be one of the rownames in markerMat} 28 | 29 | \item{markerMat}{matrix of scores containing markers to visualize. Can be a sparse matrix. Must have rownames} 30 | 31 | \item{pointSize}{integer specifying point size to use for ggplot (passed to the geom_point() layer in ggplot). Default is 0.5} 32 | 33 | \item{plotClean}{boolean indicating whether or not to return a 'clean' plot without any axes} 34 | 35 | \item{rasteRize}{boolean indicating whether to use raster point rendering (to avoid giant file sizes and too many point layers in PDFs). Requires ggrastr package if set to TRUE (Default)} 36 | 37 | \item{splitBy}{character indicating a single variable to split cells by using facets when visualizing. Must be a valid column name in df} 38 | 39 | \item{minCutoff}{cut off to use for capping minimum values prior to visualization. Can either be a raw numeric value, a percentile value cut-off (0-1) or the number of standard deviations below the mean, used to set the minimum value in the dataset prior to plotting. For percentiles, must be a character with 'q' before the percentile cut-off value (e.g. 'q0.1' for 10\%ile minimum). For standard deviation-based capping, must be a character with 'sd' before the cut-off value (e.g. 'sd2' for using 2 standard deviations below the mean as the minimum value displayed)} 40 | 41 | \item{maxCutoff}{cut off to use for capping maximum values prior to visualization. Can either be a raw numeric value, a percentile value cut-off (0-1) or the number of standard deviations above the mean, used to set the minimum value in the dataset prior to plotting. For percentiles, must be a character with 'q' before the percentile cut-off value (e.g. 'q0.9' for 90\%ile maximum). For standard deviation-based capping, must be a character with 'sd' before the cut-off value (e.g. 'sd2' for using 2 standard deviations above the mean as the maximum value displayed)} 42 | 43 | \item{colorPalette}{color palette name specification to use for coloring points. Default is "solar_extra". See \href{https://github.com/caleblareau/BuenColors}{BuenColors} package developed by Caleb Lareau for more palette options} 44 | 45 | \item{legend.position}{character specifying where to place the legend. Valid options are "top", "bottom", "left", "right", or "none" (to remove the legend completely). Default is bottom} 46 | 47 | \item{showDataRange}{boolean indicating whether or not to show the data numeric range in the legends (only applies if legends are being displayed). Default is TRUE. If set to FALSE, just shows as min and max} 48 | 49 | \item{combine}{boolean indicating whether or not to merge plots and display as grid.Default is TRUE} 50 | 51 | \item{...}{extra parameters passed to cowplot's \code{\link[cowplot]{plot_grid}} function to control organization of plot grids. Useful parameters include nrow and ncol that control the number of rows and columns in the layout, respectively} 52 | } 53 | \value{ 54 | If a single marker is queried, or combine is set to TRUE for multiple markers, a ggplot object will be printed to graphics window unless assigned to variable. If combine is set to FALSE, then a list object of individual plots per marker is returned 55 | } 56 | \description{ 57 | Function to plot variable of interest (e.g. scATAC-seq gene score, motif score, scRNA-seq expression etc.) onto existing tSNE/UMAP coordinates of single cell clusters 58 | } 59 | \author{ 60 | Vinay Kartha 61 | } 62 | -------------------------------------------------------------------------------- /man/plotPairs.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellPairing.R 3 | \name{plotPairs} 4 | \alias{plotPairs} 5 | \title{Plot ATAC-RNA scOptMatch pairs} 6 | \usage{ 7 | plotPairs(ATAC, RNA, umap.df, max.show = 300, seed = 123, pairPointSize = 1) 8 | } 9 | \arguments{ 10 | \item{ATAC}{character vector of the ATAC barcodes returned in the resulting pairing data frame returned by the \code{\link[FigR]{cell_pairing}} function} 11 | 12 | \item{RNA}{character vector of the RNA barcodes returned in the resulting pairing data frame returned by the \code{\link[FigR]{cell_pairing}} function} 13 | 14 | \item{umap.df}{data.frame that has the ATAC/RNA co-embedding UMAP 1/2 coordinates in the first and second columns, respectively. Must have valid ATAC and RNA barcodes as row names, which will be used to subset pairs} 15 | 16 | \item{max.show}{numeric specifying the maximum number of pairs to limit plotting to. Default is 300 (choose fewer for better visibility if the UMAP is crowded)} 17 | 18 | \item{seed}{numeric specifying a random seed to set for sampling pairs (for reproducibility). Default is 123} 19 | 20 | \item{pairPointSize}{scatter plot point size. Default is 1} 21 | } 22 | \value{ 23 | a ggplot scatter plot with user-provided coordinates, highlighting ATAC-RNA pairs 24 | } 25 | \description{ 26 | Function to plot ATAC-RNA pairs in a joint embedding space (.e.g 2D UMAP of both ATAC and RNA cells) 27 | } 28 | \author{ 29 | Vinay Kartha 30 | } 31 | -------------------------------------------------------------------------------- /man/plotfigRHeatmap.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/FigR.R 3 | \name{plotfigRHeatmap} 4 | \alias{plotfigRHeatmap} 5 | \title{Plot FigR heatmap} 6 | \usage{ 7 | plotfigRHeatmap(figR.d, score.cut = 1, DORCs = NULL, TFs = NULL, ...) 8 | } 9 | \arguments{ 10 | \item{figR.d}{data.frame of results returned by \code{\link[FigR]{runFigRGRN}}).} 11 | 12 | \item{score.cut}{numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1} 13 | 14 | \item{DORCs}{character specifying valid DORC gene symbols to subset heatmap to. Default is NULL (no subsetting)} 15 | 16 | \item{TFs}{character specifying valid TF gene symbols to subset heatmap to. Default is NULL (no subsetting)} 17 | 18 | \item{...}{additional parameters passed to the \code{\link[ComplexHeatmap]{Heatmap}})} 19 | } 20 | \value{ 21 | a TF-DORC filtered Heatmap generatd using \code{\link[ComplexHeatmap]{Heatmap}}) 22 | } 23 | \description{ 24 | Heatmap visualization of TF-DORC associations based on the regulation scores inferred by FigR 25 | } 26 | \author{ 27 | Vinay Kartha 28 | } 29 | -------------------------------------------------------------------------------- /man/plotfigRNetwork.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/FigR.R 3 | \name{plotfigRNetwork} 4 | \alias{plotfigRNetwork} 5 | \title{Plot FigR Network} 6 | \usage{ 7 | plotfigRNetwork( 8 | figR.d, 9 | score.cut = 1, 10 | DORCs = NULL, 11 | TFs = NULL, 12 | weight.edges = FALSE, 13 | TFnodecol = "Tomato", 14 | DORCnodecol = "Sky Blue", 15 | posEdgecol = "Forest Green", 16 | negEdgecol = "Purple", 17 | labelSize = 13, 18 | showLegend = TRUE 19 | ) 20 | } 21 | \arguments{ 22 | \item{figR.d}{data.frame of results returned by \code{\link[FigR]{runFigRGRN}})} 23 | 24 | \item{score.cut}{numeric specifying the absolute regulation score to threshold TF-DORC connections on. Default is 1} 25 | 26 | \item{DORCs}{character specifying valid DORC gene symbols to subset heatmap to. Default is NULL (no subsetting)} 27 | 28 | \item{TFs}{character specifying valid TF gene symbols to subset heatmap to. Default is NULL (no subsetting)} 29 | 30 | \item{TFnodecol}{character specifying valid color name to use for TF nodes. Default is Tomato} 31 | 32 | \item{DORCnodecol}{character specifying valid color name to use for DORC nodes. Default is Sky Blue} 33 | 34 | \item{posEdgecol}{character specifying valid color name to use for Activating edges between TFs and DORCs. Default is Forest Green} 35 | 36 | \item{negEdgecol}{character specifying valid color name to use for Repressive edges between TFs and DORCs. Default is Purple} 37 | 38 | \item{labelSize}{numeric specifying font size to use for all labels. Default is 13} 39 | 40 | \item{showLegend}{boolean indicating whether to show color legend. Default is TRUE} 41 | 42 | \item{weight.edge}{boolean specifying whether or not to weight edges by FigR regulation score. Default is FALSE} 43 | } 44 | \value{ 45 | a network plot of the resulting filtered TF-DORC associations 46 | } 47 | \description{ 48 | Network visualization of TF-DORC associations based on the regulation scores inferred by FigR 49 | } 50 | \author{ 51 | Vinay Kartha 52 | } 53 | -------------------------------------------------------------------------------- /man/rankDrivers.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/FigR.R 3 | \name{rankDrivers} 4 | \alias{rankDrivers} 5 | \title{Rank TF drivers} 6 | \usage{ 7 | rankDrivers( 8 | figR.d, 9 | rankBy = c("meanScore", "nTargets"), 10 | myLabels = NULL, 11 | score.cut = NULL, 12 | interactive = FALSE 13 | ) 14 | } 15 | \arguments{ 16 | \item{figR.d}{data.frame of results returned by \code{\link[FigR]{runFigRGRN}})} 17 | 18 | \item{rankBy}{character specifying one of "meanScore" or "nTargets" to either rank TFs by the mean regulation score across all genes, or by the total number of inferred activated or repressed targets passing a specified (absolute) regulation score, respectively} 19 | 20 | \item{myLabels}{character vector specifying the subset of TFs to highlight on the plot, if rankBy is set to "meanScore". Useful if you want to see where your TFs of interest lie. If NULL (Default), we label the top and bottom 95 percentile TFs} 21 | 22 | \item{score.cut}{numeric specifying the absolute regulation score to threshold TF-DORC connections on, only if rankBy is set to "nTargets". Default is 1 if "nTargets" and no custom cut-off is specified} 23 | 24 | \item{interactive}{boolean indicating whether or not to allow interactive hover-over utility for more label information (useful if visualizing too many TFs and labels are hard to distinguish). Default is FALSE} 25 | } 26 | \value{ 27 | a ggplot2 object of the resulting plot 28 | } 29 | \description{ 30 | Ranked plot of TF activators and repressors based on their inferred regulation score 31 | } 32 | \author{ 33 | Vinay Kartha 34 | } 35 | -------------------------------------------------------------------------------- /man/runFigRGRN.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/FigR.R 3 | \name{runFigRGRN} 4 | \alias{runFigRGRN} 5 | \title{Infer FigR TF-DORC associations} 6 | \usage{ 7 | runFigRGRN( 8 | ATAC.se, 9 | dorcK = 30, 10 | dorcTab, 11 | n_bg = 50, 12 | genome, 13 | dorcMat, 14 | rnaMat, 15 | dorcGenes = NULL, 16 | nCores = 1 17 | ) 18 | } 19 | \arguments{ 20 | \item{ATAC.se}{SummarizedExperiment object of peak x cell scATAC-seq data, the same as used to compute DORCs using \code{\link[FigR]{runGenePeakcorr}}} 21 | 22 | \item{dorcK}{numeric specifying the number of dorc nearest-neighbors to pool peaks from for the motif enrichment per DORC. Default is 30, i.e. set to ~3 percent of total DORCs determined} 23 | 24 | \item{dorcTab}{data.frame object containing significant peak-gene pairs using which DORC scores will be computed. Must be a filtered set returned from \code{\link[FigR]{runGenePeakcorr}}. IMPORTANT: Make sure the exact same scATAC SE peak set was used when determining DORCs that is used here to get corresponding DORC peak counts} 25 | 26 | \item{n_bg}{number of background peaks to use for} 27 | 28 | \item{genome}{character specifying a valid genome assembly to use for peak GC content estimation and background peak determination. Must be one of "hg19","hg38", or "mm10", and requires the corresponding genomes package e.g. \code{\link[BSgenome.Hsapiens.UCSC.hg19]{BSgenome.Hsapiens.UCSC.hg19}} for hg19} 29 | 30 | \item{dorcMat}{Matrix object of smoothed single-cell DORC accessibility scores} 31 | 32 | \item{rnaMat}{Matrix object of smoothed single-cell RNA expression values} 33 | 34 | \item{dorcGenes}{character vector specifying the subset of DORCs to test, if not running on everything. Note: We still use the entire list of DORCs found in dorcMat to determine dorc KNNs from, but will only test and include results for these specified genes (also must exist in the provided RNA matrix rnaMat as rownames)} 35 | 36 | \item{nCores}{numeric specifying the number of cores to run DORCs in parallel. Default is 1, i.e. don't use parallel backend} 37 | } 38 | \value{ 39 | a data.frame with all TF-DORC motif enrichment and correlation associations, and the corresponding FigR regulation score for each association 40 | } 41 | \description{ 42 | Function to run TF motif-to-gene associations using reference DORC peak-gene mappings and TF RNA expression levels 43 | } 44 | \author{ 45 | Vinay Kartha 46 | } 47 | -------------------------------------------------------------------------------- /man/runGenePeakcorr.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/DORCs.R 3 | \name{runGenePeakcorr} 4 | \alias{runGenePeakcorr} 5 | \title{Gene-Peak correlations used for calling domains of regulatory chromatin (DORCs)} 6 | \usage{ 7 | runGenePeakcorr( 8 | ATAC.se, 9 | RNAmat, 10 | genome, 11 | geneList = NULL, 12 | windowPadSize = 50000, 13 | normalizeATACmat = TRUE, 14 | nCores = 4, 15 | keepPosCorOnly = TRUE, 16 | keepMultiMappingPeaks = FALSE, 17 | n_bg = 100, 18 | p.cut = NULL 19 | ) 20 | } 21 | \arguments{ 22 | \item{ATAC.se}{SummarizedExperiment object of the scATAC-seq reads in peak counts.} 23 | 24 | \item{RNAmat}{Matrix object of the normalized scRNA-seq counts. For example, this will be the normalized count data housed within the `@assays$RNA@data` field if processed using Seurat. Must have same number of cells (i.e. matched) with the scATAC-seq data} 25 | 26 | \item{genome}{character specifying the reference genome build to use. Must be one of "hg19", "hg38" or "mm10", with no default} 27 | 28 | \item{normalizeATACmat}{boolean indicating whether or not to normalize the counts present in the ATAC.se object prior to computing correlations. Default is TRUE (i.e. assumes peak counts in ATAC.se are raw)} 29 | 30 | \item{nCores}{numeric indicating the number of cores to use if parallelizing tasks} 31 | 32 | \item{keepPosCorOnly}{boolean indicating whether to only filter for positively correlated gene-peak associations (and hence assumes performing a right-tailed Z-test with permuted correlations). Default is TRUE (only keep positively correlated associations)} 33 | 34 | \item{keepMultiMappingPeaks}{boolean indicating whether or not to keep peaks mapping to more than 1 gene. Default is FALSE (i.e. force 1-1 mapping for peak-gene, keeping peak with higher correlation if mapping to more than one gene)} 35 | 36 | \item{n_bg}{numeric indicating the number of background correlations to compute per gene-peak pair. Default is 100 (increasing this can significantly increase run time)} 37 | 38 | \item{p.cut}{numeric indicating p-value cut-off to apply to gene-peak correlations. Default is NULL (i.e. don't apply any filtering of results). Good option is to set to 0.05} 39 | 40 | \item{TSSwindow}{numeric specifying the window size (in base pairs) to pad around either side of each TSS, to fetch overlapping peaks. Default is 50 kb (so 100 kb window is drawn arund each TSS)} 41 | } 42 | \value{ 43 | a data.frame of correlations for each gene-peak overlap pair, with the observed correlation level and significance p-value based on background correlations per pair 44 | } 45 | \description{ 46 | Function to compute correlation between RNA expression and peak accessibility for peaks falling within a window around each gene, across single cells, using background peak correlations for significance testing 47 | } 48 | \author{ 49 | Vinay Kartha 50 | } 51 | -------------------------------------------------------------------------------- /man/smoothScoresNN.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{smoothScoresNN} 4 | \alias{smoothScoresNN} 5 | \title{Smooth single cell matrix using cell kNNs} 6 | \usage{ 7 | smoothScoresNN(NNmat, mat, geneList = NULL, barcodesList = NULL, nCores = 1) 8 | } 9 | \arguments{ 10 | \item{NNmat}{matrix of K Nearest neighbor indices for each cell (row), where each column is one of K nearest neighbors per cell. See the \code{\link[FNN]{knn.index}} function for obtaining these K nearest neighbor maps. Rownames must be valid cell IDs.} 11 | 12 | \item{mat}{matrix of single cell scores. Rownames must be valid gene symbols, and column names must be valid cell IDs matching the rownames in the cell NN matrix.} 13 | 14 | \item{geneList}{vector of valid gene names to compute smoothed TSS accessibility scores for. If geneList is NULL, all genes (rows) in the TSS matrix are used} 15 | 16 | \item{barcodesList}{vector of valid barcode IDs to subset data using and compute smoothed TSS accessibility scores for. If barcodesList is NULL, all cell barcodes (columns) in the TSS matrix are used} 17 | 18 | \item{nCores}{integer specifying the number of cores to use, if running in parallel. Default is 1 (i.e. no parallelization)} 19 | } 20 | \value{ 21 | a matrix of scores for each gene TSS and each cell, smoothed over its K nearest neighbors 22 | } 23 | \description{ 24 | Method to smooth sparse scores (e.g. RNA expression, ATAC gene scores, or DORC scores) per cell per feature using cell K nearest neighbors (NNs). Useful for visualizing scores in single cells for tSNE and UMAP plots. 25 | } 26 | \author{ 27 | Vinay Kartha 28 | } 29 | -------------------------------------------------------------------------------- /man/splitAndFetch.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/utils.R 3 | \name{splitAndFetch} 4 | \alias{splitAndFetch} 5 | \title{Split and fetch string subparts} 6 | \usage{ 7 | splitAndFetch(vec, delim, part) 8 | } 9 | \arguments{ 10 | \item{vec}{character vector to apply splitting to} 11 | 12 | \item{delim}{character specifying the delimitor to separate string by} 13 | 14 | \item{part}{integer specifying the part to fetch after splitting} 15 | } 16 | \value{ 17 | substring based on splitting criteria 18 | } 19 | \description{ 20 | Function to split and fetch string components based on a specific delimiter 21 | } 22 | \examples{ 23 | my_string <- c("This_is_random_string.111","Yes_it_is.222") 24 | # Get first part splitting on _ 25 | splitAndFetch(vec=my_string,delim="_",part=1) 26 | # Get first two parts splitting on _ 27 | splitAndFetch(vec=my_string,delim="_",part=1:2) 28 | # Get second part splitting on . 29 | splitAndFetch(vec=my_string,delim=".",part=2) 30 | } 31 | \author{ 32 | Vinay Kartha 33 | } 34 | --------------------------------------------------------------------------------