积极响应国家号召,在家认真工作学习


积极响应国家号召,在家认真工作学习

R语言学习总结:

安装地址:R语言官网下载

软件仓库:

CRAN ------ install.packages('name')

Bioconductor --------- source("https://bioconductor.org/biocLite.R")

biocLite('name')

GitHub --------- library(devtools)

install_github('name')

一般流程:

安装软件包(只需要安装一次,其他时候直接是导入软件包 library('包名'))

清除已有环境变量

设置工作目录

加载软件包

读取文件

执行命令

结果写入

图片输出

本地帮助系统

help.start()

help(heatmap) ?heatmap #得到heatmap的帮助页面

apropos("plot") #找出帮助中有plot的函数

help.search("plot") #列出在所有帮助页面含有plot的函数

find("plot") #得到名为plot的程序包

args("plot") #得到名为plot的自变量列表

数组

array(data=NA,dim=length(data),dimnames=NULL)

矩阵

matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)

data 为一个向量,其元素用于构建 矩阵

nrow 矩阵的行数

ncol 矩阵的列数

byrow 是否按行填充

dimnames 矩阵行列的名字

建立数据框的方法(函数)

read.table() 表格式文件

read.csv() 逗号分隔的文件

read.delim() tab键分隔的文件

程序运行

在R内部 source("input.R")

在命令行CMD Rscript input.R

命令行参数传递 commandArgs(trailingOnly=FALSE)

数据转换 类型检测

is.data.frame is.character is.list is.factor is.numeric

类型转换

as.data.frame as.array as.matrix as.vector as.list

读取数据框格式数据

read.table() #读取混合模式列表数据

read.table(file, #数据文件名

header=FALSE, #是否表头

sep="", #列(字段)分隔符

quote="\", #字符串标示符

dec=".", #小数点提示符

row.names, #指定行名

col.names, #指定列名

na.strings="NA", #缺省值提示符

comment.char="#" # 注释标示符

rt

str(rt)

write.table() #数据的存储

write.table(x,

file="data.txt",

ncolumns=if(is.character(x)) 1 else 5,

append=FALSE)

高级绘图函数

plot(x) 以x的元素值为纵坐标,以序号为横坐标绘图

plot(x,y) x与y的二元作图

pie(x) 饼图

boxplot(x) 盒形图 也称箱线图

hist(x) x的频率直方图

barplot(x) x的值得条形图

pairs(x) 如果x是矩阵或者数据框

coplot(x~y|z) 做x的各列之间的二元图,关于z的每个数值(或数值区间)的绘制

matplot(x,y) 二元图 其中x的第一列对应y的第一列

qqnorm(x) 正态分位数--分位数图

images(x,y,z) x,y,z三元图

heatmap(x) 热图

共同参数选项

add=FALSE

axes=TRUE

TYPE="p" 指定图形的类型,“p”: 点 "l":线 "b":点连线 "o":同上,但是点在线上 "h":垂直线 "s":阶梯式,垂直线顶端显示数据 "S":同上,但是是垂直线低端显示数据;

xlim=,ylim= 指定轴的显示范围

xlab,ylab= 坐标轴的标签

main 主标题

sub 副标题

低级绘图函数

points(x,y) 添加点

lines(x,y)text(x,y,tables,...) 添加线

mtext(text,side=3,line=0,.....) 在(x,y)处添加用labels指定的文字

segment(x0,y0,x1,y1) 从(x0,y0)各点到(x1,y1)各点曲线段

arrows(x0,y0,x1,y1) 同上,而且添加箭头

abline(a,b) 绘制斜率为b和截距为a的直线

abline(h=y) 在纵坐标处画水平线

abline(v=x) 在横坐标x处画垂直线

abline(lm,obj) 画出lm,obj确定的回归线

rect(x1,y1,x2,y2) 绘制长方形,(x1,y1)为左下角,(x2,y2)为右上角

polygon(x,y) 绘制链接x,y坐标确定的点的多边形

legend(x,y) 在点(x,y)处添加图例,说明内容有legend的给定

title() 添加标题,也可添加一个副标题

axis(side,vect) 画坐标轴

box() 在当前的图上加边框

rug(x) 在x轴上用短线画出x数据的位置

locator(n,type="n",...) 获取鼠标在图中点击处的坐标

绘图参数介绍 help(par)

adj 控制关于文字对齐方式

bg 背景色

bty 图形边框形状

cex 符号和文字的大小 cex.axis cex.lab cex.main cex.sub

col 颜色 col.axis col.lab col.main col.sub

font 文字字体 font.axis font.lab font.mian font.sub

las 坐标轴刻度数字标记方向

lty 连线的线性

lwd 线的宽度

mar 图形边空的大小

mfcol,mfrow c(nr,nc)的向量,前者按列分割绘图窗口,后者按行分割绘图窗口

pch 绘制符号的类型

ps 文字大小

pty 绘图区域类型

tck 轴刻度长度,tck=1时,则绘制grid

xaxt,yaxt 如果xaxt="n",设置x轴不显示,如果yaxt="n",设置Y轴不显示

图片输出方式

直接输入绘图命令,一般直接打印到屏幕或者plots窗口

位图

png(file="out.png",height=800,width=600,units="px",res=72)

绘图命令

dev.off()

矢量图

pdf(file="out.pdf",height=8,width=6)

绘图命令

dev.off()

pdf尺寸单位是inch(英寸)

help(par)

par(mgp=c(1.6,0.6,0),mar=c(3,3,2,1))

x=1:10;y=1:10

cex_type=c(0.7,0.8,0.9,1,2,3,4,5,6,7)

plot(x,y,col="blue",pch=16,

cex=cex_type, #绘图符号大小,1是正常大小

cex.axis=1.1, #坐标轴刻度数字大小

cex.lab=1.2, #坐标轴标签大小

cex.sub=1.3, #副标题文字大小

cex.main=1.4, #标题文字大小

font.axis=3, #坐标轴刻度字体 斜体

font.lab=2, #坐标轴标签字体 粗体

font.main=4, #标题字体,粗斜体

font.sub=1, #副标题字体 正常

main="字体",

xlim=c(1,12),ylim=c(1,12))

text(x,y,adj=0,labels=paste("cex=",cex_type),col = "red",cex = 1.2,font = 3)


par(mgp=c(1.6,0.6,0),mar=c(3,3,2,1))

pch_type=c(1:5,15:19)

col_type=c(1:10)

x=1:10;y=rep(6,10)

plot(x,y,pch=pch_type,col=col_type,cex=2,main="pch",font.lab=2)

text(x,y,adj=-0.5,col=col_type,labels=paste("pch=",pch_type),srt=90)


分享到:


相關文章: