参考资料:R语言实战【第2版】
R语言中创建散点图的基础函数是plot(x,y),其中,x和y是数值型向量,代表着图形中的(x,y)坐标点。
attach(mtcars)
plot(wt,mpg,
main="Basic Scatter plot of MPG vs. Weight",
xlab="Car Weight (lbs/100)",
ylab="Miles Per Gallon",
pch=19)
abline(lm(mpg~wt),col="red",lwd=2,lty=1)
lines(lowess(wt,mpg),col="blue",lwd=2,lty=2)
detach(mtcars)
本例中plot()函数用于绘制散点图,abline()函数用来添加最佳拟合的线性直线,lowess()函数则用来田间一条平滑曲线(该平滑曲线拟合是一种基于局部加权多项式回归的非参数方法)。
car包中的scatterplot()函数增强了散点图的许多功能,它可以很方便地绘制散点图,并且能添加拟合曲线、边界箱线图和置信椭圆,还可以按子集绘图。
# 加载car包
library(car)
# 绘制散点图
scatterplot(
mpg~wt | cyl,
data=mtcars,
lwd=2,
main="Scatter Plot of MPG vs. Weight by # Cylinders",
xlab="Weight of Car (lbs/1000)",
ylab="Miles Per Gallon",
legend=list(inset=0.02,cex=1),
boxplots="xy"
)
此处,scatterplot()函数用来绘制4缸、6缸、8缸汽车车重对每加仑英里数的图形。表达式mpg~wt | cyl表示按条件绘图(即按cyl的水平分别绘制mpg和wt的关系图)