barplot()函数画条形图

时间:2022-04-06 05:58:14

barplot(height, width = 1, space = NULL,

            names.arg = NULL, legend.text = NULL, beside = FALSE,

 horiz = FALSE, density = NULL, angle = 45,
col = NULL, border = par("fg"),
main = NULL, sub = NULL, xlab = NULL, ylab = NULL,
xlim = NULL, ylim = NULL, xpd = TRUE, log = "",
axes = TRUE, axisnames = TRUE,
cex.axis = par("cex.axis"), cex.names = par("cex.axis"),
inside = TRUE, plot = TRUE, axis.lty = 0, offset = 0,
add = FALSE, args.legend = NULL, ...
)

1.接受的数据(height参数):

a.height参数是vector,条形的height与vector的数据一致

b.1:height参数是matrix,beside=FALSE。matrix中的每列堆在一个条形上。

b.2:height参数是matrix,beside=TURE。matrix中的每列的每个数构成一个条形。

barplot()函数画条形图

2.条形的方向(horiz)

horiz=F:默认选项,条形的方向是树直的。

horiz=T:条形的方向是水平的。

barplot()函数画条形图

 

3.给条形图没数据的一边添加注释:用text()函数

text(x, y = NULL, labels = seq_along(x$x), adj = NULL,
pos = NULL, offset = 0.5, vfont = NULL,
cex = 1, col = NULL, font = NULL, ...)
text函数是根据具体的坐标位置给注释的。所以需要得到具体的坐标(x,y)。
labels是注释的内容vector。
pos是注释在坐标的位置(1下,2左,3上,4右)
srt旋转的角度

难点:如何准确获得需要的坐标位置:
用barplot函数作为x(horiz=F)或y(horiz=T)
data<-read.table('gene_chr',header=F)
barplot(data$V1,horiz=T,xlab="gene_number")
text(x=50000,y=barplot(data$V1,horiz=T,xlab="gene_number"),labels=data[,2])

  barplot()函数画条形图




参考:http://www.mamicode.com/info-detail-1774107.html