Thank you for the suggestions, Peter and David!
----- Original Message ---- > From: Peter Ehlers <ehl...@ucalgary.ca> > To: David Winsemius <dwinsem...@comcast.net> > Cc: "Shi, Tao" <shida...@yahoo.com>; r-help@r-project.org > Sent: Wed, May 19, 2010 8:45:24 PM > Subject: Re: [R] colored venn diagram > > Tao, You might also have a look at the venneuler package. > -Peter Ehlers On 2010-05-19 21:37, David Winsemius wrote: > > > On May 19, 2010, at 7:15 PM, Shi, Tao wrote: > >> Hi > list, >> >> This is probably too much to ask, but I'm > wondering if there is a >> ready-to-use function somewhere that allows > me to color one area of a >> venn diagram (e.g. the intersection of two > sets)? >> > > There is an intersectDiagrapm in plotrix that > accepts color arguments, > although it is not really a Venn > diagram. > > The venn function in gplots does not accept color. It > is a wrapper to > getVennCounts and drawVennDiagram, and if you hack the > second function > you can get colors. For the example in the help page for > Venn, you need > to find the section that handles the correct number of > sets and add a > color argument to the polygon call. If you want > intersections you will > need transparency. I do not know how to address > specific subsets: > > require(gplots) > require(seqinr) # for > col2alpha for transparency > > getAnywhere(drawVennDiagram) # add an > assignment operator and trim out > this stuff---- > A single object > matching ‘drawVennDiagram’ was found > It was found in the following > places > namespace:gplots > with value > ----------end > trimming-------------- > function (data, small = 0.7, showSetLogicLabel = > FALSE, simplify = FALSE) > { > numCircles <- NA > . > > . > # make mod to n==4 section > + polygon(relocate_elp(elps, 45, > 130, 170), col=col2alpha("red", 0.5) ) > + polygon(relocate_elp(elps, 45, > 200, 200), col=col2alpha("blue", 0.5) ) > + polygon(relocate_elp(elps, > 135, 200, 200)) > + polygon(relocate_elp(elps, 135, 270, 170)) > > . > . > ... And then pass the result from venn to > drawVennDiagram: > > gv <- venn(input) > > drawVennDiagram(data = gv, small = 0.7, showSetLogicLabel = FALSE, > > simplify = FALSE) > > Set #1 in pink set2 in blue and the > intersection is purple. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.