我正在尝试创建一个简单的维恩图,其中标签为 a、b、c,并且在框的右上角有一个 U,如下图所示:
我已经按照自己想要的方式创建了维恩图,但我无法创建如图所示的节点标签。这是我制作的以及我一直在使用的源代码。我尝试了不同的颜色,但仍然看不到它。
\documentclass[12pt, tikz, border=5]{article}
\usepackage{tikz}
\begin{document}
\tikzstyle{textbox}=[draw=black, fill=black, thick, rectangle]
\begin{tikzpicture}[scale=4, blend group=screen]
\fill[lightgray] ( 270:.7) circle (1) node [textbox] {\begin{minipage}{0.15\textwidth} $\boldmath{c}$\end{minipage}};
\fill[gray] (180:.5) circle (1);
\fill[darkgray] (0:.5) circle (1);
\draw[ultra thick, fill=black!100!] ([shift={(-0.1,-0.1)}]current bounding box.south west) rectangle ([shift={(0.1,0.1)}]current bounding box.north east) ;
\end{tikzpicture}
\end{document}
答案1
您应该blend group
在范围内使用。 而不是screen
,multiply
更适合您的情况。 此外,我已将单位向量更改为scale
。
\documentclass[12pt, tikz, border=5]{standalone}
\usetikzlibrary{backgrounds}
\tikzset{background rectangle/.style={draw,very thick,fill=gray!10},
textbox/.style = {draw, fill=white, thick,text=black}}
\begin{document}
\begin{tikzpicture}[x=4cm,y=4cm,show background rectangle]
\begin{scope}[blend group=multiply]
\fill[gray] ( 270:.7) circle (1);
\fill[gray!30] (180:.5) circle (1);
\fill[gray!60] (0:.5) circle (1);
\end{scope}
\node [textbox] at(270:6cm) {$C$};
\node [textbox] at(135:4cm) {$B$};
\node [textbox] at(45:4cm) {$A$};
\node[textbox] at (current bounding box.north west) {$U$} ;
\end{tikzpicture}
\end{document}