前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >跟着Nature Communications学作图:R语言ggplot2堆积柱形图组合饼状图

跟着Nature Communications学作图:R语言ggplot2堆积柱形图组合饼状图

作者头像
用户7010445
发布2024-03-22 13:07:24
1030
发布2024-03-22 13:07:24
举报

论文

New estimates indicate that males are not larger than females in most mammal species

https://www.nature.com/articles/s41467-024-45739-5

数据下载链接

https://doi.org/10.5061/dryad.280gb5mx0

代码下载链接

https://zenodo.org/records/10569230

发现论文中的一个小错误:在代码获取链接的地方写的是代码存放在 zenodo这个网址,写的链接却是Dryad的链接,这个链接和数据存放链接是同一个链接。

image.png

这个低级失误有点不应该了

这个论文的研究内容很有意思,论文的题目是说 新的估计数据显示,在大多数哺乳动物物种中,雄性并不比雌性体型更大。 在我之前的认知里一直是大部分的哺乳动物的雌性体型是大于雄性体型的。看到这个题目第一想法是为啥这个问题还需要研究。

摘要里写的是 自达尔文的《人类的由来及性选择》以来,人们普遍认为雄性哺乳动物体型较大是常态 原来自己之前认为的 哺乳动物的雌性体型是大于雄性体型的 是不对的,但是这种想法是怎么来的呢?

有时间仔细看看这篇论文的研究方法。今天的推文的主要内容是复现一下论文中的figure1

image.png

部分示例数据截图

image.png

饼状图的数据只有3个,是手动输入的

作图代码

代码语言:javascript
复制
library(tidyverse)

fig1.dat<-read_tsv("Figure1.tsv")
fig1.dat

fig1.1<-ggplot(fig1.dat, aes(x=Order, y=Num_Spp, fill=Dimorphism))+
  geom_col(position="stack")+
  ylab('Number of Species in Each Order')+
  xlab('Order\n(only orders with >=10 species shown)')+
  scale_fill_viridis(discrete=T, option="D", name='', 
                     labels=c('Larger Females', 'Larger Males', 'Same Size'),
                     alpha=0.8)+
  theme_bw()+
  theme(text=element_text(size=20), 
        axis.text.x=element_text(angle=90, size=15, vjust=0.5),
        legend.text=element_text(size=15),
        axis.title.y=element_text(size=15),
        axis.title.x=element_text(size=15),
        panel.grid = element_blank(),
        legend.position = c(0.15,0.9),
        legend.background = element_rect(fill=NA))

pie.dat<-data.frame(Morphism=c('Larger Males', 'Larger Females', 'Same Size'),
                    Rate=c(45, 16, 39))

fig1.2<-ggplot(pie.dat, aes(y=Rate, x="", fill=Morphism))+
  geom_bar(width = 1, stat="identity", alpha=0.7)+
  coord_polar("y", start=0)+
  scale_fill_viridis(discrete=T, option="D", name='')+
  xlab('')+
  ylab('')+
  geom_text(aes(y=c(67, 92, 23),
                label=paste0(Rate,'%')), col=c('black', 'black', 'black'), size=10)+
  theme_minimal()+
  theme(
    axis.title.x = element_blank(),
    axis.title.y = element_blank(),
    panel.border = element_blank(),
    panel.grid=element_blank(),
    axis.ticks = element_blank(),
    plot.title=element_text(size=14, face="bold"),
    axis.text.x=element_blank(),
    text=element_text(size=30),
    legend.position='none'
  )

library(ggpmisc)

fig1.1+
  geom_plot(data=tibble(x=2,y=3000,plot=list(fig1.2)),
            aes(x=x,y=y,label=plot),
            vp.width=0.8,vp.height=0.8)

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 论文
  • 部分示例数据截图
  • 作图代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档