### R code from vignette source 'vignettes/trackViewer/inst/doc/trackViewer.Rnw' ################################################### ### code chunk number 1: style ################################################### BiocStyle::latex() ################################################### ### code chunk number 2: plotComp ################################################### library(Gviz) library(rtracklayer) library(trackViewer) extdata <- system.file("extdata", package="trackViewer", mustWork=TRUE) fox2 <- importScore(file.path(extdata, "fox2.bed"), format="BED") fox2$dat <- coverageGR(fox2$dat) gr <- GRanges("chr11", IRanges(122929275, 122930122), strand="-") viewTracks(trackList(fox2), gr=gr, autoOptimizeStyle=TRUE, newpage=FALSE) dt <- DataTrack(range=fox2$dat[strand(fox2$dat)=="-"] , genome="hg19", type="hist", name="fox2", window=-1, chromosome="chr11", fill.histogram="black", col.histogram="NA", background.title="white", col.frame="white", col.axis="black", col="black", col.title="black") plotTracks(dt, from=122929275, to=122930122, strand="-") ################################################### ### code chunk number 3: Gviz ################################################### viewerStyle <- trackViewerStyle() setTrackViewerStyleParam(viewerStyle, "margin", c(.01, .13, .02, .02)) empty <- DataTrack(showAxis=FALSE, showTitle=FALSE, background.title="white") plotTracks(list(empty, dt), from=122929275, to=122930122, strand="-") pushViewport(viewport(0, .5, 1, .5, just=c(0, 0))) viewTracks(trackList(fox2), viewerStyle=viewerStyle, gr=gr, autoOptimizeStyle=TRUE, newpage=FALSE) popViewport() grid.text(label="Gviz track", x=.3, y=.4) grid.text(label="trackViewer track", x=.3, y=.9) ################################################### ### code chunk number 4: lostcode ################################################### gr <- GRanges("chr1", IRanges(c(1, 6, 10), c(3, 6, 12)), score=c(3, 4, 1)) dt <- DataTrack(range=gr, data="score", type="hist") plotTracks(dt, from=2, to=11) tr <- new("track", dat=gr, type="data", format="BED") viewTracks(trackList(tr), chromosome="chr1", start=2, end=11) ################################################### ### code chunk number 5: GvizLost ################################################### plotTracks(list(empty, dt), from=2, to=11) pushViewport(viewport(0, .5, 1, .5, just=c(0, 0))) viewTracks(trackList(tr), viewerStyle=viewerStyle, chromosome="chr1", start=2, end=11, autoOptimizeStyle=TRUE, newpage=FALSE) popViewport() grid.text(label="Gviz track", x=.3, y=.4) grid.text(label="trackViewer track", x=.3, y=.9) ################################################### ### code chunk number 6: importData ################################################### library(trackViewer) extdata <- system.file("extdata", package="trackViewer", mustWork=TRUE) repA <- importScore(file.path(extdata, "cpsf160.repA_-.wig"), file.path(extdata, "cpsf160.repA_+.wig"), format="WIG") ## because the wig file does not contain strand info, ## we need to set it manually strand(repA$dat) <- "-" strand(repA$dat2) <- "+" ################################################### ### code chunk number 7: coverage ################################################### fox2 <- importScore(file.path(extdata, "fox2.bed"), format="BED") dat <- coverageGR(fox2$dat) ## we can split the data by strand into two different track channels ## here we set the dat2 slot to save the negative strand info, ## reverse order as previous. fox2$dat <- dat[strand(dat)=="+"] fox2$dat2 <- dat[strand(dat)=="-"] ################################################### ### code chunk number 8: geneModel ################################################### library(TxDb.Hsapiens.UCSC.hg19.knownGene) trs <- geneModelFromTxdb(TxDb.Hsapiens.UCSC.hg19.knownGene, "chr11", 122929275, 122930122, "-") ################################################### ### code chunk number 9: viewTracks ################################################### gr <- GRanges("chr11", IRanges(122929275, 122930122), strand="-") viewerStyle <- trackViewerStyle() setTrackViewerStyleParam(viewerStyle, "margin", c(.1, .05, .02, .02)) vp <- viewTracks(trackList(repA, fox2, trs), gr=gr, viewerStyle=viewerStyle, autoOptimizeStyle=TRUE) addGuideLine(c(122929767, 122929969), vp=vp) addArrowMark(list(x=122929650, y=unit(.39, "npc")), label="label", col="blue", vp=vp) ################################################### ### code chunk number 10: optSty ################################################### optSty <- optimizeStyle(trackList(repA, fox2, trs)) trackList <- optSty$tracks viewerStyle <- optSty$style ################################################### ### code chunk number 11: viewTracksXaxis ################################################### setTrackViewerStyleParam(viewerStyle, "xaxis", FALSE) setTrackViewerStyleParam(viewerStyle, "margin", c(.01, .05, .01, .01)) setTrackXscaleParam(trackList[[1]], "draw", TRUE) setTrackXscaleParam(trackList[[1]], "gp", list(cex=.5)) viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 12: viewTracksYaxis ################################################### setTrackViewerStyleParam(viewerStyle, "margin", c(.01, .05, .01, .05)) setTrackYaxisParam(trackList[[1]], "main", FALSE) setTrackYaxisParam(trackList[[2]], "main", FALSE) viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 13: viewTracksYlab ################################################### setTrackStyleParam(trackList[[1]], "ylabgp", list(cex=.8, col="green")) ## set cex to avoid automatic adjust setTrackStyleParam(trackList[[2]], "ylabgp", list(cex=.8, col="blue")) setTrackStyleParam(trackList[[2]], "marginBottom", .2) viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 14: viewTracksYlabTopBottom ################################################### setTrackStyleParam(trackList[[1]], "ylabpos", "bottomleft") setTrackStyleParam(trackList[[1]], "marginBottom", .2) ## set cex to avoid automatic adjust setTrackStyleParam(trackList[[2]], "ylabpos", "topright") setTrackStyleParam(trackList[[2]], "marginTop", .2) viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 15: viewTracksCol ################################################### setTrackStyleParam(trackList[[1]], "color", c("green", "black")) setTrackStyleParam(trackList[[2]], "color", c("black", "blue")) for(i in 3:length(trackList)) setTrackStyleParam(trackList[[i]], "color", "black") viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 16: viewTracksNames ################################################### names(trackList) <- c("cpsf160", "fox2", rep("HSPA8", 5)) viewTracks(trackList, gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 17: viewTracksPaired ################################################### cpsf160 <- importScore(file.path(extdata, "cpsf160.repA_-.wig"), file.path(extdata, "cpsf160.repB_-.wig"), format="WIG") strand(cpsf160$dat) <- strand(cpsf160$dat2) <- "-" setTrackStyleParam(cpsf160, "color", c("black", "red")) viewTracks(trackList(trs, cpsf160), gr=gr, viewerStyle=viewerStyle) ################################################### ### code chunk number 18: sessionInfo ################################################### toLatex(sessionInfo())