多语言展示
当前在线:1435今日阅读:39今日分享:10

如何利用R软件中的ggplot2绘制多样化散点图?

R软件中的ggplot2包绘制的图形美观,且操作方法简单。本文将通过一些例子来说明。
工具/原料

R软件或RStudio

方法/步骤
1

打开R软件,安装tidyverse工具包,tidyverse集合了ggplot2和很多处理数据的包。安装完成后加载工具包。install.packages('tidyverse')library(tidyverse)

2

以R自带的iris数据集为例。先查看一下数据集的前几行。head(iris)可以看到该数据集共有以下几个变量:Sepal.Length,Sepal.Width,Petal.Length,Petal.Width,Species。

3

绘制ggplot散点图。这里以鸢尾花的花萼长Sepal.Length为x轴,花瓣长Petal.Length为y轴。ggplot(data=iris)+geom_point(mapping=aes(x=Sepal.Length,y=Petal.Length))ggplot()创建一个可以添加图层的坐标系统。ggplot(data=iris)的第一个参数指定要在图中使用的数据集,这是一个空图。之后利用“+”的绘图命令添加一个或多个层来完成图形。geom_point表示添加散点图。mapping定义了如何将数据集中的变量映射到可视化图形中。aes指定要映射的具体变量。

4

可以看到上图中两个变量之间存在一定的正相关关系。但是左下角的散点与其他的有些不同,注意到数据集中的类别Species变量,将类别变量作为颜色变量,进一步绘制图形。运行代码:ggplot(data=iris)+geom_point(mapping=aes(x=Sepal.Length,y=Petal.Length,color=Species))可以看到左下角的都是setosa类别的。ggplot自动为不同颜色的数据分配了图例。如果颜色不作为变量,则要指定参数,且不要将color放在mapping里面,ggplot(data=iris)+geom_point(mapping=aes(x=Sepal.Length,y=Petal.Length),color='red')

5

调整大小size、形状shape和透明度alpha。 ggplot(data=iris)+geom_point(mapping=aes(x=Sepal.Length,y=Petal.Length,color=Species,shape=Species,size=Sepal.Width,alpha=Petal.Width))如果在映射中加入这些变量,图表将呈现更丰富的信息。

6

如果将通过颜色对数据集进行一个划分,例如将'花萼长Sepal.Length小于6,且花瓣长Petal.Length小于2'作为分界点。ggplot(data=iris)+geom_point(mapping=aes(x=Sepal.Length,y=Petal.Length,color=Sepal.Length<6&Petal.Length<2))可以看到数据点已经按照颜色做了划分。

推荐信息