美文网首页
【R语言】--- 分组点图

【R语言】--- 分组点图

作者: 生态数据 | 来源:发表于2022-03-25 11:10 被阅读0次

    基本简介

    分组点图,与分组柱状图类似,当需要在同一个轴上显示各个分类下不同的分组时,需要用到分组柱状图。论文中常见的分组箱型图和分组条形图(柱状图)可以直观的比较方法的效果,以一个图显示多个方法在多个数据集上的结果。但也有文献常常使用分组点图来展示结果。本文使用ggplot2包绘制分组有误差棒的点图,这种图中间的点代表均值,误差线表示上限和下限(也可以是标准差或者标准误)。

    基本用法

    ggplot2包:geom_point()函数结合geom_errorbar()函数

    ###geom_point()
    geom_point(
      mapping = NULL,
      data = NULL,
      stat = "identity",
      position = "identity",
      ...,
      na.rm = FALSE,
      show.legend = NA,
      inherit.aes = TRUE
    )
    ###geom_errorbar()
    geom_errorbar(
      mapping = NULL,
      data = NULL,
      stat = "identity",
      position = "identity",
      ...,
      na.rm = FALSE,
      orientation = NA,
      show.legend = NA,
      inherit.aes = TRUE
    )
    ###具体帮助可以在Rstudio中加载ggplot2包后使用?geom_point()和?geom_errorbar()分别查看官方帮助文件
    

    示例代码

    #清空环境
    rm(list = ls())
    #加载导入数据的readxl包和作图的ggplot2包
    library(readxl)
    library(ggplot2)
    #喜欢新罗马字体的可以使用windowsFonts()函数查看电脑字体,进行选择Times New Roman
    windowsFonts()
    
    #读入示例数据
    df<-read_xlsx("D:/Users/ASUS/Desktop/test.xlsx", sheet = "test")
    #查看数据
    df
    

    这里的数据是示例数据,不是真实的数据,实际作图过程中可以替换成自己的数据。Treatment为处理(包括A、B、C、D四个处理),Yield为产量数据(由于本数据为示例数据,因此这里不添加单位),Low和Up分别为上限和下限(也可以为标准误或者标准差,根据自己情况选择),Site为不同的的研究地点(包括LL和OO两个地点),Type为不同的作物类型(Corn和Wheat)

    ##作图
    ggplot(df, aes(x = Treatment, y=Yield, color = Type))+
      geom_errorbar(aes(ymin=Low, ymax=Up), width=.3,position = position_dodge(0.8))+
      geom_point(shape = 19, size = 3,position = position_dodge(0.8))+
      theme_bw()+
      theme(legend.text=element_text(size=14))+
      theme(title=element_text(size=14))+
      theme(axis.text.x = element_text(size = 14, color = "black"))+
      theme(axis.text.y = element_text(size = 14, color = "black"))+
      facet_grid(Site~.)+ #这里根据Site进行分面
      ylab("Yield")+
      guides(color=guide_legend(title = "Type"))+
      theme(text=element_text(size=14,  family="serif"))#这里设置字体类型(我们选择Times New Roman)
    

    若不设置字体的话,则默认为Arial格式的字体


    参考文献

    [1] https://r-graph-gallery.com/ggplot2-package.html
    [2] https://cran.r-project.org/web/packages/ggplot2/index.html
    [3] https://www.tutorialspoint.com/ggplot2/ggplot2_quick_guide.htm
    [4] https://ggplot2.tidyverse.org/

    相关文章

      网友评论

          本文标题:【R语言】--- 分组点图

          本文链接:https://www.haomeiwen.com/subject/gmbrjrtx.html