Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >R语言ggplot2作图如何去掉图例中的NA

R语言ggplot2作图如何去掉图例中的NA

作者头像
用户7010445
发布于 2021-07-12 07:43:38
发布于 2021-07-12 07:43:38
4.4K00
代码可运行
举报
运行总次数:0
代码可运行

遇到这个问题是在使用ggtree可视化展示进化树的时候,我想给进化树的枝分组映射颜色,对应的推文是跟着Nature Genetics学画图:R语言ggtree给进化树的枝分组映射颜色

  • 第一步是准备进化树文件
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(((T1:0.4861354076,T2:0.2834595428):0.942360715,(((T3:0.3184458097,T4:0.9622228269):0.4969661732,T5:0.6340993682):0.5032551708,(T6:0.4230469938,(T7:0.4677923333,T8:0.9081691455):0.9143169096):0.127433398):0.2515457012):0.994598245,(((T9:0.5027498226,((T10:0.4813749485,T11:0.3569870775):0.3243860274,((T12:0.5659668173,T13:0.9807865066):0.7416001905,T14:0.5768127355):0.6274776841):0.9836351147):0.8691583187,(((T15:0.8502649218,T16:0.2346612616):0.08215806563,T17:0.9881674468):0.228599695,(T18:0.9987408081,(T19:0.5551266309,(T20:0.5758777808,(T21:0.224845764,(T22:0.6372982597,T23:0.4310163704):0.08498473768):0.4325073974):0.4294439629):0.3755993766):0.6018975459):0.4390420518):0.631742816,((T24:0.3252783034,T25:0.757289035):0.8024020193,(T26:0.7088394067,((T27:0.7591199852,(T28:0.5608872538,T29:0.1161357744):0.424030208):0.343572702,T30:0.3030217977):0.4269757664):0.5842715173):0.07271609362):0.5977432837);
  • 第二步是准备表示分组的文件

image.png

加载需要用到的R包
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(treeio)
library(ggtree)
library(ggplot2)
读取树文件和分组信息
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tree<-read.tree("practice.tree")
df<-read.csv("tree_anno.csv",header=T)
分组信息和树文件整合到一起
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tree_1<-full_join(tree,df,by="label")
可视化展示树
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggtree(tree_1)+
  geom_tree(aes(color=group))+
  geom_tiplab(offset = 0.1)

image.png

这个结果右侧的图例最下方式有一个NA的,如果不想要那个NA加一行代码

scale_color_discrete(na.translate=FALSE)

参考链接是

https://stackoverflow.com/questions/45493163/ggplot-remove-na-factor-level-in-legend

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggtree(tree_1)+
  geom_tree(aes(color=group))+
  geom_tiplab(offset = 0.1)+
  scale_color_discrete(na.translate=FALSE)

这样就把图例去掉了

自定义颜色

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
colors<-c("#3cb346","#00abf0","#d75427","#2e409a")
ggtree(tree_1)+
  geom_tree(aes(color=group))+
  geom_tiplab(offset = 0.1)+
  scale_color_manual(values=colors,
                     na.translate=FALSE)

将图例的线更改的粗一点

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ggtree(tree_1)+
  geom_tree(aes(color=group))+
  geom_tiplab(offset = 0.1)+
  scale_color_manual(values=colors,
                     na.translate=FALSE)+
  #scale_color_discrete(na.translate=FALSE)
  guides(color=guide_legend(override.aes=list(size=5)))

image.png

欢迎大家关注我的公众号

小明的数据分析笔记本

需要示例数据和代码 点赞 点击在看 然后在后台留言 20210605 就可以了

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
跟着BMC genomics学作图:R语言ggplot2+ggtree进化树拼接三角热图
这里新学到的一个知识点是拼图的时候可以使用plot_spacer()函数占据一个空白位置
用户7010445
2021/10/25
1.9K0
跟着NatureCommunications学作图:R语言ggtree根据分组给进化树上色
https://www.nature.com/articles/s41467-022-29438-7
用户7010445
2023/01/06
1.4K0
跟着NatureCommunications学作图:R语言ggtree根据分组给进化树上色
跟着NatureGenetics学作图:R语言ggplot2做进化树图及添加不同形状的背景色块
https://www.nature.com/articles/s41588-022-01127-7#Sec31
用户7010445
2023/01/06
1.5K0
跟着NatureGenetics学作图:R语言ggplot2做进化树图及添加不同形状的背景色块
跟着Nature学作图:R语言ggtree给进化树的节点添加饼状图
https://www.nature.com/articles/s41586-022-04897-6
用户7010445
2023/01/06
6880
跟着Nature学作图:R语言ggtree给进化树的节点添加饼状图
跟着Nature学作图:R语言ggplot2+ggtree树图组合热图
1、进化树中挑选子集 2、进化树默认是左下角到右上角这种布局,如何调整成左上到右下角这种布局 3、进化树把某个clade压缩成三角性状 4、给进化树添加根小尾巴
用户7010445
2024/02/03
7600
跟着Nature学作图:R语言ggplot2+ggtree树图组合热图
跟着ISEM学作图:R语言ggtree+ggplot2组合进化树和气泡图
论文 Conserved and reproducible bacterial communities associate with extraradical hyphae of arbuscular mycorrhizal fungi image.png 今天的推文我们来重复一下论文中的 Figure 2 image.png 没有找到论文提供的原始数据,这里数据我自己构造一份 首先是左侧的进化树文件 (((A8:0.9735669859,((A5:0.7219205995,A9:0.53850
用户7010445
2022/05/23
1.3K0
跟着ISEM学作图:R语言ggtree+ggplot2组合进化树和气泡图
跟着Gut学画图:R语言ggtree包画弦图的简单小例子
今天的推文内容是模仿论文 Aberrant gut microbiota alters host metabolome and impacts renal failure in humans and rodents 中的Figure3A
用户7010445
2021/08/31
1.3K0
跟着Gut学画图:R语言ggtree包画弦图的简单小例子
R语言之系统进化树的美化
百度百科对进化树的定义是:在生物学中,用来表示物种之间的进化关系。生物分类学家和进化论者根据各类生物间的亲缘关系的远近,把各类生物安置在有分枝的树状的图表上,简明地表示生物的进化历程和亲缘关系。在进化树上每个叶子结点代表一个物种,如果每一条边都被赋予一个适当的权值,那么两个叶子结点之间的最短距离就可以表示相应的两个物种之间的差异程度。同时有很多算法应运而生主要包括:贝叶斯法(Bayesian),最大似然法(Maximum likelihood,ML),最大简约法(Maximum parsimony,MP),邻接法(Neighbor-Joining,NJ),最小进化法(Minimum Evolution,ME),类平均法(UPGMA)。与此同时相对应的软件也出现,下图总结来源于网络:
一粒沙
2019/07/31
5.5K0
R语言的ggtree展示进化树的一些常用操作
可以首先加上theme_tree2()函数显示出坐标轴范围,然后用xlim()函数更改坐标轴范围
用户7010445
2021/01/06
13.7K0
ggtree-给你的进化树盛世美颜
ggtree是ggplot2的拓展包,可以应用于进化树的绘制,还能对进化树丰富的注释分析。
作图丫
2022/03/29
11.7K0
ggtree-给你的进化树盛世美颜
如何使用R语言ggtree包在进化树上标记自己取样测序的样本
随着三代测序技术的发展和测序成本的下降,现在基于三代测序数据组装基因组做泛基因组的研究越来越多。虽然测序成本降低了许多,但也是相对于之前,做大规模的测序组装的费用也是非常昂贵的,现在通常的做法是如果做了大规模的二代测序,通常会利用这些数据做的进化树,然后根据进化树的分布在每一个类群里选取一些有代表性的个体去做三代测序组装。比如大豆cell发表的泛基因组论文,就是从2000多份材料里选择26份有代表性的材料。
用户7010445
2024/02/23
2330
如何使用R语言ggtree包在进化树上标记自己取样测序的样本
科研绘图系列:R语言绘制微生物物种系统发育树(phylogenetic tree)
物种系统发育树(Phylogenetic tree),也称为进化树或系统进化树,是一种以树状分支图形来表示各物种或基因之间的亲缘关系的图表。它利用生物的形态特征、分子序列(如DNA、RNA或蛋白质序列)等数据,通过数理统计算法来计算生物之间的进化关系,从而构建出一个反映物种进化历史的拓扑结构。
生信学习者
2025/01/15
3110
科研绘图系列:R语言绘制微生物物种系统发育树(phylogenetic tree)
一步一步教你使用ggtree
ggtree是R语言中一个强大的系统发育树可视化及注释软件包,在Bioconductor中发布,同时兼有ggplot2的优点。ggtree可以读取多种格式(包括newick,nexus,NHX,jplace和phylip)的系统发育树,并结合不同类型的相关数据进行注释分析。在R中ggtree的安装方法如下:
SYSU星空
2022/05/05
9.2K0
一步一步教你使用ggtree
ggtree学习笔记2
geom_tiplab()函数中的一些参数 align=T 标签右对齐 linesize = 16 标签右对齐后会有线连接,设置线的粗细 linetype = 1 设置线的类型,默认是虚线 offset=2设置标签距离枝末端的距离
用户7010445
2020/03/03
1.1K0
R语言ggtree按照指定的节点旋转树
http://yulab-smu.top/treedata-book/index.html
用户7010445
2021/01/20
1.8K0
R语言ggtree按照指定的节点旋转树
R语言ggtree:将进化树中的序列id改成物种名称
通常我们会使用比对好的fasta文件构建进化树,fasta文件中大于号后的内容就是最终进化树上的文字标签。如果拿到进化树文件后你想替换掉其中的一些内容,那该怎么办呢?本篇推文介绍一下使用R语言的ggt
用户7010445
2021/01/20
2.7K0
R语言ggtree:将进化树中的序列id改成物种名称
跟着Nature Communications学作图:R语言ggtree绘制进化树
A highly conserved core bacterial microbiota with nitrogen-fixation capacity inhabits the xylem sap in maize plants
用户7010445
2023/01/06
1.2K0
跟着Nature Communications学作图:R语言ggtree绘制进化树
跟着Nature Methods学画图:R语言ggplot2+ggtree+aplot画气泡图组合聚类树图
论文对应的代码是公开的 https://github.com/ajwilk/2020_Wilk_COVID
用户7010445
2021/03/15
2.3K0
跟着Nature Plants学作图:R语言ggtree包展示进化树
https://www.nature.com/articles/s41477-022-01146-6#Sec44
用户7010445
2022/05/23
3.3K0
跟着Nature Plants学作图:R语言ggtree包展示进化树
ggplot2作图共享图例方法一:ggpubr包的ggarrange()函数以及调整图例的布局
因为三个图的图例是一样的,我们完全可以只显示一个图例就够了。这里拼图使用的函数是ggpubr这个包里的ggarrange()函数,这个函数里有一个参数是common.legend,默认好像是FALSE,我们直接设置成TRUE就好了,代码如下
用户7010445
2021/03/15
4.8K0
推荐阅读
相关推荐
跟着BMC genomics学作图:R语言ggplot2+ggtree进化树拼接三角热图
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文