Bei meinem Scatter-Diagramm habe ich mehrere Punkte die sich überlappen.

Angenommen es gibt zwei Punkte die sich ein wenig überlappen. Welche Farbe (Farbe Punkt1 oder Farbe Punkt2) der Schnittmenge genommen wird ist nicht eindeutig bestimmt. (Welche Farbe deckend ist.) Ich möchte gerne jenen Punkt der den höheren Wert (3te Spalte "myvalue") besitzt mit dieser Farbe die Schnittmenge einfärben. Ist das irgendwie realiserbar? Danke.

alt text

Open in Online-Editor
\documentclass{article}

\usepackage{tikz,pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[enlargelimits=0.2,colorbar]
\addplot[
scatter,mark=*,only marks,
point meta=\thisrow{myvalue}
]
table {
x y  myvalue
0.5 0.63    0.25
3.2 5.91    0.75
0.7 0.119   0.125
0.35    0.2 2
3.65    0.7 0.175
0.2 0.35    0.225
0.7 0.63    0.275
0.35    0.91    3
0.65    0.119   0.325
0.2 0.2 0.375
2.7 0.7 0.425
0.35    3.35    4
7.65    0.63    0.475
0.2 0.91    0.525
0.65    0.119   0.575
6.2 0.147   5
0.7 0.175   0.625
0.35    3.203   0.675
0.65    2.231   0.725
0.2 0.259   6
5.65    0.287   0.775
0.2 0.315   0.825
0.7 0.343   0.875
0.35    0.371   7
0.65    0.399   0.925
0.2 0.427   2
};
\end{axis}
\end{tikzpicture}

\end{document}

gefragt 15 Sep '16, 10:01

Linux404's gravatar image

Linux404
3221622
Akzeptiert-Rate: 100%

bearbeitet 15 Sep '16, 10:37

Abgesehen davon, dass deine Fragestellung etwas unverständlich ist, malt TikZ in der Reihenfolge die im Source definiert ist und zuletzt gezeichnete Objekte werden die zuerst gezeichneten Objekte üpber-/verdecken. Zeichne also einfach die Punkte in Aufsteigender Reihenfolge.

(15 Sep '16, 10:26) NobbZ

das habe ich mir auch gedacht. aber eine lösung im code gibt es nicht?

(15 Sep '16, 10:34) Linux404
(15 Sep '16, 15:00) esdd

Open in Online-Editor
\documentclass{article}

\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
\begin{axis}[enlargelimits=0.2,colorbar,
    view={0}{90}  % view the plot from the top
]
\addplot3[
    scatter,mark=diamond*,only marks,
    point meta=\thisrow{myvalue},
    z buffer=sort  
]
table {
x y  myvalue
0.5 0.63    0.25
3.2 5.91    0.75
0.7 0.119   0.125
0.35    0.2 2
3.65    0.7 0.175
0.2 0.35    0.225
0.7 0.63    0.275
0.35    0.91    3
0.65    0.119   0.325
0.2 0.2 0.375
2.7 0.7 0.425
0.35    3.35    4
7.65    0.63    0.475
0.2 0.91    0.525
0.65    0.119   0.575
6.2 0.147   5
0.7 0.175   0.625
0.35    3.203   0.675
0.65    2.231   0.725
0.2 0.259   6
5.65    0.287   0.775
0.2 0.315   0.825
0.7 0.343   0.875
0.35    0.371   7
0.65    0.399   0.925
0.2 0.427   2
};
\end{axis}
\end{tikzpicture}

\end{document}
Permanenter link

beantwortet 15 Sep '16, 12:49

Linux404's gravatar image

Linux404
3221622
Akzeptiert-Rate: 100%

Man sollte bei pgfplots übrigens immer die Kompatibilität deklarieren. Siehe Option compat in der Anleitung.

(15 Sep '16, 14:56) saputello

Es wäre gut gewesen, schon bei Deiner Frage zu erwähnen, dass Du diese ebenfalls bei stackexchange gestellt hast. Hier gehört jetzt aber in jedem Fall der Hinweis hin, dass "Deine" Antwort nur eine Kopie von Jakes Lösung auf tex.stackexchange.com ist.

(15 Sep '16, 14:57) esdd
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:

×298
×4

gestellte Frage: 15 Sep '16, 10:01

Frage wurde gesehen: 6,139 Mal

zuletzt geändert: 15 Sep '16, 15:00