温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

R语言数据可视化包ggplot2散点图怎么画

发布时间:2022-11-07 10:24:20 来源:亿速云 阅读:175 作者:iii 栏目:开发技术

这篇文章主要介绍“R语言数据可视化包ggplot2散点图怎么画”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“R语言数据可视化包ggplot2散点图怎么画”文章能帮助大家解决问题。

    前言

    在ggplot2里,所有图片由6个基本要素组成:

    1. 数据(Data)

    2. 层次(Layers),包含两种元素:几何元素(Geometrics)与统计转换(Statistical transformations)。

    几何元素指的是你想画的图形,如点,线,或多边形等。

    统计转换指的是你想画的统计描述,如均数,标准差或可信区间等。

    3. 刻度(Scales), 通常指几何元素(如点或者线)的大小,颜色和形状等。

    4. 坐标系统(A coordinate system), 通常指的是x轴与y轴。

    5. 多面化(Faceting),简单的说,就是可以将一个图片分成多个小的亚图片。

    6. 主题 (Theme),此要素可以控制非数据与非统计部分的内容,如背景颜色,字体大小等。

    下面以一个简单的例子引入:

    library(ggplot2)#导入ggplot包
    #使用mtcars数据做一个散点图
    ggplot(data = mtcars,            # 要素1:数据
           aes(x = wt, y = mpg, 
           colour = factor(cyl))) +  # 要素3:刻度
           geom_point() +            # 要素2:几何元素(点)
           coord_cartesian() +       # 要素4:坐标轴
           facet_wrap(~ cyl) +       # 要素5:分面化
           theme_bw()                # 要素6:主题

    R语言数据可视化包ggplot2散点图怎么画

     其中mtcars数据概况如下:

    R语言数据可视化包ggplot2散点图怎么画

    首先介绍第一类常用的图像类型:散点图 

    #载入ggplot2
    library(ggplot2)
    #建立数据集,横坐标为1:100,纵坐标为服从标准正态分布的随机数
    x <- seq(1,100,length=100) 
    y <- rnorm(100,mean=0,sd=1)
    data <- data.frame(x=x,y=y)
    #作散点图
    ggplot(data, aes(x=x, y=y)) + 
      geom_point()

    R语言数据可视化包ggplot2散点图怎么画

    给原始数据加上分类标签:

    x <- seq(1,100,length=100) 
    y <- rnorm(100,mean=0,sd=1)
    z <- c(rep("A",30),rep("B",30),rep("C",40))
    z <- sample(z,100)
    data <- data.frame(x=x,y=y,z=z)

    数据概况如下: 

    R语言数据可视化包ggplot2散点图怎么画

    按z列分类以不同的颜色在图中画出散点图:

    ggplot(data, aes(x=x, y=y,color=z)) + 
      geom_point()

    R语言数据可视化包ggplot2散点图怎么画

    按z列分类以不同的形状在图中画出散点图:

    ggplot(data, aes(x=x, y=y,shape=z)) + 
      geom_point()

    R语言数据可视化包ggplot2散点图怎么画

    多面化(将ABC三类分开展示):

    ggplot(data, aes(x=x, y=y,color=z)) + 
      geom_point()+
      facet_wrap(~z)+
      theme(legend.position = "none")

    R语言数据可视化包ggplot2散点图怎么画

     若不加

    theme(legend.position = "none")

    这一段代码,显示的图表如下:

    R语言数据可视化包ggplot2散点图怎么画

    可以看出不加这一段代码侧边栏显示图例,但显然这个图例是多余的,因此我们一般去掉 

     自定义颜色:

    ggplot(data, aes(x=x, y=y,color=z)) + 
      geom_point()+
      facet_wrap(~z)+
      theme(legend.position = "none")+
      scale_colour_manual(values = c("purple", "red", "black"))

    R语言数据可视化包ggplot2散点图怎么画

     添加拟合曲线:

    x <- seq(1,50,length=50) 
    y <- rnorm(50,mean=0,sd=5)
    z <- c(rep("A",20),rep("B",15),rep("C",15))
    z <- sample(z,50)
    data <- data.frame(x=x,y=2*x-y,z=z)#这里构造的数据集大致服从y=2x
    ggplot(data, aes(x=x, y=y)) + 
      geom_point()+
      geom_smooth()#添加拟合曲线,默认的形式是局部回归,所以拟合出的线条是曲线。

    R语言数据可视化包ggplot2散点图怎么画

    因为geom_smooth()默认的形式是局部回归,所以拟合出的线条是曲线,阴影区域为置信区间。

    这里也可以用其他模型拟合,如线型模型:

    ggplot(data, aes(x=x, y=y)) + 
      geom_point()+
      geom_smooth(method = "lm", se = FALSE)

    R语言数据可视化包ggplot2散点图怎么画

    (se = FALSE:去除置信区间)

    更换主题 :

    ggplot(data, aes(x=x, y=y)) + 
      geom_point()+
      theme_test()

    R语言数据可视化包ggplot2散点图怎么画

    关于“R语言数据可视化包ggplot2散点图怎么画”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI