zoukankan      html  css  js  c++  java
  • R绘图 第六篇:绘制线图(ggplot2)

    线图是由折线构成的图形,线图是把散点从左向右用直线连接起来而构成的图形,在以时间序列为x轴的线图中,可以看到数据增长的趋势。

    geom_line(mapping = NULL, data = NULL, stat = "identity",
      position = "identity", na.rm = FALSE, show.legend = NA,
      inherit.aes = TRUE, ...)

     线图中的常用参数:

    • group:线的分组
    • alpha:线的透明度
    • color:线的颜色
    • size:线的粗细
    • linetype:线的类型,R中可用的类型如下图所示:

    使用以下数据绘制线图:

    df <- data.frame(sex = rep(c("Female", "Male"), each=3),
                      time=c("breakfeast", "Lunch", "Dinner"),
                      bill=c(10, 30, 15, 13, 40, 17) )

    一,绘制线图

    使用ggplot2包绘制线图,可以添加点的图层,以显示线的两个端点。

    ggplot(data=df,mapping=aes(x=time,y=bill,group=sex))+
      geom_line()+
      geom_point()

    二,修改线图的线形,颜色和大小

    ggplot(data=df, mapping=aes(x=time, y=bill, group=sex)) +
      geom_line(linetype="dotted", color="red", size=2)+
      geom_point(color="blue", size=3)

    三,对不同的线图使用不同的颜色

    使用aes(group=)对线图分组,使用aes(color=)使不同的分组呈现同的颜色,使用aes(linetype=)使不同分组的线图呈现不同的线形,

    ggplot(data=df, mapping=aes(x=time, y=bill, group=sex)) +
      geom_line(aes(linetype=sex,color=sex))+
      geom_point(aes(color=sex))+
      theme(legend.position="top")

    四,自定义各个分组的线形、颜色和大小

    使用以下三个函数来控制线图中的各个分组的线形、颜色和大小:

    • scale_linetype_manual() :控制线形
    • scale_color_manual() :控制线的颜色
    • scale_size_manual() :控制线的粗细

    例如,以下代码用于对数据按照sex进行分组,并为每个分组的线设置color和size:

    ggplot(df, aes(x=time, y=bill, group=sex)) +
      geom_line(aes(linetype=sex, color=sex, size=sex))+
      geom_point()+
      scale_linetype_manual(values=c("twodash", "dotted"))+
      scale_color_manual(values=c('#999999','#E69F00'))+
      scale_size_manual(values=c(1, 1.5))+
      theme(legend.position="top")

    参考文档:

    Connect observations

  • 相关阅读:
    java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener问题解决
    开发人员系统功能设计常用办公软件分享
    微信自定义菜单url默认80端口问题解决
    Servlet再度学习
    JSP九大内置对象
    linux下安装apache(httpd-2.4.3版本)各种坑
    Ajax原理学习
    Shell脚本了解
    生成Webservice的两种方式(Axis2,CXf2.x)
    Webservice发布
  • 原文地址:https://www.cnblogs.com/ljhdo/p/4805480.html
Copyright © 2011-2022 走看看