visualization_forest.Rd可视化,绘制森林图
visualization_forest(
data_input = "",
col_effect_size = "or",
col_effect_size_lci95 = "or_lci95",
col_effect_size_uci95 = "or_uci95",
digits = 3,
col_labeltext = c("probeID", "p_SMR"),
col_labeltext_rename = NULL,
effect_size_cut_off = 1,
group_num = 1,
group_color = c("#E64B35FF", "#4DBBD5FF", "#00A087FF", "#3C5488FF", "#F39B7FFF",
"#8491B4FF", "#91D1C2FF", "#DC0000FF"),
group_line_color = "black",
group_line_lwd = 2,
bg_zebra_add = T,
bg_zebra_color = "#EFEFEF",
xlog = F,
xlab = "effect size(OR)",
boxsize = 0.3,
vertices = T,
graph_pos = NULL,
graph_width = 40,
clip = c(-Inf, Inf),
xticks = NULL,
ci_pos = NULL,
ci_pos_name = "OR(95% CI)",
ci_pos_sep = "-",
title = NULL,
pdf_out = F,
width = 10,
height = 6,
out_path = "./",
out_prefix = "my"
)用于绘制森林图的数据,为data.frame的形式
data_input中,效应值对应的列名,默认为"or"
data_input中,效应值的95%置信区间下界对应的列名,默认为"or_lci95"
data_input中,效应值的95%置信区间上界对应的列名,默认为"or_uci95"
如果展示效应值(95%CI),对应数值的小数位置,默认是3。
绘制森林图中,需要展示的列。需要和data_input中的列名一致。
绘制森林图中,需要展示的列。对col_labeltext进行重命名,用于绘图展示。
绘制森林图中,区分效应值方向的界值。如果是效应值为or,则对应的界值为1;如果效应值是beta,则对应的界值为0。
是否按照分组进行绘制森林图,每一组中的数量是多少,默认为1。每个组内的数量应保持一致。
是否按照分组进行绘制森林图,每一组中对应的颜色设置。可使用默认,或者自己修改颜色。
是否按照分组进行绘制森林图,每一组中95%CI对应的线条颜色设置。默认为黑色。
是否按照分组进行绘制森林图,每一组中95%CI对应的线条宽度设置。默认为2。
是否增加类似于斑马线的背景条纹,可以是T或者F。默认为T,即增加斑马线条纹。
当bg_zebra_add=T的时候,设置斑马线条纹的颜色,默认为"#EFEFEF"。
绘制森林图中,是否对x轴取log转换
绘制森林图中,x轴的标题
估计值对应的图像大小,默认为0.3。
95%CI线条的两端是否增加顶点,可以是T或者F。默认为T,即增加顶点。
绘制森林图的图部分,图位于哪一列。
绘制森林图的图部分,图的宽度,默认为40。
展示指定区间内的结果,默认为c(-Inf, Inf),即展示所有区间内的结果。
指定x轴坐标的刻度线,默认为NULL,即系统根据情况自动设置。
如果展示效应值(95%CI),对应文字位于哪一列。默认是NULL,即不展示。
如果展示效应值(95%CI),对应的列名,用于绘图展示。
如果展示效应值(95%CI),指定用于分割上下95%CI的分隔符,默认为"-"。
设置图的标题,默认为NULL。
是否输出pdf文件,默认为F。可用返回的图片进行微调之后,再进行输出pdf文件。
输出pdf文件的宽度,默认为10
输出pdf文件的高度,默认为6
输出pdf文件的路径,默认当前路径
输出pdf文件的前缀,默认“my”
森林图
# 该函数详细使用情况见语雀文档示例:《可视化→森林图Forest plot》
# 1. mqtl-gwas的smr分析结果读入和注释,以染色体1对应的smr分析结果为例
smr_res <- data.table::fread("./results/mqtl2gwas/smr/m2gwas_bl_mqtl_lite_chr1_ieu-a-31.smr",data.table = F)
# 2. 计算OR
smr_res <- append_col_or(dat = smr_res)
# 3.绘制森林图
visualization_forest(data_input =smr_res[1:10,],
col_labeltext = c("probeID","p_SMR"),
col_labeltext_rename = c("probe ID","p value"),
xlog = T,
digits = 2, # 设置or(95%ci)的小数位置
graph_pos = 3,
ci_pos = 3,
ci_pos_sep = ",", # ci_pos_sep用于设置上下95%ci的分隔符
pdf_out = T,
height = 10,
width = 8,
out_prefix = "my")