knitr::opts_chunk$set( collapse = TRUE, comment = "#>", fig.path = "man/figures/" )
cofeatureR is an R Package that provides functions for plotting cofeature matrices (aka. feature-sample matrices). For example:
library("cofeatureR") v1 <- c("RCOR1", "NCOR1", "LCOR", "RCOR1", "RCOR1", "RCOR1", "RCOR1") v2 <- c("sampleA", "sampleC", "sampleB", "sampleC", "sampleA", "sampleC", "sampleC") v3 <- c("Deletion", "Deletion", "SNV", "Rearrangement", "SNV", "Rearrangement", "SNV") feature.order <- c("RCOR1", "NCOR1", "LCOR") sample.id.order <- c("sampleA", "sampleB", "sampleC") in.df <- dplyr::data_frame(feature = v1, sampleID = v2, type = v3) fill.colors <- c("Deletion" = "Blue", "Rearrangement" = "Green", "SNV" = "Red") plot_cofeature_mat(in.df, tile.col = "black", feature.order = c("RCOR1", "LCOR", "NCOR1"), sample.id.order = c("sampleA", "sampleB", "sampleC"))
To get the released version from CRAN:
install.packages("cofeatureR")
You can also get cofeatureR through conda:
```{bash, eval = FALSE} conda install -c fongchun r-cofeaturer
To install the latest developmental version from github: ```r devtools::install_github("tinyheero/cofeatureR")
The main function of cofeatureR is the plot_cofeature_mat
function. It will produce a matrix plot (feature x sample) showing how the different "types" correlate between samples and features. This function only has one required input which is a data.frame containing 3 columns:
For instance in the field of cancer genomics, we are often interested in knowing how different mutations (type) in different samples (sampleID) correlate between genes (feature). The input data.frame would have this format:
library("cofeatureR") v1 <- c("RCOR1", "NCOR1", "LCOR", "RCOR1", "RCOR1", "RCOR1", "RCOR1") v2 <- c("sampleA", "sampleC", "sampleB", "sampleC", "sampleA", "sampleC", "sampleC") v3 <- c("Deletion", "Deletion", "SNV", "Rearrangement", "SNV", "Rearrangement", "SNV") in.df <- dplyr::data_frame(feature = v1, sampleID = v2, type = v3) knitr::kable(in.df)
This input data.frame can now be used as input into plot_cofeature_mat
:
plot_cofeature_mat(in.df, tile.col = "black")
Notice how we are NOT restricted to having only one type per feature-sample. In other words, a feature-sample may have multiple types and plot_cofeature_mat
will display all of the types.
There are many different parameters that can be passed into the plot_cofeature_mat
for customization of the plot. For instance:
fill.colors
: Custom colors for each type.feature.order
and sample.id.order
: Custom ordering of features and samples respectively.tile.col
: Add borders around each type.citation(package = "cofeatureR")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.