搜索
查看: 433|回复: 0

[R] R语言实战 第三章(上)

[复制链接]

31

主题

36

帖子

713

积分

高级会员

Rank: 4

积分
713
发表于 2018-12-18 12:51:32 | 显示全部楼层 |阅读模式
# 图形初阶
[AppleScript] 纯文本查看 复制代码
dose <- c(20, 30, 40, 45, 60)

druga <- c(16, 20, 27, 40, 60)

drugb <- c(15, 18, 25, 31, 40)


# 描述药物a的剂量和响应关系
[AppleScript] 纯文本查看 复制代码
plot(dose, druga, type = 'b')#

# 鲜美多汁的图片
?plot
# 改变type参数,可以改变点、线的类型

# 图形参数
# par(),不加参数执行par()将生成含有当前图形参数设置的列表;添加参数no.readonly = T可生成可修改当前图形参数列表

[AppleScript] 纯文本查看 复制代码
opar <- par(no.readonly = T)

par(lty = 2, pch = 17)# 将默认的线条类型改为虚线,默认的点符号改为实心三角

plot(dose, druga, type = 'b')

par(opar)


# 符号、线条
pch # 修改绘点时使用的符号
cex # 指定符号的大小,cex表示绘图符号相对默认大小的缩放倍数
lty # 指定线条类型
lwd # 指定线条宽度,以默认值的相对大小来表示
?pch




# 颜色
col # 默认的绘图颜色
col.axis # 坐标轴刻度文字的颜色
col.lab # 坐标轴标签的颜色
col.main # 标题颜色
col.sub # 副标题颜色
fg # 前景色
bg # 背景色

# 还可以使用RColorBrewer创建比较好看的颜色,书上写的也比较粗略,不如自己查一下,我对配色是不太感兴趣啦

# 文本属性
# 这个和符号、线条的参数有些类似,记住一个,类似使用就好了

# 指定字体族、字号、字样的参数
font # 整数,1 = 常规;2 = 粗体; 3 = 斜体; 4 = 粗斜体; 5 = 符号字体
# font.axis fon.lab font.main 用法都类似

# 图形尺寸与边界尺寸
pin # 英寸表示的图形尺寸(宽和高)
mar # 以数值向量表示边界大小,顺序为 “下、左、上、右”,单位为英分
mai # 以数值向量表示的边界大小,顺序“下、左、上、右”,单位为英寸

[AppleScript] 纯文本查看 复制代码
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 = T)

par(pin = c(2, 3)) # 图形尺寸

par(lwd = 2, cex = 3)# 线条、符号

par(cex.axis = .75, font.axis = 3)

plot(dose, druga, type = 'b', pch = 19, lty = 2, col = 'red')

par(opar)



help(par)



# 添加文本、自定义坐标、图例
# 例-添加标题(main)、副标题(sub)、坐标轴标签(xlab、ylab)、坐标轴范围(xlim、ylim)
[AppleScript] 纯文本查看 复制代码
plot(dose, druga, type = 'b',

     col = 'red', lty = 2, pch = 2, lwd = 2,

     main = 'ABC',

     sub = 'abc',

     xlab = 'good',

     ylab = 'ohyeah',

     xlim = c(0, 100), ylim = c(0, 110)

     )


# 标题
# title(main = , sub = , xlab = , ylab = )
# title()中亦可指定其他图形参数,如文本大小、字体、旋转角度和颜色
# 例-
[AppleScript] 纯文本查看 复制代码
plot(dose, druga, type = 'b',

     col = 'red', lty = 2, pch = 2, lwd = 2, xlab = '', ylab = ''

)

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 = .75)


# 坐标轴
# axis(side, at = , labels = , pos = , lty = , col = , las = , tck = , ...)
side # 整数,表示在图形的哪边绘制坐标轴,1 = 下, 2 = 左, 3 = 上, 4 = 右
at # 数值型向量,表示需要绘制刻度线的位置
labels # 字符型向量, 表示置于刻度线旁边的文字标签,如为NULL,则直接使用at中的值
pos # 坐标轴线绘制位置的坐标
las # 标签是否平行于(= 0)或垂直于(= 2)坐标轴
tck # 刻度线的长度,以相对于绘图区域大小的分数表示(负值表示在图形外,正值表示在图形内,
    # 0表示禁用刻度,1表示绘制网格线)
# 例-
[AppleScript] 纯文本查看 复制代码
x <- c(1:10)

y <- x

z <- 10/x

opar <- par(no.readonly = T)


[AppleScript] 纯文本查看 复制代码
par(mar = c(5,4,4,8) + 0.1) # 增加边界大小

plot(x, y, type = 'b',

     pch = 21, col = 'red', 

     yaxt = 'n',# y轴禁用,即 没有刻度线 

     lty = 3, ann = F)

lines(x, z, type = 'b', pch = 22, col = 'red', las = 2)


[AppleScript] 纯文本查看 复制代码
axis(2, at = x, labels = x, col.axis = 'red', las = 2)# 添加y轴的刻度线

axis(4, at = z, labels = round(z, digits = 2),

     col.axis = 'blue', las = 2,

     cex.axis = 0.7, tck = -.01)

mtext('y = 1/x', side = 4, line = 4, cex.lab = 1, las = 2, col = 'blue')# mtext()用于在图形的边界添加文本

title('An example of creative axes',

      xlab = 'x value',

      ylab = 'Y = X')

par(opar)



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x



上一篇:SNP 附近的SNP过滤 -- 求脚本
下一篇:统计学习笔记之一——huimei
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|生信技能树    

GMT+8, 2019-4-24 09:18 , Processed in 0.029779 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.