R语言—ggplot2包的简单教程

本文详细介绍了ggplot2包在R语言中的应用,包括其基本语法、数据映射、几何图形的选择与设置,以及color和fill参数的区别,通过实例演示了如何创建和美化散点图、折线图和条形图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、ggplot2包的简介

    ggplot2是R语言中一个非常强大的绘图包,它是基于Wilkinson的The Grammar of Graphics一书中提出的图形语法理论而开发的,作者是Hadley Wickham。
    ggplot2的设计思想是将数据集映射到图形属性上,比如颜色、形状、大小等,从而可以很方便地绘制出漂亮的图形。ggplot2包的目标是提供一个全面的、基于语法的、连贯一致的图形生成系统,允许用户创建新颖的、有创新性的数据可视化图形。
    注意: 要调用ggplot2函数需要下载并安装该包install.packages(“ggplot2”),第一次使用前还要进行加载library(ggplot2)。

二、ggplot2包的基本语法

    与基本R中的作图系统相比,ggplot2的作图有规律可循,核心主要分为以下两个步骤:

  1. 第一步: 将数据映射到ggplot()函数中,并指定参与作图的每个变量分别映射到哪些图形特性,比如映射为x坐标、y坐标、颜色、形状等。
ggplot(data, aes(x, y, ...))
  1. 第二步: 选择一个合适的几何图形,函数名以geom_开头,如geom_point()表示散点图。将ggplot()部分与geom_xxx()部分用加号连接。
 ggplot(data, aes(x, y, ...)) +
     geom_xxx()

    最后,为了更加的美观,可以进行一些其他的设置,比如设定标题、图例、主题类型、颜色等。

最终,ggplot2的基本语法可以总结如下所示:

ggplot(data, aes(x, y, ...))+
  geom_xxx()+
  geom_xxx()+
  ......
  theme_xxx()

    ggplot2的基本语法中,ggplot()函数用于创建一个绘图空间,aes()函数是aesthetics的缩写,x和y分别表示x轴和y轴的数据,…表示其他图形属性,比如颜色、形状、大小等,用于设置图形属性,geom_xxx()函数用于设置图形的类型,theme_xxx()函数用于设置图形的主题。

三、 简单案例

3.1 第一步:利用ggplot()函数进行数据的映射

    首先,调用ggplot()函数,指定mtcars数据集, 将wt(重量)映射到x轴, 将mpg(每加仑英里数)映射到y轴。由于没有确定几何图形,所以ggplot()函数并不知道将映射的数据绘制成什么。

library(ggplot2)
data(mtcars)
ggplot(mtcars, aes(x=wt, y=mpg))

在这里插入图片描述

3.2 第二步:确定几何图形的类型

    然后,告诉ggplot()函数,你将映射的数据以哪种几何图形的方式进行展示。只要用geom_xxx()指定一个图形类型,并与ggplot()的结果用加号连接就可以作图了。比如,使用geom_point()绘制散点图,如下所示:

ggplot(mtcars, aes(x=wt, y=mpg)) + 
      geom_point()

在这里插入图片描述

3.3 常见的几何函数

在这里插入图片描述

四、案例进阶

4.1 添加颜色和改变大小

    我们可以调用color和size参数给之前的散点图,添加颜色和改变点图的大小,代码如下所示:

ggplot(mtcars, aes(x=wt, y=mpg)) +
      geom_point(color = "blue", size = 5) 

4.2 进一步添加标题并居中

    我们可以进一步调用labs()函数和title参数来添加标题,使用theme(plot.title = element_text(hjust = 0.5)) 命令来居中标题,代码如下所示:

ggplot(mtcars, aes(x=wt, y=mpg)) +
      geom_point(color = "blue", size = 5) +
      labs(title = "散点图示例") +
      theme(plot.title = element_text(hjust = 0.5))

在这里插入图片描述

4.3 多种几何图形结合

    我们可以将多种几何图形结合使用。比如,对上述散点图的例子,我们可以在散点图中加入折线图,只需要使用加号进一步添加geom_line()即可,代码如下所示:

ggplot(mtcars, aes(x=wt, y=mpg)) +  
      geom_point(color = "blue",size = 3) +  
      geom_line()

在这里插入图片描述
    进一步的,按照之前对散点图的美观,我们可以进一步对散点图和折线图几何结合的图形设置颜色、标题等,代码如下所示:

ggplot(mtcars, aes(x=wt, y=mpg)) +  
    geom_point(color = "blue",size = 3)+  
    geom_line(color = "red") +  
    labs(title = "散点_折线图") +  
    theme(plot.title = element_text(hjust = 0.5))

在这里插入图片描述

五、参数color和fill的区别

     我们以绘制条形图为例,来展示参数color和fill的区别。首先,我们先不添加任何填充着色。由于cyl(气缸数,主要有4, 6, 8三种类别)是类别变量,需要转化为因子,可以使用as.factor(),代码如下所示:

mtcars$cyl <- as.factor(mtcars$cyl)
ggplot(mtcars, aes(x=cyl)) + 
      geom_bar() # cyl(气缸数)

在这里插入图片描述

     接下来,我们想对边框进行着色,需要选用color参数,并将边框着色成红色,代码如下所示:

ggplot(mtcars, aes(x=cyl)) +   
     geom_bar(color = 'red')

在这里插入图片描述
     最后,我们想进一步将条形图填充成绿色,而不是默认的灰色,需要选用fill参数,代码如下所示:

ggplot(mtcars, aes(x=cyl)) +   
  geom_bar(color = 'red',fill = 'green')

在这里插入图片描述
     总结: 通过以上的分析,我们已经很明确的知道了color和fill的区别,即:参数color主要对边框进行着色,参数fill主要对填充区域进行着色。几何函数常见的参数选项如下所示:
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值