如何使用ggvenn为韦恩图的每个圆圈添加上标?
解决ggvenn韦恩图标签添加上标的问题
要实现带数学表达式上标的韦恩图标签,无需修改列表名称(列表名仅支持字符串),直接使用ggvenn的label_names参数传入表达式向量即可:
set.seed(20190708) genes <- paste("gene",1:1000,sep="") x <- list( A_vs_X = sample(genes,300), B_vs_P = sample(genes,525) ) # 构造带表达式的标签 custom_labels <- c( expression('A'^(tt/tx)~vs~X^(tw/ga)), expression('B'^(tt/tx)~vs~P^(tw/ga)) ) # 绘制带自定义上标标签的韦恩图 ggvenn::ggvenn(x, label_names = custom_labels)
关键点说明
expression()用于构造包含上标的数学表达式,其中^()实现上标效果,~用于添加空格分隔文本;label_names参数支持直接接收表达式向量,会自动解析并渲染为带格式的标签;- 无需尝试将表达式作为列表名称(列表名称只能是字符串类型,无法存储表达式对象),直接通过参数传入是最直接的解决方案。
内容的提问来源于stack exchange,提问作者emr2
相关产品推荐
相关产品推荐

