R学习:绘图
R提供了非常丰富的绘图功能,可以通过命令:demo (graphics) 或者demo(persp)来体验R绘图功能的强大。
图形工具是 R 环境的一个重要组成部分。 R提供了多种绘图相关的命令,分成三类:
- 高级绘图命令:在图形设备上产生一个新的图区,它可能包括坐标轴,标签,标题等等。
- 低级绘图命令:在一个已经存在的图上加上更多的图形元素,如额外的点,线和标签。
- 交互式图形命令:允许交互式地用鼠标在一个已经存在的图上添加图形信息或者提取图形信息。
在R中执行绘图命令,会启动一个图形设备驱动(device driver)。该驱动会打开特定的图形窗口(graphics window)以显示交互式的图片。一旦设备驱动启动,R 绘图命令可以用来产生统计图或者设计全新的图形显示。此外,R 有一系列图形参数。这些图形参数可以修改从而定制你的图形环境。
高级绘图命令
高级图形显示函数可以根据数据显示完整的图形(chart),包括坐标轴,标签、标题、序列等。如果你之前熟悉其他绘图库(比如JFreeChart,matplotlib等)的概念,可以很容易的掌握R中的绘图函数
图表类型
R支持很多图表类型。在扩展包里面可能会提供更多的图表类型。下表给出R基本环境中支持的图表类型及其对应的绘图函数:
plot(x) #以x的元素值为纵坐标、以序号为横坐标绘图
plot(x,y) #x(在x-轴上)与y(在y-轴上)的二元作图
sunflowerplot(x,y) #同上,但是以相似坐标的点作为花朵,其花瓣数目为点的个数
pie(x) #饼图
boxplot(x) #盒形图(“box-and-whiskers”)
stripchart(x) #把x的值画在一条线段上,样本量较小时可作为盒形图的替代
coplot(x~y|z) #关于z的每个数值(或数值区间)绘制x与y的二元图
interaction.plot(f1, f2, y) #如果f1和f2是因子,作y的均值图,以f1的不同值作为x轴, 而f2的不同值对应不同曲线;可以用选项fun指定y的其他的统计量(缺省计算均值,fun=mean)
matplot(x,y) #二元图,其中x的第一列对应y的第一列,x的第二列对应y的第二列,依次类推。
dotchart(x) #如果x是数据框,作Cleveland点图(逐行逐列累加图)
fourfoldplot(x) #用四个四分之一圆显示2X2列联表情况(x必须是dim=c(2,2,k) #的数组,或者是dim=c(2,2)的矩阵,如果k=1)
assocplot(x) #Cohen–Friendly图,显示在二维列联表中行、列变量偏离独立性的程度
mosaicplot(x) #列联表的对数线性回归残差的马赛克图
pairs(x) #如果x是矩阵或是数据框,作x的各列之间的二元图
plot.ts(x) #如果x是类"ts"的对象,作x的时间序列曲线,x可以是多元的,但是序列必须有相同的频率和时间
ts.plot(x) #同上,但如果x是多元的,序列可有不同的时间但须有相同的频率
hist(x) #x的频率直方图
barplot(x) #x的值的条形图
qqnorm(x) #正态分位数-分位数图
qqplot(x,y) #y对x的分位数-分位数图
contour(x,y,z) #等高线图(画曲线时用内插补充空白的值)
filled.contour(x,y,z) #同上,等高线之间的区域是彩色的,并且绘制彩色对应的值的图例
image(x,y,z) #同上,但是实际数据大小用不同色彩表示
persp(x,y,z) #同上,但为透视图
stars(x) #如果x是矩阵或者数据框,用星形和线段画出
symbols(x,y,...) #在由x和y给定坐标画符号(圆,正方形,长方形,星,温度计式或者盒形图),符号的类型、大小、颜色等由另外的