#' RNAseq plot
#'
#'View RNAseq data for a given gene
#'
#' @param con A \code{SQLiteConnection} object
#' @param input_gene A vector of one or more ENSEMBL gene ids
#' @param table_name The table in the SQLite database containing the data. The table should have fields named
#' patient_id, gene_id and value where gene_id is an ensembl id. Default tcga_rnaseq_data
#' @return A ggplot2 object
#' @import ggplot2
#' @export
doRNAseqPlot <- function(con, input_gene, table_name='tcga_rnaseq_data') {
all_genes <- dplyr::src_sqlite(con@dbname) %>%
dplyr::tbl('human_genes') %>%
dplyr::collect() %>%
dplyr::select(gene_id, gene_name)
plot_data <- dplyr::src_sqlite(con@dbname) %>%
dplyr::tbl(table_name) %>%
dplyr::filter(gene_id == input_gene) %>%
dplyr::collect() %>%
dplyr::inner_join(all_genes, by='gene_id')
p <- ggplot(plot_data, aes(x=log2(value+0.1), fill=gene_id)) +
geom_density() +
geom_point(aes(y=-0.2), shape=21, position = position_jitter(h=0.1)) +
facet_wrap(~gene_name, ncol=2) +
theme_bw() +
coord_flip() +
ylab('') + xlab('log2RPKM') +
theme(legend.position='none',
axis.text.y=element_text(size=rel(2)),
axis.text.x=element_text(size=0),
axis.title=element_text(size=rel(2.5)),
strip.text=element_text(size=rel(3)))
return(p)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.