图形是进行数据的趋势观察和数据展示的一种很好的手段。R语言基本函数, plot函数,属于graphics包。
Ⅰ 可用参数:
type:表现a,b之间的关系的形式:
"p":point;"l":线,lines;"b":断点为点,线连接,点线不相交,both;"c":仅线,不连续;"o":点、线且相交,overplot;"n":空图;
pch:符号类型,如下图所示:
lty:控制连线的线型,可以是整数(1: 实线,2: 虚线,3: 点线,4: 点虚线,5: 长虚线,6: 双虚线)
bty:控制图形边框形状,可用的值为: "o", "l", "7", "c", "u" 和"]" (边框和字符 的外表相像),bty="n"则不绘制边框
box:在当前的图上加上边框
main:主标题
sub:副标题
xlab,ylab :X Y坐标轴标题
xlim,ylim:X Y坐标轴范围
cex:控制缺省状态下符号和文字大小的值,用于表示对默认的绘图文本和符号放大多少倍。
cex.axis 坐标轴刻度标记的缩放倍数
cex.lab 坐标轴标题的缩放倍数
cex.main 图主标题的缩放倍数
cex.sub 图副标题的缩放倍数
col 图中符号(点、线等)的颜色,与cex参数类似,具体如下:
col.axis 坐标轴刻度标记的颜色
col.lab 坐标轴标题的颜色
col.main 图主标题的颜色
col.sub 图副标题的颜色
cex.font:指定绘图使用的字体样式。 1=常规, 2=粗体, 3=斜体, 4=粗斜体, 5=符号字体
font.axis 坐标轴刻度文字的字体样式
font.lab 坐标轴标签(名称)的字体样式
font.main 标题的字体样式
font.sub 副标题的字体样式
family:设置文本的字体族(衬线、无衬线、等宽、符号字体等);标准取值有:serif, sans, mono, symbol
Ⅱ 可添加简单函数
legend():除了利用x,y设置图例的坐标外,用”topleft”, "center","bottomright"等设置位置非常方便。ncol设置图例的列数, horiz设置图例的排列方向。
las:坐标轴标签样式;取0、1、2、3,四个整数之一,分别表示“总是平行于坐标轴”、“总是水平”、“总是垂直于坐标轴”和“总是竖直”。
segments:(x0, y0,x1, y1)从(x0,y0)各点到(x1,y1)各点画线段
lend:线段的端点样式,参数值可以为一个整数或者一个字符串。参数值为0或者"round"时,表示端点样式为圆角(默认值);为1或者"butt"时,表示端点直接截断;为2或者"square"表示延伸末端。
arrows(x0, y0,x1, y1):箭头:code=1则在各(x1,y1)处画箭头,code=2则在各(x0,y0)处画箭头,code=3则在两端都画箭头; angle控制箭头轴到箭头边的角度;length箭头长度;
abline(h=y)在纵坐标y处画水平线,abline(v=x)在横坐标x处画垂直线;abline(a,b)绘制斜率为b和截距为a的直线;abline(lm.obj)画由lm.obj确定的回归线。
rect(x1, y1, x2, y2) :绘制长方形,(x1, y1)为左下角,(x2,y2)为右上角
polygon(x, y):绘制连接各x,y坐标确定的点的多边形
text()(绘图区内)在给定坐标的位置写字。text(x, y, labels,…)在(x,y)处添加用labels指定的文字;
srt:字符串旋转度数,只支持函数text。
mtext(绘图区外)为四个坐标轴添加标签。mtext(text,side=3, line=0,…)在边空添加用text指定的文字,用side指定添加到哪一边;line指定添加的文字距离绘图区域的行数,不够的话,可以mar参数调整
bg:设定绘图区域的背景颜色
fg :设置前景色
Ⅲ 代码示例如下:
##plot函数 plot(1:16, type="p",col="red", col.axis="purple", bty="o", lty=2, pch=2, lwd=2, main="Test", sub="plot test", xlab="X", ylab="Y", xlim=c(0, 25), ylim=c(0,19), font.main=3, las=1, col.main="red", col.sub="blue", col.lab="green", cex.lab=0.75) ##添加基本参数 abline(h=c(1,5),v=2,lty=2,col="grey50",lwd=2) segments(4,2,16,14,lwd=3,col="grey50",lend=1) arrows(3,6,10,13, angle= 30,code=2,length=0.3,lty=2,lwd=3) rect(5, 15, 7, 18) polygon(x=c(12,14,15,16), y=c(9,10,16,17)) text(15,6,"Test",family="serif",col="#7EFFD3",cex=2,font=3,srt=45) mtext("here",4,line=0) #不够的话,可以mar参数调整 legend(20, 19, c("sin", "cos", "tan"), col = c(3, 4, 6),text.col = "green4", lty = c(2, -1, 1), pch = c(NA, 3, 4),merge = TRUE, bg = "gray90")
综上,图形不好看,基本参数有,后续待补充。。。