### ---------------
###
### Create: Yuan.Sh
### Date: 2022-05-17 09:54:47
### Email: yuansh3354@163.com
### Blog: https://blog.youkuaiyun.com/qq_40966210
### Fujian Medical University
### tips: View qc
### ---------------
############# Step.00 #############
# packages
library(Seurat)
library(stringr)
library(scales)
library(magrittr)
library(RColorBrewer)
library(ggplot2)
library(cowplot)
library(eoffice)
library(dplyr)
library(tidyr)
library(viridis)
library(reshape2)
library(ggpubr)
theme_set(theme_cowplot())
# show_col(use_colors)
# options
options(stringsAsFactors = F)
options(as.is = T)
qc_std_plot_helper = function(x) x +
scale_color_viridis() +
geom_point(size = 0.01, alpha = 0.3)
qc_std_plot <- function(seu_obj) {
qc_data <- as_tibble(FetchData(seu_obj, c("nCount_RNA", "nFeature_RNA", "pMT", "pHB", "pRP")))
plot_grid(
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), log2(nFeature_RNA), color = pMT))) +
geom_hline(yintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_hline(yintercept = log2(nFeature_upper), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), log2(nFeature_RNA), color = pHB))) +
geom_hline(yintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_hline(yintercept = log2(nFeature_upper), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), log2(nFeature_RNA), color = pRP))) +
geom_hline(yintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_hline(yintercept = log2(nFeature_upper), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), pMT, color = nFeature_RNA))) +
geom_hline(yintercept = pMT_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pMT_upper, color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), pHB, color = nFeature_RNA))) +
geom_hline(yintercept = pHB_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pHB_upper, color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nCount_RNA), pRP, color = nFeature_RNA))) +
geom_vline(xintercept = log2(nCount_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nCount_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nFeature_RNA), pMT, color = nCount_RNA))) +
geom_hline(yintercept = pMT_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pMT_upper, color = "red", linetype = 2) +
geom_vline(xintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nFeature_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nFeature_RNA), pHB, color = nCount_RNA))) +
geom_hline(yintercept = pHB_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pHB_upper, color = "red", linetype = 2) +
geom_vline(xintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nFeature_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(log2(nFeature_RNA), pRP, color = nCount_RNA))) +
geom_vline(xintercept = log2(nFeature_lower), color = "red", linetype = 2) +
geom_vline(xintercept = log2(nFeature_upper), color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(pRP, pMT, color = nCount_RNA))) +
geom_hline(yintercept = pMT_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pMT_upper, color = "red", linetype = 2),
qc_std_plot_helper(ggplot(qc_data, aes(pRP, pMT, color = nFeature_RNA))) +
geom_hline(yintercept = pMT_lower, color = "red", linetype = 2) +
geom_hline(yintercept = pMT_upper, color = "red", linetype = 2),
ggplot(gather(qc_data, key, value), aes(key, value)) +
geom_violin() +
facet_wrap(~key, scales = "free", ncol = 5),
ncol = 3, align = "hv"
)
}
Qc View
于 2022-05-17 10:22:05 首次发布