I'm trying to make a synteny plot using R/Circos.
I have two input files, one file with "cytogenetic" information for all chromosomes in both species.
Chromosome ChromStart ChromEnd Band Stain
X 1 73195 1A1 gneg
X 73195 86828 1A2 gpos
chr3 28681620 28681643 383 gpos
chr3 28681643 28681652 384 gneg
The second input file has the linkages (every line is a gene, the first three columns are the chromosome, start, and stop in species A and the second three are the chromosome, start, and stop in species B)
Chromosome chromStart chromEnd Chromosome.1 chromStart.1 chromEnd.1
X 143006 147332 chr3 49167572 49168700
X 196281 198758 chr3 48985944 48987075
X 244442 245670 chr3 50638796 50639069
X 246850 253258 chr3 48958829 48960058
I can make the circle of chromosomes fine, and it's all labeled correctly, but when I try to make the links between chromosomes, the program won't allow links happen between one chromosome from species A to two different chromosomes in species B, even when I set by.chromosome=F
. In other words, if there are two genes on chromosome x in species A, and they go to two different chromosomes in species B, I get the error:
Error in RCircos.Validate.Genomic.Data(link.data, plot.type = "link") : Location is outside of chromosome length.
I know it has to do with the fact that they're going to two different chromosomes because I manually checked all the boundaries of the chromosomes and all the gene positions are within them.
Does anyone have any ideas or suggestions on how to make multiple inter-chromosomal links using R/Circos?
Thanks!
Hello, I am having the same problem now. Did you manage to make it work?