R语言学习 | 创建ggplot图形

161 阅读2分钟

引言

0基础开始学习R语言。

准备工作

R,R studio,R包 tidyverse。

install.package("tidyverse")
library(tidyverse)

使用的数据

mpg涵盖了由美国环境保护协会收集的38种车型的观测数据。 屏幕截图 2023-09-08 082543.png

变量解释

  • manufacturer

manufacturer name

  • model

model name

  • displ

engine displacement, in litres

  • year

year of manufacture

  • cyl

number of cylinders

  • trans

type of transmission

  • drv

the type of drive train, where f = front-wheel drive, r = rear wheel drive, 4 = 4wd

  • cty

city miles per gallon

  • hwy

highway miles per gallon

  • fl

fuel type

  • class

"type" of car

创建ggplot图形

将displ放在x轴,hwy放在y轴。

r2.png

得到以下结果

r1.png 结果告诉我们,引擎的大小(displ)和燃油效率(hwy)是负相关关系,即引擎越大,越耗油。

代码解释

ggplot()函数创建了一个以displ为x轴,hwy为y轴的坐标系。第一个参数是图中使用的数据集,即data=mpg。但如果只是ggplot(data = mpg)会生成一张空白图。

函数geom_point()向图中添加了一个点层,这样可以创建一张散点图。

mapping函数定义了如何将数据集中的变量映射为图形属性。mapping参数总是与aes()函数成对出现,aes()函数的x参数和y参数分别指定了映射到x轴的变量与映射到y轴的变量。

绘图模板

将上面的代码转换为一个可重用的ggplot2绘图模板。尖括号DATA部分替换为要使用的数据集、几何对象或映射集合即可。

R3.png

图形属性映射

可以假设所有的汽车都是混合动力车。检验这种假设的一个方法是查看每一辆汽车的class值。mpg数据集中的class变量将汽车分类为小型、中型和SUV。如果存在离群点是混合动力车,那么他们应该属于小型或者微型。(mpg数据集是在混合动力车和SUV流行前收集的。)

可以向二维散点图中添加第三个变量,比如class,方式是将它映射为图形属性(图中对象的可视化属性,其中包括数据点的大小、形状和颜色)。

显示数据点

因为"value"已经用来表示数据的值,所以接下来使用"level"水平一词表示图形属性的值。

改变一个点的大小的水平

R7.png

R6.png

改变一个点的形状的水平

R9.png

R8.png 不难发现,SUV没有对应的形状,这是因为ggplot2只能同时使用6种形状。默认情况下,使用class图形属性时,多出的变量值不会出现在图中。

改变一个点的颜色的水平

R5.png R4.png