On 04/22/2014 06:32 AM, VG wrote:> Hello Everyone,
> I have a text file which has data in this format.
>
> gene start end freq
> Slc19a1 81 144 1
> Slc19a1 192 255 6
> Slc19a1 273 336 7
> Slc19a1 363 426 4
> Slc19a1 465 528 3
> Slc19a1 540 603 5
> Slc19a1 813 876 5
> Slc19a1 912 975 6
> Slc19a1 987 1050 8
> Slc19a1 1062 1125 6
> Slc19a1 1170 1233 8
> Slc19a1 1278 1341 6
>
> I want to draw a histogram between start and end of the above files on the
> x axis and freq associated with each interval on the y axis. How can I do
> this. I am just beginning to plot graphs in R.
>
Hi VG,
Here is a very basic way to do this:
vgdf<-read.table(text="gene start end freq
Slc19a1 81 144 1
Slc19a1 192 255 6
Slc19a1 273 336 7
Slc19a1 363 426 4
Slc19a1 465 528 3
Slc19a1 540 603 5
Slc19a1 813 876 5
Slc19a1 912 975 6
Slc19a1 987 1050 8
Slc19a1 1062 1125 6
Slc19a1 1170 1233 8
Slc19a1 1278 1341 6",header=TRUE)
fbePlot<-function(ext,freq) {
plot(range(ext),range(freq),type="n",xlab="Extent",ylab="Frequency")
dimext<-dim(ext)
for(extent in 1:dimext[1])
rect(ext[extent,1],0,ext[extent,2],freq[extent])
}
fbePlot(vgdf[,c("start","end")],vgdf[,"freq"])
Jim