3、科研作图之散点图详解——ggplot2

单种数据点类型的绘制

使用数据库mtcars作本文的数据来源进行介绍。

library(ggplot2)

#数据准备
data(mtcars)
mtcars$cyl <- as.factor(mtcars$cyl)
head(mtcars[, c("wt", "mpg", "cyl")], 3)

#作散点图
b = ggplot(mtcars,aes(wt,mpg))
b + geom_point()

 

 添加回归线

通常我们作散点图是为了进行回归分析(添加回归曲线):

  • 完全拟合

b + geom_point() +
  geom_smooth()

 geom_point()函数可添加参数:

shape定义点的形状,取值为0-25代表26种点的形状;

smooth()函数可以添加参数:

color定义线的颜色;

size定义线的粗细 ;

  •  直线拟合

b + geom_point() +
  geom_smooth(method = lm)

 其中method = lm 即表示用直线拟合,默认的method 则使用完全拟合。

 

  •  去掉阴影区域:

 b + geom_point() +
  geom_smooth(method = lm, se = FALSE)

参数se : FALSE 为无阴影,TRUE为有阴影,默认为TRUE ;

 多种数据点类型的绘制

一个图上需要作多种类型的散点。

library(ggplot2)

#数据准备
data(mtcars)
mtcars$cyl <- as.factor(mtcars$cyl)
head(mtcars[, c("wt", "mpg", "cyl")], 3)


b = ggplot(mtcars,aes(wt,mpg))

使用的数据如下: 

 

 基本语法:

这里我们使用cyl作为区分不同种数据点类型的依据:

b + geom_point(aes(shape = cyl, color = cyl))

 可以看到,cly有4,6,8三种类型,这里直接用cyl来规定点的颜色和形状。

 

 添加回归线:

b + geom_point(aes(color = cyl, shape = cyl)) +
  geom_smooth(aes(color = cyl), method = lm, se = FALSE,
              )

 同样使用geom_smooth()函数就可以添加三组数据点的回归线,要使回归线延长贯穿整个图,只需要添加一个参数fullrange = TRUE:

b + geom_point(aes(color = cyl, shape = cyl)) +
  geom_smooth(aes(color = cyl), method = lm, se = FALSE,
              fullrange = TRUE)

 点的形状(shape)类型:

猜你喜欢

转载自blog.csdn.net/qq_52529296/article/details/131987991