图片大小设定
1
2
3
4
|
x = c(1:10)
y = c(11:20)
par(pin = c(5,3)) #pin()函数控制图形的尺寸
plot(x = x, y = y)
|
1
2
3
4
|
x = c(1:10)
y = c(11:20)
par(pin = c(2,3)) #pin()函数控制图形的尺寸
plot(x = x, y = y)
|
补充:R语言ggplot2绘图设置X轴刻度,字体大小及绘图区大小
如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
> 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轴 刻度范围
1
2
3
4
5
6
7
8
9
|
> 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 可以把图中的数据点转化为不同大小的点
// //
|
原始绘图代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
> 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" ))
|
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/tandelin/article/details/94769728