美文网首页
ggplot2-R绘图基础

ggplot2-R绘图基础

作者: 新欣enjoy | 来源:发表于2020-03-11 17:47 被阅读0次

    分析结果可视化是数据分析比较重要的一步。R绘图方法有多种,包括内置基础绘图系统、ggpubr包绘图,ggplot2绘图,lattice绘图等。关于R基础绘图、ggplot2绘图语法基本介绍。

    R base graphic

    R 基础绘图,需要在给定函数中一次性设定主要参数,而不能像ggplot的图形语法通过其他函数增加图层。

    plot(
      x = iris$Sepal.Length, y = iris$Sepal.Width,
      pch = 19, cex = 0.8, frame = FALSE,
      xlab = "Sepal Length",ylab = "Sepal Width"
    )
    
    scatter plot using R base plot R base graphs

    主要参数设置

    • pch:改变点形状。 允许值包括1到25之间的数字。
    • cex:改变点大小。 示例:cex = 0.8。
    • col:改变点颜色。 示例:col =“blue”。
    • frame:逻辑值。 frame = FALSE删除绘图面板边框。
    • main,xlab,ylab。 分别指定主标题和x / y轴标签
    • las:对于垂直x轴文本,使用las = 2。

    R 绘图尺寸

    重点在于理解英寸、分辨率、像素间的关系。

    理解下面两种保存图片方法,他们的像素大小一致,但是分辨率和图片尺寸不同。

    ggsave(filename = "foo300.png", ggplot(mtcars, aes(x=wt, y=mpg)) +
             geom_point(size=2, shape=23) + theme_bw(base_size = 10),
           width = 5, height = 4, dpi = 300, units = "in", device='png')
    ggsave(filename = "foo150.png", ggplot(mtcars, aes(x=wt, y=mpg)) +
             geom_point(size=2, shape=23) + theme_bw(base_size = 10),
           width = 10, height = 8, dpi = 150, units = "in", device='png')
    

    傻傻分不清楚的R绘图尺寸,一键答疑


    ggplot2 图形语法

    ggplot2由Hadley Wickham开发,ggplot2中的gg表示图形语法。根据ggplot2概念,绘图可以分为不同的基本部分:Plot = data + Aesthetics + Geometry,及其他常见参数。通过“+”组合不同命令。

    • data:数据框
    • Aesthetics :用于表示x和y变量。它还可以用来控制点的颜色,大小和形状等......
    • geometry:对应于图形类型(直方图,箱形图,线图,......)
    • stats,统计变换,stat="identity",不作统计变换
    • scale,标度
    • coord,坐标系
    • facet,分面
    ggplot2 主要函数

    ggplot2 箱线图比较分组p值

    ## Rstudio 中更新R版本
    install.packages("installr")
    library(installr)
    updateR()
    
    install.packages("ggplot2")
    install.packages("ggpubr")
    library(ggplot2)
    library(ggpubr)
    data("iris")
    summary(iris)
    
    # Groups that we want to compare
    my_comparisons <- list(
      c("setosa", "versicolor"), c("versicolor", "virginica"),
      c("setosa", "virginica")
    )
    ## x/y参数指数据集的变量名,而不是字符串
    ggplot(iris,aes(x = Species, y = Sepal.Length))+
      geom_boxplot(aes(fill=Species))+
      scale_fill_manual(values = c("#00AFBB", "#E7B800", "#FC4E07"))+
      stat_compare_means(comparisons = my_comparisons, method = "t.test")+
      theme_classic()
    
    ggplot2 箱线图并比较P值

    参考
    ggplot2绘图学习-箱线图和小提琴图
    ggplot2 pdf manual
    R语言之可视化⑤R图形系统
    R语言之可视化⑥R图形系统续

    相关文章

      网友评论

          本文标题:ggplot2-R绘图基础

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