数据
数据来源
此次绘图用的数据集是R自带的数据集“iris”(鸢尾花数据集)。
数据格式解说
该数据集有5列数据,如果是要比较花萼长度(sepal.Length)和花萼宽度(sepal.width)的关系,只要提取第1列和第2列两列数据绘制散点图即可(这两列数据长度一样),同样的也可以比较花瓣长度(petal.Length)和花瓣宽度(petal.width)的关系。第5列数据是鸢尾花的品种。
绘图
- 简单地观察两个数据的关系
library(ggplot2) #导入ggplot2包
ggplot(iris, aes(x=Petal.Length, y=Petal.Width)) +
geom_point(
color="black",
fill="#69b3a2",
shape=22,
alpha=0.5,
size=6,
stroke = 1
)
首先导入“ggplot2”这个包,然后可以观察一下数据长什么样,经过上面的观察,我们决定使用sepal.Length和sepal.width这两列绘制散点图来观察花萼长度和花萼宽度之间的关系。为了画出更加有个性化的图,R提供了很多参数。color是指图形的轮廓颜色,fill是指图形的填充颜色,shape是指图形的形状,alpha是指填充色的透明度,size是指图形的大小,stroke是图形边缘的宽度。
为了消除灰色的背景色以及让横纵坐标名出现在坐标轴的尽头,可以导入
hrbrthemes包。
library(ggplot2)
library(hrbrthemes)
ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width)) +
geom_point(
color="black",
fill="#69b3a2",
shape=22,
alpha=0.5,
size=6,
stroke = 1
) +
theme_ipsum()
-
将数据按照不同类别区分表示
经观察,该数据集的第五列显示鸢尾花一共有三个品种,则可以用一种易于区分的方式将它们表示出来。
不同品种以不一样的形状(shape)表示library(ggplot2) library(hrbrthemes) ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width,shape=Species)) + geom_point(alpha=1, color="#69b3a2", size=3.5, ) + theme_ipsum()
不同品种以不一样的颜色(fill)表示
library(ggplot2)
library(hrbrthemes)
ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width,fill=Species)) +
geom_point(alpha=1,
shape=21,
size=3.5,
) +
theme_ipsum()
类似地,还可以根据大小(size)、透明度(alpha)来区分不同的品种,只要改为“size=Species”或者“alpha=Speciese”即可。geom_point里面依旧可以设定其它参数的值。需要注意的是,如果以某个参数来区分不同的品种,则geom_point里面不可以重复定义该参数的取值,否则将失去区分不同品种的能力。
此外,还可以结合多个参数进行分类,比如同时以shape和color来区分品种。
library(ggplot2)
library(hrbrthemes)
ggplot(iris, aes(x=Sepal.Length,
y=Sepal.Width,color=Species,shape=Species)) +
geom_point(alpha=1,
size=3.5,
) +
theme_ipsum()