Skip to contents

Color blind friendly palette

Compatible with ggplot.

set.seed(596)
dsamp <- diamonds[sample(nrow(diamonds), 1000), ]
ggplot(dsamp, aes(carat, price)) +
  geom_point(aes(colour = clarity)) +
  scale_color_cb_friendly()

And get the colors directly:

cb_friendly_cols(1:16)
#>         blue light_orange  olive_green       purple         pink     sky_blue 
#>    "#2759F6"    "#FFD37D" "olivedrab3"    "#9176C8"    "#E93380"    "#4FAEEB" 
#>    blue_grey forest_green       yellow  dark_purple  dark_orange   army_green 
#>    "#92A6BC"    "#3C877B"     "yellow"    "#402999"    "#D5392C"    "#C3C380" 
#>        black    dark_grey   light_blue        brown 
#>      "black"   "darkgrey"  "lightblue"    "#661100"

This is the full palette:

Set projects

HCBC uses a structured based directory to organize projects. You can set up this by using:

tmp_dir=withr::local_tempdir()
bcbio_templates(type="base", outpath=tmp_dir)
#>  Getting templates from
#> '/home/runner/work/_temp/Library/bcbioR/templates/base'
#> list()
fs::dir_ls(tmp_dir, recurse=TRUE)
#> /tmp/RtmpzfQq8R/file206c136eb04f/README.md
#> /tmp/RtmpzfQq8R/file206c136eb04f/apps
#> /tmp/RtmpzfQq8R/file206c136eb04f/code
#> /tmp/RtmpzfQq8R/file206c136eb04f/code/placeholder.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/data
#> /tmp/RtmpzfQq8R/file206c136eb04f/data/readme
#> /tmp/RtmpzfQq8R/file206c136eb04f/information.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/meta
#> /tmp/RtmpzfQq8R/file206c136eb04f/meta/placeholder.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/example.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/placeholder
#> /tmp/RtmpzfQq8R/file206c136eb04f/scripts
#> /tmp/RtmpzfQq8R/file206c136eb04f/scripts/placeholder

We support multiple analyses type:

  • RNAseq
  • scRNAseq
  • ChipPseq

To get the example code for any of them you can use a similar command:

analysis_tmp=fs::path_join(c(tmp_dir, "reports"))
bcbio_templates(type="rnaseq", outpath=analysis_tmp)
#>  Getting templates from
#> '/home/runner/work/_temp/Library/bcbioR/templates/rnaseq'
#> list()
fs::dir_ls(analysis_tmp, recurse=TRUE)
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/00_libs
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/00_libs/FA.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/00_libs/load_data.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/01_quality_assessment
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/01_quality_assessment/QC.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/01_quality_assessment/params_qc-example.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/01_quality_assessment/params_qc.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/01_quality_assessment/run_markdown.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/02_differential_expression
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/02_differential_expression/DEG.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/02_differential_expression/params_de-example.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/02_differential_expression/params_de.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/02_differential_expression/run_markdown.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_comparative
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_comparative/Intersections.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_comparative/Pair-wise-comparison-analysis.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional/GSVA.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional/Immune-deconvolution.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional/Nonmodel_Organism_Pathway_Analysis.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional/params_immune_deconv.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/03_functional/params_nonmodel_org_pathways.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/04_gene_patterns
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/04_gene_patterns/WGCNA.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/04_gene_patterns/params_de-example.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/README.md
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/apps
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/example.Rmd
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/information.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/install_dependencies.R
#> /tmp/RtmpzfQq8R/file206c136eb04f/reports/placeholder

Use scrnaseq, teaseq or cosmx to get those other templates.