* Venn diagram
@ 2006-01-20 5:08 David Arnold
2006-01-20 5:49 ` Aditya Mahajan
0 siblings, 1 reply; 5+ messages in thread
From: David Arnold @ 2006-01-20 5:08 UTC (permalink / raw)
All,
I have:
\startMPpage %figure library name: intersection
%initialize scale
numeric u; 10u=3in;
%ellipses
path A, B;
A:=fullcircle xyscaled (4u,3u);
B:=A shifted (2u,0);
draw A withcolor red;
label.ulft(btex $A$ etex, point 3 of A) withcolor red;
draw B withcolor blue;
label.urt(btex $B$ etex, point 1 of B) withcolor blue;
%bounding box
draw bbox currentpicture enlarged (0.5u,0.5u);
\stopMPpage
I need an easy way of shading these areas:
1. A intersect B
2. A union B
3. A intersect (complement of B)
4. (complement of A) intersect B
Thanks
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Venn diagram
2006-01-20 5:08 Venn diagram David Arnold
@ 2006-01-20 5:49 ` Aditya Mahajan
2006-01-20 18:22 ` Mojca Miklavec
0 siblings, 1 reply; 5+ messages in thread
From: Aditya Mahajan @ 2006-01-20 5:49 UTC (permalink / raw)
<--- On Jan 19, David Arnold wrote --->
> All,
>
> I have:
>
> \startMPpage %figure library name: intersection
>
> %initialize scale
> numeric u; 10u=3in;
>
> %ellipses
> path A, B;
> A:=fullcircle xyscaled (4u,3u);
> B:=A shifted (2u,0);
> draw A withcolor red;
> label.ulft(btex $A$ etex, point 3 of A) withcolor red;
> draw B withcolor blue;
> label.urt(btex $B$ etex, point 1 of B) withcolor blue;
>
> %bounding box
> draw bbox currentpicture enlarged (0.5u,0.5u);
>
> \stopMPpage
>
> I need an easy way of shading these areas:
>
> 1. A intersect B
> 2. A union B
> 3. A intersect (complement of B)
> 4. (complement of A) intersect B
There is venn.mp on ctan. Using it you can do basic shading of
intersection, union etc for 0,1,2 or 3 sets very quickly. Read the
documentation in source for details. For example
\startMPinclusions
input venn;
pair A,B,T[];
A = (.4venn_width-.5venn_circle_diameter,.5venn_height);
B = (.6venn_width+.5venn_circle_diameter,.5venn_height);
T1 = (.5venn_width , 0);
T2 = (.5venn_width,.5venn_height-.5venn_circle_diameter);
vardef venn_shade = red;
\stopMPinclusions
\startMPpage
draw_venn_two(false,true,true,true);
label.lft(btex $A$ etex,A);
label.rt(btex $B$ etex,B);
label.bot(btex $A\cup B$ etex,T2);
\stopMPpage
\startMPpage
draw_venn_two(false,false,true,false);
label.lft(btex $A$ etex,A);
label.rt(btex $B$ etex,B);
label.bot(btex $A\cap B$ etex,T2);
\stopMPpage
\startMPpage
draw_venn_two(true,false,false,false);
label.lft(btex $A$ etex,A);
label.rt(btex $B$ etex,B);
label.bot(btex $A'\cap B'$ etex,T2);
\stopMPpage
Perhaps one can combine the transparent color functionality of
metapost with venn.mp to get really nice colors for intersections etc.
Another related question, does anyone know of a good way to hash
(hatch) a "set" (in general, any mp closed curve). I know that there
is hatching.mp but I was wondering if there are better solutions.
Aditya
--
Aditya Mahajan, EECS Systems, University of Michigan
http://www.eecs.umich.edu/~adityam || Ph: 7342624008
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Venn diagram
2006-01-20 5:49 ` Aditya Mahajan
@ 2006-01-20 18:22 ` Mojca Miklavec
2006-01-20 20:23 ` Hans Hagen
0 siblings, 1 reply; 5+ messages in thread
From: Mojca Miklavec @ 2006-01-20 18:22 UTC (permalink / raw)
On 1/20/06, Aditya Mahajan wrote:
> <--- On Jan 19, David Arnold wrote --->
> > I need an easy way of shading these areas:
> >
> > 1. A intersect B
> > 2. A union B
> > 3. A intersect (complement of B)
> > 4. (complement of A) intersect B
>
> There is venn.mp on ctan. Using it you can do basic shading of
> intersection, union etc for 0,1,2 or 3 sets very quickly. Read the
> documentation in source for details. For example
Thanks a lot for the very nice example;
> \startMPinclusions
> input venn;
> pair A,B,T[];
> A = (.4venn_width-.5venn_circle_diameter,.5venn_height);
> B = (.6venn_width+.5venn_circle_diameter,.5venn_height);
> T1 = (.5venn_width , 0);
> T2 = (.5venn_width,.5venn_height-.5venn_circle_diameter);
> vardef venn_shade = red;
vardef venn_shade = red enddef;
I tried the (transparent(.8,3,blue)) at that place, but it seems that
either ConTeXt or Acrobat have problems here. It either compiled, but
then Adobe Reader complained, if I tried to compile
fill fullcircle scaled 3cm withcolor (transparent(.8,3,blue));
manually, then I got an error
**\relax venn-mpgraph.3
(venn-mpgraph.3
! Undefined control sequence.
\handleMPspecialscommentx #1 ->\doifelse
{#1}{10000}{\settrue \manyMPspecial...
l.15 %%MetaPostSpecials: 2.0 123 1000
?
Missing character: There is no 1 in font nullfont!
...
> Perhaps one can combine the transparent color functionality of
> metapost with venn.mp to get really nice colors for intersections etc.
Hans: please fix the typo on line 488 in mp-spec.mp. I copied the
example from there and wondered why it didn't work (well, it still
doesn't work - the problem described above).
Mojca
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Venn diagram
2006-01-20 18:22 ` Mojca Miklavec
@ 2006-01-20 20:23 ` Hans Hagen
2006-01-20 23:33 ` Mojca Miklavec
0 siblings, 1 reply; 5+ messages in thread
From: Hans Hagen @ 2006-01-20 20:23 UTC (permalink / raw)
Mojca Miklavec wrote:
>
>I tried the (transparent(.8,3,blue)) at that place, but it seems that
>either ConTeXt or Acrobat have problems here. It either compiled, but
>then Adobe Reader complained, if I tried to compile
> fill fullcircle scaled 3cm withcolor (transparent(.8,3,blue));
>manually, then I got an error
>
>
% fill fullcircle scaled 10cm withcolor transparant(8,.3,red) ;
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
| www.pragma-pod.nl
-----------------------------------------------------------------
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Venn diagram
2006-01-20 20:23 ` Hans Hagen
@ 2006-01-20 23:33 ` Mojca Miklavec
0 siblings, 0 replies; 5+ messages in thread
From: Mojca Miklavec @ 2006-01-20 23:33 UTC (permalink / raw)
On 1/20/06, Hans Hagen wrote:
> Mojca Miklavec wrote:
>
> >
> >I tried the (transparent(.8,3,blue)) at that place, but it seems that
> >either ConTeXt or Acrobat have problems here. It either compiled, but
> >then Adobe Reader complained, if I tried to compile
> > fill fullcircle scaled 3cm withcolor (transparent(.8,3,blue));
> >manually, then I got an error
> >
> >
> % fill fullcircle scaled 10cm withcolor transparant(8,.3,red) ;
>
> Hans
Thanks. Two typos then :) (transparant -> transparent).
Mojca
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2006-01-20 23:33 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-20 5:08 Venn diagram David Arnold
2006-01-20 5:49 ` Aditya Mahajan
2006-01-20 18:22 ` Mojca Miklavec
2006-01-20 20:23 ` Hans Hagen
2006-01-20 23:33 ` Mojca Miklavec
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).