[R] colored venn diagram
Shi, Tao
shidaxia at yahoo.com
Thu May 20 23:47:55 CEST 2010
Thank you for the suggestions, Peter and David!
----- Original Message ----
> From: Peter Ehlers <ehlers at ucalgary.ca>
> To: David Winsemius <dwinsemius at comcast.net>
> Cc: "Shi, Tao" <shidaxia at yahoo.com>; r-help at 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.
>
More information about the R-help
mailing list