R语言有着很强大的画图功能。我们可以从下面的语句中得到
1、绘画函数
高级画图功能(创建一个新的图形)
函数名 功能
plot(x) 以x的元素值为纵坐标、以序号为横坐标绘图
plot(x,y) x与y的二元作图
pie(x) 饼图
boxplot(x) 盒形图(也称箱线图)
hist(x) x的频率直方图
barplot(x) x的值的条形图
pairs(x) 如果x是矩阵或是数据框,作x的各列之间的二元图
coplot(x~y\|z) 关于z的每个数值(或数值区间)绘制x与y的二元图
matplot(x,y) 二元图,其中x的第一列对应y的第一列,依次类推
qqnorm(x) 正态分位数-分位数图
image(x,y,z) x,y,z三元图
heatmap(x) 热图
低级绘图函数(在现有的图形上添加元素)
函数名 功能
points(x,y) 添加点
lines(x,y) 添加线
text(x,y,labels,…) 在(x,y)处添加用labels指定的文字
mtext(text,side=3,line=0,…) 在边空添加用text指定的文字
segments(x0,y0,x1,y1) 从(x0,y0)各点到(x1,y1)各点画线段
arrows(x0,y0,x1,y1,…) 同上,但添加箭头
abline(a,b) 绘制斜率为b和截距为a的直线
abline(h=y) 在纵坐标y处画水平线
abline(v=x) 在横坐标x处画垂直线
abline(lm.obj) 画出lm.obj确定的回归线
rect(x1,y1,x2,y2) 绘制长方形,(x1,y1)为左下角,(x2,y2)为右上角
polygon(x,y) 绘制连接各x,y坐标确定的点的多边形
legend(x,y,legend) 在点(x,y)处添加图例,说明内容由legend给定
title() 添加标题,也可添加一个副标题
axis(side,vect) 画坐标轴
box() 在当前的图上加边框
rug(x) 在x轴上用短线画出x数据的位置
locator(n,type="n",…) 获取鼠标在图中点击处的坐标
2、绘图参数介绍
高级绘图函数共同参数选项:
选项 功能
add=FALSE 如果是TRUE,叠加图形到前一个图上(如果有的话)
axes=TRUE 如果是FALSE,不绘制轴与边框
type=”p” 指定图形的类型,“p”:点,“l”:线,“b”:点连线,“o”:同上,但是线在点上,“h”:垂直线,“s”:阶梯式,垂直线顶端显示数据,“S”:同上,但是垂直线底端显示数据
xlim=,ylim= 指定轴的显示范围
xlab=,ylab= 坐标轴的标签
main= 主标题
sub= 副标题
其它常用绘图参数(可以使用help(par)查看)
参数 功能
adj 控制关于文字对齐方式
bg 背景色
bty 图形边框形状
cex 符号和文字大小,cex.axis,cex.lab,cex.main,cex.sub
col 颜色,col.axis,col.lab,col.main,col.sub
font 文字字体,font.axis,font.lab,font.main,font.sub
las 坐标轴刻度数字标记方向
lty 连线的线性
lwd 线的宽度
mar 图形边空的大小
mfcol, mfrow c(nr,nc)的向量,前者按列分隔绘图窗口,后者按行分隔绘图窗口
pch 绘图符号的类型
ps 文字大小
pty 绘图区域类型
tck 轴刻度长度,tck=1时,则绘制grid
xaxt, yaxt 如果xaxt=“n”,设置x轴不显示,如果yaxt=“n”,设置y轴不显示
3、画图面板分割
在一个面板中画多张图
(1)、par中参数mfrow和mfcol
par(mfrow=c(2,2))
(2)、ayout函数
生成复杂的图形排列
layout(mat, widths = rep(1, ncol(mat)), heights = rep(1, nrow(mat)), respect = FALSE)
source(“layout.R”)
(3)、其它函数
split.screenrce(“layout.R”)
在一个面板中画多张图
4.图形保存
(1)输出到屏幕
windows, X11
windows()
X11()
(2)输出到文件
df , postscript , xfig, bitmap, pictex, cairo_pdf, svg, png, jpeg, bmp, tiff
pdf(“plot.pdf”,width=4,height=4)
png(“plot.png”,width=400,height=600)
dev.off() #绘制完图形后关闭图形设备
dev.list()
通过菜单命令保存图形