R 中图形的概念
在 R 中图,就像 photoshop 中的图层一样,每一个元素都是层层向上延展构建的,最终形成了我们视觉上所形成的平面图形。这些元素包含了常见的图形的标题(title)、坐标轴(axis)、标签(label)、颜色(color)、线条(line)、符号(character)、文本标注(text)等等
画图的基本流程
dev.new
pdf(mygraph.pdf)
attach(variable)
plot()...
detach(variable)
dev.off
图形参数
参数又为parameter,这一选项可以自定义一副图形的多个特征。我们可以通过函数par()
来实现
调用格式为
par(optionname = value, optionname = value, ...)
#或者多次调用
par()
par()
也可以在高级绘图函数中直接提供参数的键值对optionname = value
plot(dose, drugA, type = "b", lty = 2, pch = 17)
但并不是每个绘图函数都允许指定全部可能的图形参数
值得一提的是,par()
函数是指定全局的参数设置,该参数除非被修改否则在会话结束之前一直有效,添加参数no.readonly = TRUE
可以生成一个可以修改的当前图形参数列表。
#先储存初始的参数
opar <- par(no.readonly = TRUE)
par()
#修改后在令其还原
par(opar)
指定符号和线条类型的参数
pch
—— point character 绘制点使用的符号cex
—— 指定符号的大小,是一个数值,表示默认大小的缩放倍数lty
—— linetype 指定线条的类型 线条样式 1 为实线,2 为虚线lwd
—— linewide 指定线条的宽度
颜色
col
—— 默认的绘图颜色,可以接受一个含有颜色值的向量并自动循环使用,如col = c("red", "blue")
也为符号的颜色col.axis
—— 坐标轴刻度文字的颜色col.lab
—— 坐标轴标签(名称)的颜色col.main
—— 标题颜色col.sub
—— 副标题颜色fg
—— 图形的前景色bg
—— 图形的背景色,也为符号的填充色
文本属性
cex
表示相对于默认大小缩放倍数的数值,特指符号的缩放大小cex.axis
坐标轴刻度的缩放倍数cex.lab
cex.main
cex.sub
font
整数 用于指定绘图使用的字体样式,1=常规,2=粗体,3=斜体,4=粗斜体,5=符号字体font.axis
font.lab
font.main
font.sub
family
使用的字体族,先用names(pdfFonts())
找到可用字体,然后在在pdf()
中添加参数pdf("mypdf.pdf", family = "fontname")
来生成图形
图形尺寸与边界尺寸
pin
以英寸表示的图形尺寸(宽和高)mai
以数值向量表示的边界大小,顺序为“下,左,上,右”,也是英寸mar
以数值向量表示的边界大小,顺序为“下,左,上,右”,单位为英分,默认值为c(5,4,4,2)+0.1