欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

R语言绘图大小设定的操作

程序员文章站 2022-06-23 08:30:20
图片大小设定x = c(1:10)y = c(11:20)par(pin = c(5,3))#pin()函数控制图形的尺寸plot(x = x, y = y)x = c(1:10)y = c(11:2...

图片大小设定

x = c(1:10)
y = c(11:20)
par(pin = c(5,3))#pin()函数控制图形的尺寸
plot(x = x, y = y)

R语言绘图大小设定的操作

x = c(1:10)
y = c(11:20)
par(pin = c(2,3))#pin()函数控制图形的尺寸
plot(x = x, y = y)

R语言绘图大小设定的操作

补充:r语言ggplot2绘图设置x轴刻度,字体大小及绘图区大小

如下所示:

> colnames(data1)[seq(2,ncol(data1), 15)]
 [1] "aaaa" "aagg" "atgc" "acgt" "agga" "tacg" "ttcc" "tcct" "tgca" "catg"
[11] "cttc" "cctt" "cgta" "gaag" "gtac" "gcat" "ggaa" "gggg"
 
> ggplot(data2[data2$name==11,], aes(x = tetra, y = freq, group = 1)) + geom_line(size=0.2) + theme_bw() + scale_x_discrete(breaks = colnames(data1)[seq(2,ncol(data1), 15)])
 
// scale_x_discrete 可以设置x轴显示的刻度,调整稀疏程度,比如 breaks=seq(0,12200,1000)
 
> ggplot(data2[data2$name==11,], aes(x = tetra, y = freq, group = 1)) + geom_line(size=0.2) + theme_bw() + scale_x_discrete(breaks = colnames(data1)[seq(2,ncol(data1), 15)]) + theme(axis.text.x = element_text(face="bold", color="blue", size=8))
 
// ggplot2 中有很多 element可以调整矩形,字体,线段的属性,比如 element_rect, element_line, element_blank, element_text
// http://docs.ggplot2.org/0.9.2.1/theme.html 
 
// panel.margin 用于 theme() 中,主要用于调整绘图区域各图之间的间距
// margin 用于element中,调整element 与周围图形元素的距离
 
// plot.margin 用于 theme()中,用于调整整个绘图区的边缘位置
 
> ggplot(data2[data2$name==11,], aes(x = tetra, y = freq, group = 1)) + geom_line(size=0.2) + theme_bw() + scale_x_discrete(breaks = colnames(data1)[seq(2,ncol(data1), 15)]) + theme(axis.text.x = element_text(face="bold", color="blue", size=8), plot.margin = unit(c(2,3,3,4),"cm"))
 

有三种方法可以设置x轴或y轴 刻度范围

> p + scale_x_continuous(limits = c(-5,15))  // 方法一
> p + xlim(-5,15)  // 方法二 
> p + xlim(min(dt$a, 0)*1.2, max(dt$a)*1.2)  // 一般使用倍数来限定大小,注意定义最小值的方式
> 
// 在theme 中可以用 axis.title.x或y 调整坐标轴的标识
// 
geom_text(aes(label = "point_k"))  // 这个可以给点添加文字label 
// scale_size 可以把图中的数据点转化为不同大小的点 
// //

原始绘图代码:

> library(ggplot2)
> library(reshape2)
> setwd("/users/m/working/r_bin_two/new_bin")
> data1 <- read.table("result_data_g2.txt", header=t, check.names = f, fill =t)
> data2 <- melt(data1, id="name")
> colnames(data2)[2:3] <- c("tetra","freq")
> data2[,1] <- as.factor(data2[,1])
> p <- ggplot(data2, aes(x = tetra, y = freq, group = name, colour = name)) 
> p + geom_line(size=0.2) 
> p + theme_bw() 
> p + scale_x_discrete(breaks = colnames(data1)[seq(2,ncol(data1), 15)]) 
> p + guides(color = guide_legend(ncol=6))
> p + theme(axis.text.x = element_text(face="bold", color="blue", size=8), plot.margin = unit(c(2,3,3,4),"cm"))

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。