Ich möchte eine Schnittmenge farbig hervorgeben. Die beiden Mengenellipsen sind aus einem node entstanden, der über die fit library mehrere andere nodes umfasst.

Open in Online-Editor
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{fit,shapes,backgrounds}
\begin{document}
  \begin{tikzpicture}
    \node (3) at (-1,0) {$3$};
    \node (1) at (-1,1) {$1$};
    \node (5) at (0,0.5) {$5$};
    \node (2) at (2,0) {$2$};
    \node (4) at (2,1) {$4$};
    \node (6) at (3,0.5) {$6$};
    \node (8) at (5,1) {$8$};
    \node (10) at (5,0) {$10$};
    \node[draw,inner sep=0pt,thick,ellipse,fit=(1) (2) (3) (5) (6),label={[label distance=-1.5mm]135:$A$}] {};
    \node[draw,inner sep=0pt,thick,ellipse,fit=(2) (4) (6) (8) (10),label={[label distance=-1.5mm]20:$B$}] {};
    \begin{scope}[on background layer]
      \clip node[inner sep=0pt,thick,ellipse,fit=(1) (2) (3) (5) (6)] {};
      \node[fill,blue!50,inner sep=0pt,thick,ellipse,fit=(2) (4) (6) (8) (10)] {};
    \end{scope}
  \end{tikzpicture}
\end{document}

Wie bekomme ich das Clipping hin, so dass nur die Schnittmenge gefärbt wird?

gefragt 10 Mär '16, 20:11

tom75's gravatar image

tom75
2.2k277984
Akzeptiert-Rate: 57%


Du kannst die Option path picture für einen der beiden Ellipsenodes verwenden. Dieser müsste dann allerdings in einem scope mit der Option on background layer stehen, damit die eingeschlossenen Nodes nicht von der Füllung verdeckt werden.

Open in Online-Editor
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\usetikzlibrary{fit,shapes,backgrounds}
\begin{document}
  \begin{tikzpicture}
    \node (3) at (-1,0) {$3$};
    \node (1) at (-1,1) {$1$};
    \node (5) at (0,0.5) {$5$};
    \node (2) at (2,0) {$2$};
    \node (4) at (2,1) {$4$};
    \node (6) at (3,0.5) {$6$};
    \node (8) at (5,1) {$8$};
    \node (10) at (5,0) {$10$};
    \begin{scope}[on background layer]
    \node[draw,inner sep=0pt,thick,ellipse,fit=(1) (2) (3) (5) (6),label={[label distance=-1.5mm]135:$A$},
      path picture={\node[fill,blue!50,inner sep=0pt,ellipse,fit=(2) (4) (6) (8) (10)] {};}
    ] {};
    \end{scope}
    \node[draw,inner sep=0pt,thick,ellipse,fit=(2) (4) (6) (8) (10),label={[label distance=-1.5mm]20:$B$}] {};
  \end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 10 Mär '16, 21:28

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

Super, vielen Dank!

(10 Mär '16, 23:56) tom75
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×730
×76
×7

gestellte Frage: 10 Mär '16, 20:11

Frage wurde gesehen: 8,631 Mal

zuletzt geändert: 10 Mär '16, 23:56