使用 tikz 填充相交椭圆

使用 tikz 填充相交椭圆

我有一个小图表,我想在其中填充省略号。

\documentclass[border=3pt]{standalone}
\usepackage{tikz}

\begin{document}
\def\firstellipse{(0,0) ellipse (1 and .5)}
\def\secondellipse{(.7,.3) ellipse (2 and 1)}
\def\thirdellipse{(1,.6) ellipse (2.5 and 1.5)}
\def\fourthellipse{(1.3,.9) ellipse (3 and 2)}
\def\fifthellipse{(1.6,1.2) ellipse (3.5 and 2.5)}
\begin{tikzpicture}
\draw\firstellipse;
\draw\secondellipse;
\draw\thirdellipse;
\draw\fourthellipse;
\draw\fifthellipse;
\node at (0,0) {Körper};
\node at (.7,.75) {Euklidische Ringe};
\node at (1.2,1.6) {Hauptidealringe};
\node at (1.5, 2.37) {Faktorielle Ringe};
\node at (1.9, 3.2) {Integritätsringe};
\end{tikzpicture}
\end{document}

椭圆形

每个椭圆的颜色应该不同,我还没有完全弄清楚,但可能是这样的:

  • 第一个椭圆红色!15

  • 第二个椭圆绿色!15

  • 第三个椭圆为蓝色!15

  • 第四个椭圆青色!15

  • 第五个椭圆 洋红色!15

但是,我不能使用填充命令,因为只有不相交的部分才应该用这种颜色填充。我使用了 MS 画图来说明我的意思: 画

答案1

只需按相反的顺序绘制椭圆,从最大的开始:

\documentclass[border=3pt]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \def\firstellipse{(0,0) ellipse (1 and .5)}
  \def\secondellipse{(.7,.3) ellipse (2 and 1)}
  \def\thirdellipse{(1,.6) ellipse (2.5 and 1.5)}
  \def\fourthellipse{(1.3,.9) ellipse (3 and 2)}
  \def\fifthellipse{(1.6,1.2) ellipse (3.5 and 2.5)}
  \filldraw[fill=magenta!15]\fifthellipse;
  \filldraw[fill=cyan!15]\fourthellipse;
  \filldraw[fill=blue!15]\thirdellipse;
  \filldraw[fill=green!15]\secondellipse;
  \filldraw[fill=red!15]\firstellipse;
  \node at (0,0) {Körper};
  \node at (.7,.75) {Euklidische Ringe};
  \node at (1.2,1.6) {Hauptidealringe};
  \node at (1.5, 2.37) {Faktorielle Ringe};
  \node at (1.9, 3.2) {Integritätsringe};
\end{tikzpicture}
\end{document}

结果

相关内容