
Estoy creando diagramas de Venn usando el venndiagram
paquete. La documentación permite cambiar el color del sombreado, pero no logro sombrear diferentes partes del diagrama de Venn con diferentes colores. Lo ideal sería usar amarillo a la izquierda, azul a la derecha y luego mezclarlos en el medio.
Sé que esto se puede hacer tikzpicture
dibujándolos como círculos superpuestos. Sin embargo, ya estoy usando el paquete de diagramas de Venn y me gusta su funcionalidad. Así que espero que sea factible en lugar de tener que configurarlo manualmente. Parece que debería ser factible con el \fill
comando que se incluye, pero parece que no puedo hacerlo funcionar.
\documentclass{book}
\usepackage{tikz}
\usepackage{venndiagram}
\begin{document}
\pagestyle{empty}
\begin{venndiagram2sets}[labelA={},labelB={}, labelOnlyA={E}, labelOnlyB={F}, labelAB={$E\cap F$}, showframe={false}, radius = {2cm}, overlap={1.5cm}]
\end{venndiagram2sets}
\end{document}
Respuesta1
Puede usar la macro \setkeys{venn}{...}
para cambiar la opción dentro de un venndiagramm
entorno, como este:
\documentclass[border=10pt]{standalone}
\usepackage{venndiagram}
\begin{document}
\pagestyle{empty}
\begin{venndiagram2sets}[
labelA={},
labelB={},
labelOnlyA={$E$},
labelOnlyB={$F$},
labelAB={$E\cap F$},
showframe={false},
radius={2cm},
overlap={1.5cm}
]
\setkeys{venn}{shade=yellow}
\fillA
\setkeys{venn}{shade=cyan}
\fillB
\setkeys{venn}{shade=yellow!50!cyan}
\fillACapB
\end{venndiagram2sets}
\end{document}
Respuesta2
Doy dos alternativas para obtener más controles, como que la etiqueta E
se desplace hacia la izquierda y la etiqueta F
se desplace hacia la derecha.
TikZ simple
\documentclass[tikz,border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}[declare function={r=1.5;d=.9;}]
\def\pathE{(-d,0) circle(r)}
\def\pathF{(d,0) circle(r)}
\fill[yellow] \pathE;
\fill[cyan] \pathF;
\begin{scope}
\clip \pathE;
\fill[yellow!50!cyan] \pathF;
\end{scope}
\draw (0,0) node{$E\cap F$}
\pathE node[left]{$E$}
\pathF node[right]{$F$}
;
\end{tikzpicture}
\end{document}
Asíntota simple
// http://asymptote.ualberta.ca/
size(5cm);
pair A=(0,0), B=(1,0);
path pathL=circle(A,1);
path pathR=circle(B,1);
// https://tex.stackexchange.com/a/9698/140722
path inter=buildcycle(arc(A,1,-90,90),arc(B,1,90,270));
pen penL=lightblue;
pen penR=lightgreen;
fill(pathL,penL);
fill(pathR,penR);
fill(inter,penL+penR);
draw(pathL^^inter^^pathR);
label("$E$",align=5W,A);
label("$F$",align=5E,B);
label("$E\cap F$",(A+B)/2);
//shipout(bbox(5mm,invisible));