3分钟学会R语言绘图

521 阅读3分钟

这是我参与8月更文挑战的第3天,活动详情查看:8月更文挑战

小编接触R语言以来做过很多辅导,觉得可以把积累的经验免费分享给大家,因此把辅导笔记做成文章,感谢大家支持。(ps因为内容都是原创的,所以禁止各种商用哈,转载要注明来源哈)

2021年7月份公布的一个包ggfortify,是一个强大的绘图包,它基于ggplot2,使用统一的autoplot函数和简单的参数,完成所有基础模型的绘图任务,简单明了。接下来我就逐个展开绘图,大家可以备用,代码很详细,使用的数据集都是内置数据集。

1.线性回归模型绘图

(1) 绘制最简单的图形

autoplot(lm(Petal.Width ~ Petal.Length, data = iris),data = iris)

(2)图中的点是黑色的,如果想改变颜色,只要加上colour参数即可

autoplot(lm(Petal.Width ~ Petal.Length, data = iris),data = iris,colour = 'orange')

(3)这里使用的内置数据集还有一个因子变量:种类,这里希望点是按照不同种类给点绘图,只需要指明colour为变量名即可。

autoplot(lm(Petal.Width ~ Petal.Length, data = iris),data = iris,colour = 'Species')

(4)还有一些其他好玩的细节可以调整

点的大小,size参数来控制;点的形状,shape来控制;linetype来控制线的形状。

其中标签的设计用label.xx来设计,这里我们一起改一下这些参数查看效果。

autoplot(lm(Petal.Width ~ Petal.Length, data = iris),data = iris,colour = 'Species',size=2,shape=4,label.colour = 'red')

2.逻辑回归模型绘图

虽然逻辑回归只有贝努力分布的假设,但ggfortify还是给出了类似线性回归的图,更改和上述一致

autoplot(glm(Petal.Width ~ Petal.Length, data = iris), which = 1:6)

3. kmeans聚类

这里不仅仅支持kmeans的基础算法,还支持扩展模型fanny,clara,pam

(1)基础的聚类点展示

autoplot(stats::kmeans(iris[-5], 3), data = iris)

(2)加入了点的注释

autoplot(cluster::clara(iris[-5], 3), label = TRUE)

(3)加入范围尺子

autoplot(cluster::fanny(iris[-5], 3), frame = TRUE)

(4)加入范围圆圈

autoplot(cluster::pam(iris[-5], 3), data = iris, frame = TRUE, frame.type = 't')

4. 生存分析

这里生存分析的绘图支持survfit和coxph两个模型的结果

(1)针对两个变量分别绘制生存概率变化图

library(survival)
autoplot(survfit(Surv(time, status) ~ sex, data = lung),facets = TRUE)

(2)将两个生存概率放到一个图片中

autoplot(survfit(Surv(time, status) ~ sex, data = lung))

在使用autoplot函数时,可以使用统一的参数来修改图片整体的参数,如修改横纵轴坐标名字

autoplot(survfit(Surv(time, status) ~ sex, data = lung),xlab = '时间',ylab = '生存概率')

未完待续,可以期待更新哈~,有任何绘图咨询可私信~

写在最后:

文章首发于微信公众号:算法学习日程本

向大家推荐这个公众号,如果想了解更多内容,可以私信我或者关注公众号的其他文章哈,R语言操作的疑问都可以得到解答哒。