Mao Jianfeng
2009-Oct-20 07:10 UTC
[R] how to draw stacked ellipses to illustrate the shared and specific of multiple objects using R
Dear R-help listers, I am now asking for helps on how to draw stacked ellipses to illustrate the shared and specific of multiple objects using R. My problem comes from my population genetics study. Now, I genotyped three species, and I get known about the amount of shared and specific haplotypes in each of the species and their combinations. I want to illustrate this result in three stack ellipses, with the shared and unique area of the stack ellipses were annotated with the relative amount. my data is as followed: ------------------------------------------------------------ hap.type hap.dis.num hap.dis.per types hap.Pd 8 27.5862069 Pd specific hap.Pt 6 20.68965517 Pt specific hap.Py 9 31.03448276 Py specific hap.PdPt 3 10.34482759 PdPt shared hap.PdPy 3 10.34482759 PdPy shared hap.PtPy 0 0 PtPy shared hap.3P 0 0 3 species shared ------------------------------------------------------------- Several individuals of 3 species (Pd, Pt, Py) were genotyped, the summary of haplotype distribution in species level were contained in the forward dataset. Could you please give any direction on this graphical problem? Thank you in advance. Best regards, Mao J-F
Jim Lemon
2009-Oct-20 08:16 UTC
[R] how to draw stacked ellipses to illustrate the shared and specific of multiple objects using R
On 10/20/2009 06:10 PM, Mao Jianfeng wrote:> Dear R-help listers, > > I am now asking for helps on how to draw stacked ellipses to > illustrate the shared and specific of multiple objects using R. > > My problem comes from my population genetics study. Now, I genotyped > three species, and I get known about the amount of shared and specific > haplotypes in each of the species and their combinations. I want to > illustrate this result in three stack ellipses, with the shared and > unique area of the stack ellipses were annotated with the relative > amount. > > my data is as followed: > > ------------------------------------------------------------ > hap.type hap.dis.num hap.dis.per types > hap.Pd 8 27.5862069 Pd specific > hap.Pt 6 20.68965517 Pt specific > hap.Py 9 31.03448276 Py specific > hap.PdPt 3 10.34482759 PdPt shared > hap.PdPy 3 10.34482759 PdPy shared > hap.PtPy 0 0 PtPy shared > hap.3P 0 0 3 species shared > ------------------------------------------------------------- > > Several individuals of 3 species (Pd, Pt, Py) were genotyped, the > summary of haplotype distribution in species level were contained in > the forward dataset. > > Could you please give any direction on this graphical problem? Thank > you in advance. >Hi Mao, I can't help you with ellipses, but intersectDiagram in the plotrix package may do what you want in a different way. Try this: library(plotrix) hapIntList<- getIntersectList(3,xnames=c("hap.Pd","hap.Pt","hap.Py")) # enter the data as follows #Number of elements in hap.Pd - 1: 27.586 #Number of elements in hap.Pt - 1: 20.689 #Number of elements in hap.Py - 1: 31.034 #Number of elements in hap.Pdhap.Pt - 1: 10.345 #Number of elements in hap.Pdhap.Py - 1: 10.345 #Number of elements in hap.Pthap.Py - 1: 0 #Number of elements in hap.Pdhap.Pthap.Py - 1: 0 #Total number of elements - 1: 99.999 # this is a small bug that I have fixed and will # not be necessary from v2.7-2 onward class(hapIntList)<-"intersectList" intersectDiagram(hapIntList) I'm quite interested in whether this is of any use to you, as I had not even thought of this particular use for intersectDiagram. Jim