我正在运行 TikZ (pgf_210.tds)、TeX 3.141592 和 Fedora 14。我正在研究维恩图。这些示例都做了正确的艺术工作,但绘制集合标识的方式如下
\draw \firstcircle node[text=white, below] {$A$}
\draw \secondcircle note[text=white, above] {$B$}
彼此叠合,位于交叉口左弧中点的左侧。
有什么想法吗?
\begin{document}
%% From a tikz Venn example
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[fill=gray]
\begin{scope}
\clip (-2,-2) rectangle (2,2)
(1,0) circle(1);
\fill (0,0) circle (1);
\end{scope}
\begin{scope}
\clip (-2,-2) rectangle (2,2)
(0,0) circle(1);
\fill (1,0) circle(1);
\end{scope}
draw (0,0) circle (1) (0,1) node [text=black,above] at (2,2) {$A$}
(1,0) circle (1) (1,1) node [text=black,above] at (1,1) {$B$}
(-2,-2) rectangle (3,3);
\end{tikzpicture}
\end{document}
答案1
如果我理解你的问题,你无法将集合的标签放在适当的位置。最简单的解决方法是使用语法node [<options>] {<node_text>}
。它将自动相对于路径中的最后一个点放置:
\draw
(0,0) circle (1) (0,1) node [text=black,above] {$A$}
(1,0) circle (1) (1,1) node [text=black,above] {$B$}
(-2,-2) rectangle (3,3);
生成结果:
笔记:
- 我使用了三个单独的
\draw
命令,因为我认为这更清晰,但上述语法也有效。
代码:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[fill=gray]
\begin{scope}
\clip (-2,-2) rectangle (2,2) (1,0) circle(1);
\fill (0,0) circle (1);
\end{scope}
\begin{scope}
\clip (-2,-2) rectangle (2,2) (0,0) circle(1);
\fill (1,0) circle(1);
\end{scope}
\draw (0,0) circle (1) (0,1) node [text=black,above] {$A$};
\draw (1,0) circle (1) (1,1) node [text=black,above] {$B$};
\draw (-2,-2) rectangle (3,3);;
\end{tikzpicture}
\end{document}