R语言2 图形初阶

图形初阶


图形参数

par()
eg:

#数据:
dose <- c(20, 30, 40, 45, 60) 
drugA <- c(16, 20, 27, 40, 60) 
drugB <- c(15, 18, 25, 31, 40) 
opar <- par(no.readonly=TRUE) 
par(lty=2, pch=17) 
plot(dose, drugA, type="b") 
par(opar)

在这里插入图片描述

符号和线条

在这里插入图片描述

请添加图片描述

请添加图片描述

eg:

plot(dose, drugA, type="b", lty=3, lwd=3, pch=15, cex=2)

颜色

请添加图片描述

在R中,可以通过颜色下标、颜色名称、十六进制的颜色值、RGB值或HSV值来指定颜色。
举例来说,col=1、col=“white”、col="#FFFFFF"、col=rgb(1,1,1)和col=hsv(0,0,1)都是表示白色的等价方式。
R中也有多种用于创建连续型颜色向量的函数,包括rainbow()、heat.colors()、terrain.colors()、topo.colors()
以及cm.colors()。举例来说,rainbow(10)可以生成10种连续的“彩虹型”颜色。
对于创建吸引人的颜色配对,RColorBrewer特别受到欢迎。注意在第一次使用它之前先进
行下载(install.packages(“RColorBrewer”))。安装之后,使用函数brewer.pal(n, name)
来创建一个颜色值的向量。
eg:

library(RColorBrewer) 
n <- 7 
mycolors <- brewer.pal(n, "Set1") 
barplot(rep(1,n), col=mycolors)

多阶灰度色可使用基础安装所自带的gray()函数生成。
gray(0:10/10)将生成10阶灰度色。
eg:

n <- 10 
mycolors <- rainbow(n) 
pie(rep(1, n), labels=mycolors, col=mycolors) 
mygrays <- gray(0:n/n) 
pie(rep(1, n), labels=mygrays, col=mygrays)

文本属性

请添加图片描述

请添加图片描述

图形尺寸与边界尺寸

请添加图片描述
eg:

par(pin=c(4,3), mai=c(1,.5, 1, .2))

添加文本、自定义坐标轴和图例

可添加:
标题(main)、副标题(sub)、坐标轴标
签(xlab、ylab)、坐标轴范围(xlim、ylim)

标题

使用**title()**函数为图形添加标题和坐标轴标签。
调用格式为:

title(main=“main title”,
sub=“subtitle”,
xlab=“x-axis label”,
ylab=“y-axis label”)

eg1:

title(main="main title", sub="subtitle", xlab="x-axis label", ylab="y-axis label") 

亦可指定其他图形参数(如文本大小、字体、旋转角度和颜色)。

eg2:
生成红色的标题和蓝色的副标题,以及比默认大小小25%的绿色x轴、y轴标签:

title(main="My Title", col.main="red", 
 sub="My Subtitle", col.sub="blue", 
 xlab="My X label", ylab="My Y label", 
 col.lab="green", cex.lab=0.75) 

坐标轴

使用函数axis()来创建自定义的坐标轴。
其格式为:

axis(side, at=, labels=, pos=, lty=, col=, las=, tck=, …)

在这里插入图片描述
在这里插入图片描述
eg1:

axis(2, at=x, labels=x, col.axis="red", las=2)

eg2:

axis(4, at=z, labels=round(z, digits=2), col.axis="blue", las=2, cex.axis=0.7, tck=-.01)

参考线

函数abline()可以用来为图形添加参考线。
其使用格式为:

abline(h=yvalues, v=xvalues)

eg:在y为1、5、7的位置添加了水平实线

abline(h=c(1,5,7)) 

eg: 在x为1、3、5、7、9的位置添加了垂直的蓝色虚线

abline(v=seq(1, 10, 2), lty=2, col="blue") 

图例

使用函数legend()来添加图例。
其使用格式为:

legend(location, title, legend, …)

在这里插入图片描述
在这里插入图片描述
eg:

legend("topleft", inset=.05, title="Drug Type", c("A","B") ,lty=c(1, 2), pch=c(15, 17), col=c("red", "blue"))

文本标注

图形的组合

在R中使用函数par()或layout()可以容易地组合多幅图形为一幅总括图形。
法一:
在par()函数中使用图形参数mfrow=c(nrows, ncols)来创建按行填充的、行数为nrows、列数为ncols的图形矩阵。mfcol=c(nrows, ncols)按列填充矩阵。
创建四幅图形并将其排布在两行两列中,代码:

par(mfrow=c(2,2))

法二:
函数layout()的调用形式为layout(mat),其中的mat是一个矩阵,它指定了所要组合的
多个图形的所在位置。
eg1:
一幅图被置于第1行,另两幅图则被置于第2行:

layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE)) 

为了更精确地控制每幅图形的大小,可以有选择地在layout()函数中使用widths=和
heights=两个参数。其形式为:
 widths = 各列宽度值组成的一个向量
 heights = 各行高度值组成的一个向量
eg2:
将一幅图形置于第1行,两幅图形置于第2行。但第1行中图形的高度是第2行中图形高度的二分之一。除此之外,右下角图形的宽度是左下角图形宽度的三分之一:

layout(matrix(c(1, 1, 2, 3), 2, 2, byrow = TRUE),
                   widths=c(3, 1), heights=c(1, 2)) 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值