超详细ggline绘制线图

作者: 灵活胖子的进步之路 | 来源:发表于2020-12-30 16:27 被阅读0次

    本次利用ggpubr包里面ggline函数绘制折线图,参数太多,所以在实战中和大家分享

    首先绘制一个基本图形

    library(ggpubr)
    library(patchwork)
    
    df <- data.frame(dose=c("D0.5", "D1", "D2"),
                     len=c(4.2, 10, 29.5))
    
    ggline(df, x = "dose", y = "len")
    
    基本图形

    以下绘制复杂图,首先构建数据集

    #构建数据集
    df2 <- data.frame(supp=rep(c("VC", "OJ"), each=3),
                      dose=rep(c("D0.5", "D1", "D2"),2),
                      len=c(6.8, 15, 33, 4.2, 10, 29.5))
    print(df2)
    
    数据集

    构建分组折线图

    ggline(df2, #数据集
           x="dose", #横轴坐标
           y="len",#纵轴坐标
           linetype = "supp", #线样式(根据此分组)
           shape = "supp")#点形状依据
    
    分组折线图

    根据分组绘制颜色

    ggline(df2, 
           x="dose", 
           y="len",
           linetype = "supp",
           shape = "supp",
           color = "supp",#颜色映射,这里和线的分组相同 
           palette = "aaas")#色板(比较喜欢用ggsci里面的成品色板)
    
    根据分组配色

    以下新用一个数据集

    df3 <- ToothGrowth
    head(df3, 10)
    
    df3数据集

    首先绘制一个基础图

    ggline(df3, x = "dose", y = "len")
    
    基础图

    可以看到,每一个X轴坐标对应的有多个Y轴的数值,这时,我们可以对其取均值操作

    ggline(df3, 
           x = "dose", 
           y = "len",
           add = "mean")
    
    取均值后图

    进一步,我们可以加上标准差

    ggline(df3, 
           x = "dose", 
           y = "len", 
           add = "mean_sd")
    
    均值加标准差图

    在上图基础上,加上抖动点

    ggline(df3, 
           x = "dose", 
           y = "len",
           add = c("mean_sd", "jitter"))
    
    加抖动点

    添加小提琴图

    ggline(df3, 
           x = "dose", 
           y = "len",
           add = c("mean_sd", "violin"), 
           color = "steelblue")
    
    添加小提琴图

    添加箱式图及分组绘色

    ggline(df3, 
           x = "dose", 
           y = "len", 
           color = "supp",
           add = c("mean_sd", "jitter","boxplot"),
           palette = "jco")
    
    添加箱线图及分组绘色

    相关文章

      网友评论

        本文标题:超详细ggline绘制线图

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