R语言实战 笔记2--第三章 图形初阶

好久不见. 提交于 2020-01-28 00:17:00

attach(mtcars) #绑定
plot(wt,mpg)
abline(lm(mpg~wt))
title(“Regression of MPG on Weight”)
detach(mtcars) #解除

保存图形的函数:pdf(),还可以使用函数win.metafile()、png()、jpeg()、bmp()、tiff()、xfig()
和postscript()

创建多个图形并随时查看每一个

修改图形参数

一种方法是通过函数par()来指定这些选项

par(lty=2)

第二种方法是为高级绘图函数直接提供optionname=value的键值对。

plot(dose, drugA, type=“b”, lty=2)

指定符号和线条类型的参数(70-)

参 数 描 述
pch 指定绘制点时使用的符号(见图3-4)
cex 指定符号的大小。cex是一个数值,表示绘图符号相对于默认大小的缩放倍数。默认大小
为1,1.5表示放大为默认值的1.5倍,0.5表示缩小为默认值的50%,等等
lty 指定线条类型(参见图3-5)
lwd 指定线条宽度。lwd是以默认值的相对大小来表示的(默认值为1)。例如,lwd=2将生
成一条两倍于默认宽度的线条

指定颜色的参数

参 数 描 述
col 默认的绘图颜色。某些函数(如lines和pie)可以接受一个含有颜色值的向量
并自动循环使用。例如,如果设定col=c(“red”, “blue”)并需要绘制三条线,
则第一条线将为红色,第二条线为蓝色,第三条线又将为红色
col.axis 坐标轴刻度文字的颜色
col.lab 坐标轴标签(名称)的颜色
col.main 标题颜色
col.sub 副标题颜色
fg 图形的前景色
bg 图形的背景色

在R中,可以通过颜色下标、颜色名称、十六进制的颜色值、RGB值或HSV值来指定颜色。举例来说,col=1、col=“white”、col="#FFFFFF"、col=rgb(1,1,1)和col=hsv(0,0,1)
都是表示白色的等价方式。

指定文本属性:字体大小等

cex
font

图形尺寸和边界大小的参数

参 数 描 述
pin 以英寸表示的图形尺寸(宽和高)
mai 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英寸
mar 以数值向量表示的边界大小,顺序为“下、左、上、右”,单位为英分*。默认值为c(5, 4, 4, 2) + 0.1

添加文本、坐标轴和图例

标题(main)、副标题(sub)、坐标轴标签(xlab、ylab)并指定了坐标轴范围(xlim、ylim)
可以使用title()函数为图形添加标题和坐标轴标签

title(main="",sub="", xlab="", ylab="")

以使用函数axis()来创建自定义的坐标轴
表3-7 坐标轴选项
选 项 描 述
side 一个整数,表示在图形的哪边绘制坐标轴(1=下,2=左,3=上,4=右)
at 一个数值型向量,表示需要绘制刻度线的位置
labels 一个字符型向量,表示置于刻度线旁边的文字标签(如果为NULL,则将直接使用at中的值)
pos 坐标轴线绘制位置的坐标(即与另一条坐标轴相交位置的值)
lty 线条类型
col 线条和刻度线颜色
las 标签是否平行于(=0)或垂直于(=2)坐标轴
tck 刻度线的长度,以相对于绘图区域大小的分数表示(负值表示在图形外侧,正值表示在图形内侧,0
表示禁用刻度,1表示绘制网格线);默认值为0.01
(…) 其他图形参数

函数legend()来添加图例
通过函数text()和mtext()将文本添加到图形上。text()可向绘图区域内部添加
文本,而mtext()则向图形的四个边界之一添加文本。

代码试跑

dose <- c(20,30,40,45,60)
drugA <- c(16,20,27,40,60)
drugB <- c(15, 18, 25,31,40)
opar <- par(no)
Error in par(no) : 找不到对象’no’
opar <- par(no.readonly = TRUE)
par(lwd=2, cex=1.5, font.lab=2)
plot(dose, drugA, type=“b”, pch=15, lty=1, col=“red”, ylim = c(0, 60), main = “DrugA vs.DrugB”, xlab=“Drug Dosage”, ylab = “Drug Response”)
Error in plot.new() : figure margins too large #出现一次报错,是因为窗口太小的原因
plot(dose, drugA, type=“b”, pch=15, lty=1, col=“red”, ylim = c(0, 60), main = “DrugA vs.DrugB”, xlab=“Drug Dosage”, ylab = “Drug Response”)
lines(dose, drugB, type = “b”, pch=17,lty=2,col=“blue”)
abline(h=c(30),lwd=1.5,lty=2,col=“gray”)

在这里插入图片描述

图形组合 87

在R中使用函数par()或layout()可以容易地组合多幅图形为一幅总括图形。
在par()函数中使用图形参数mfrow=c(nrows, ncols)来创建按行填充的、行数为
nrows、列数为ncols的图形矩阵。另外,可以使用nfcol=c(nrows, ncols)按列填充矩阵。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!