1.R语言四大作图系统
- 基础绘图系统(graphics包,默认已加载)
- lattice包
- ggplot2包
- grid包
demo(graphics):可以对graphics包中的绘图函数绘制demo图。
help(package=“graphics”):对graphics包中的函数进行详细介绍。
2.R基础绘图系统
1)高级绘图
高级绘图是一步到位,可以直接绘制出图;
2)低级绘图
低级绘图不能单独使用,必须在高级绘图产生图形的基础上,对图形进行调整,比如加一条线,加上标题文字等。
3.R绘图输入数据
对于绘图函数,最重要的就是要知道输入数据的格式。
散点图:x和y两个坐标数据;
直方图:因子;
热力图:数据矩阵;
……
4.两个重要绘图函数
(1)plot函数
R中plot函数使用最广泛,也最为复杂。如:
plot(women$height,women$weight) %输入是向量,输出是散点图
plot(as.factor(mtcars$cyl)) %输入是因子,输出是直方图
plot(as.factor(mtcars$cyl),mtcars$carb) %输入是第一个参数是因子,第二个参数是向量,输出是箱线图
plot(mtcars$carb,as.factor(mtcars$cyl)) %输入是第一个参数是向量,第二个参数是因子,输出是散点图
此外plot函数中的参数也可以是一个formula,如:
plot(women$height~women$weight) %输出的是二者的关系散点图
利用plot函数直接绘制线性回归的结果:
fit <- lm(height~weight,data=women) %lm函数是用于拟合线性模型
plot(fit) %结果生成四幅图
那我们可能会有问题,plot函数到底支持哪种格式的输入数据呢?plot函数是如何来识别不同类型的数据呢?这就涉及到R中的S3系统。
S3系统:属性、泛型函数、方法。
plot函数之所以支持多种输入数据格式,原因在于其支持多种属性的数据格式。使用methods(plot)运行后可以看出,plot其实是一个大家族,里面有很多子函数,每个子函数名后缀对应这种属性的数据。print和summary也是这样的道理。
(2)par函数
严格来说,par并不能用来绘图,par是parameter的简称,它是用来对绘图参数进行设置的。如:
plot(as.factor(mtcars$cyl),col=c(“red”,“green”,“blue”)) %给图形上色
直接在R编辑器中输入命令par()或者par(no.readonly=TRUE)都可以获取当前的各个绘图参数。