Вот мои данные и сюжетмножественным расположение участка на уровне одной переменной в базовом участке в г
nmar <- seq (1, 100, 5)
position= rep(nmar, 5)
n = length (nmar)
chr = rep(1:5, each = n)
mapdata <- data.frame (chr, position,
snpname = paste("SNP-", 1:length (position), sep = ""))
mapdata
chr.lab = 1 ; mbar.col = "blue"
layout(matrix(c(1,1,2),nc=1)) # works for two but I need to extend it to
n (which is level of chr = 5)
# plot level 1
mapdata1 <- mapdata[mapdata$chr == 1,]
m <- par()$mar
m[1] <- m[3] <- 0
par(mar=m)
# Set the limits of the plot
plot(mapdata1$position,mapdata1$position-mapdata1$position, type="n",
axes=FALSE,
xlab="", ylab="Chromsome", yaxt="n")
polygon(
c(0,max(mapdata1$position + 0.08 * max(mapdata1$position)),max(mapdata1$position)+
0.08 * max(mapdata1$position),0),
.2*c(-0.3,-0.3,0.3,0.3),
col= mbar.col
)
segments(mapdata1$position, -.3, mapdata1$position, .3)
text(mapdata1$position, -.7, mapdata1$snpname, srt = 90, cex.lab = chr.lab)
text(mapdata1$position, .7, mapdata1$position,cex.lab = chr.lab)
text(0, labels = c("Chr 2"))
Второй уровень
# plot level 2
mapdata2 <- mapdata[mapdata$chr == 2,]
m <- par()$mar
m[1] <- m[3] <- 0
par(mar=m)
# Set the limits of the plot
plot(mapdata2$position,mapdata2$position-mapdata1$position, type="n", axes=FALSE,
xlab="", ylab="Chromsome", yaxt="n")
polygon(
c(0,max(mapdata2$position + 0.08 * max(mapdata2$position)),max(mapdata2$position)+
0.08 * max(mapdata2$position),0),
.2*c(-0.3,-0.3,0.3,0.3),
col= mbar.col
)
segments(mapdata2$position, -.3, mapdata2$position, .3)
text(mapdata2$position, -.7, mapdata2$snpname, srt = 90, cex.lab = chr.lab)
text(mapdata2$position, .7, mapdata2$position,cex.lab = chr.lab)
text(0, labels = c("Chr 2"))
Выход
(1) Как можно Я автоматизирую процесс для n уровней - расширяя аналогичный график до n уровней chr (2) Если вы видите, что баризетка с одинаковой спецификацией имеет c повешенное, может быть связано с разной площадью участка. Как я могу настроить его, чтобы сделать все графики одинаковыми?
какой-либо конкретной причины для желающих придерживаться базовых участков? ggplot2 и решетка обеспечивают простое решение для создания таких составных графиков, которые видят эти ссылки для множества примеров. http://learnr.wordpress.com/2009/06/28/ggplot2-version-of-figures-in-lattice-multivariate -data-visualization-with-r-part-1/http://learnr.wordpress.com/2009/06/29/ggplot2-version-of-figures-in-lattice-multivariate-data-visualization-with-r -part-2/http://learnr.wordpress.com/2009/07/02/ggplot2-version-of-figures-in-lattice-multivariate-data-visualization-with-r-part-3/ –
Я согласен что ggplot2 и решетка лучше, однако я чувствую, что их трудно манипулировать, не так ли? – SHRram
Я нахожу ggplot2 довольно простым в использовании, как только вы получите его. Imo явно стоит переключиться на ggplot2 или на решетку, хотя после работы с обоими из них я предпочитаю ggplot2. –