Sushi draws a partially enlarged bedgraph graph
Introduction
The bedgraph graph can be displayed using the plotBedgraph function of the Sushi package. However, we sometimes need to magnify a certain part of the coordinate axis on the basis of the original picture. At this time, use the magnification function of the Sushi package (including circle the magnified part and add magnified side branches
Code explanation
Input
bedGraph格式的data frame
head(Sushi_DNaseI.bedgraph)
chrom start end value1
chr11 1640504 1640664 12
chr11 1640904 1641004 13
chr11 1641004 1641064 24
chr11 1641064 1641164 15
chr11 1645224 1645384 16
chr11 1645504 1645664 1
Code example
library('Sushi') # Loading Sushi package
Sushi_data = data(package ='Sushi') # List Sushi's own data
data(list = Sushi_data$results[,3]) # Load data
layout(matrix(c(1,1,2,3),2, 2, byrow = TRUE)) # Lay out the canvas using traditional lyout
par(mar=c(3,4,1,1)) # Adjust the margins of the drawing
chrom = "chr11" #Chromosomes
chromstart = 1900000 #The starting position of the drawn chromosome
chromend = 2350000 #The end position of the drawn chromosome
# Drawing
plotBedgraph(Sushi_DNaseI.bedgraph,chrom,chromstart=chromstart,
chromend=chromend,colorbycol= SushiColors(5)) #Add bedgraph figure
labelgenome(chrom,chromstart=chromstart,chromend=chromend,n=4,
scale="Mb") #Add axis position
mtext("Read Depth",side=2,line=1.75,cex=1,font=2) #Add Y-axis annotation
axis(side=2,las=2,tcl=.2) #Add Y axis
Use the zoomsregion function to zoom in on the specified area, where c(0, 0.580) of offsets, where 0 means that the distance between the left side branch and the left is 0, the right side branch is 0.580 from the right, and wideextend adjusts the left and right The proportional size of the side branch angle, extend=c(0.01,0.13), which means that the distance from the top to the graph is 0.01, and the distance from the beginning of the lower side branch is 0.13
zoomregion1 = c(1955000,1960000)
zoomregion2 = c(2279000,2284000)
zoomsregion(zoomregion1,extend=c(0.01,0.13),wideextend=0.05,
offsets=c(0,0.580))
zoomsregion(zoomregion2,extend=c(0.01,0.13),wideextend=0.05,
offsets=c(0.580,0))
Then use plotBedgraph to draw the picture, zoombox will add a border to the subsequent picture
plotBedgraph(Sushi_DNaseI.bedgraph,chrom,chromstart=zoomregion1[1],
chromend=zoomregion1[2],colorbycol= SushiColors(5))
labelgenome(chrom,chromstart=zoomregion1[1],chromend=zoomregion1[2],
n=4,scale="Kb",edgeblankfraction=0.2,cex.axis=.75)
zoombox() # Add border
mtext("Read Depth",side=2,line=1.75,cex=1,font=2)
axis(side=2,las=2,tcl=.2)
plotBedgraph(Sushi_DNaseI.bedgraph,chrom,chromstart=zoomregion2[1],
chromend=zoomregion2[2],colorbycol= SushiColors(5))
labelgenome(chrom,chromstart=zoomregion2[1],chromend=zoomregion2[2],
n=4,scale="Kb",edgeblankfraction=0.2,cex.axis=.75)
zoombox() # Add border
mtext("Read Depth",side=2,line=1.75,cex=1,font=2)
axis(side=2,las=2,tcl=.2)
Reference
https://www.bioconductor.org/packages/release/bioc/vignettes/Sushi/inst/doc/Sushi.pdf