使用ggtree绘制系统发育树时找不到ggtitle函数,如何设置图标题?
解决ggtree绘图的两个问题
1. 处理负枝长报错
按照报错提示,先添加忽略负枝长的全局设置,放在脚本开头:
options(ignore.negative.edge = TRUE)
2. 解决找不到ggtitle的问题
有两种可靠方案:
- 方案一:显式加载ggplot2
ggtitle是ggplot2的核心函数,虽然ggtree依赖ggplot2,但部分场景下需要显式加载才能直接调用:
library(ggplot2)
加载后即可正常使用ggtitle('DEG')。
- 方案二:用
labs()替代ggtitle()
ggplot2的labs()函数可统一设置图标题、坐标轴标签等,兼容性更强,直接替换原脚本中的ggtitle('DEG'):
labs(title = 'DEG')
修改后的完整脚本
options(ignore.negative.edge = TRUE) library(ggtree) library(ggplot2) # 方案一需添加,方案二可省略 tree <- read.tree('fa/clustal.DEG20010516.input.newick') svg('fa/phylo.svg') ggtree(tree) + theme_tree2() + geom_tiplab(align=TRUE, linesize=0.5) + xlim(0,0.6) + labs(title = 'DEG') # 或ggtitle('DEG')(方案一) dev.off()
内容的提问来源于stack exchange,提问作者con
相关产品推荐
相关产品推荐

