Warum werden für eine colormap

Öffne in Overleaf
colormap={mycolormap}{
color(0)=(black); 
color(1)=(blue); 
color(2)=(red); 
color(3)=(orange); 
%color(10)=(black)   % 
},

trotz der Einstellung

Öffne in Overleaf
colormap access= piecewise constant

die Farben nicht scharf getroffen? Bei red und orange sieht man Abweichungen.

alt text

Öffne in Overleaf
\documentclass[margin=5mm, tikz]{standalone}
\usepackage{pgfplots}
\usepgfplotslibrary{patchplots}
\pgfplotsset{compat=1.13}

\begin{document}

\pgfplotsset{
colormap access=
% map
%direct
piecewise constant
%piecewise linear
}

%  /pgfplots/colormap access=mapjdirectjpiecewise constantjpiecewise linear

\begin{tikzpicture}
\begin{axis}[hide axis, colorbar, 
% Versuch 1: 
%colormap={test}%
%    {
%        [0.1cm] % colormap steps: 1cm
%        color(0cm)=(black);           color(0.1cm)=(black);   
%        color(0.1cm)=(blue);          color(1.1cm)=(blue);  
%       color(1.1cm)=(red);        color(2.1cm)=(red);
%       color(2.1cm)=(orange);        color(3.1cm)=(orange);
% %       color(4)=(orange);        color(12)=(black);
%    }
% Versuch 2:
colormap={mycolormap}{
color(0)=(black); 
color(1)=(blue); 
color(2)=(red); 
color(3)=(orange); 
%color(10)=(black)   % 
},
point meta min=0, point meta max=3,
%point meta = explicit symbolic, 
mesh/color input=colormap
]
\addplot+[
ultra thick, 
% Punkte
mark size=1.125pt, mark options={red}, 
table/row sep=\\, % Muss wohl so sein!?
%
patch, % Plot-Typ
patch type=polygon,
vertex count=2, % damit nur Kanten, keine Flächen, gezeichnet werden
%
% Angabe der Verbindungskanten =====================
patch table with point meta={%
Startpkt Endpkt colordata \\%
1 2 0\\%  Default; SOLL: black
1 7 1\\%  SOLL: blue
2 4  2\\% SOLL: red
3 4  3\\% SOLL: orange
4 6  0\\% SOLL: black
5 4  \\% 
5 7 \\%
6 4  \\%
6 7 \\%
7 7 \\%
8 8 \\%
}
% Angabe der Koordinaten =====================
]
table[header=true, x index=1, y index=2, row sep=\\] {
Nr x y  \\
0 0 0     \\%0
1 2 2             \\%1
2 0 1              \\%2
3 0 0              \\%3
4 1 0             \\%4
5 2 0            \\%5
6 2 0     \\%6   
7 1 1     \\%7   
8 0 2             \\%8
};

% Beschriftungen  ============================
% Laut Handbuch   "replicate the vertex list to show \coordindex"

% Anzeigen des 0. Aliaspunktes verhindern:
\newcommand\Punktnummer{\pgfmathparse{\punktnummer>0 ? \punktnummer : ""}\pgfmathresult}

\addplot[only marks,
visualization depends on={value \thisrowno{0} \as \punktnummer},
visualization depends on={value \thisrowno{3} \as \Anker},
nodes near coords={\Punktnummer},
%
every node near coord/.append style={
font=\sffamily\scriptsize,
text=black,
anchor=\Anker
},
] table[header=true, x index=1, y index=2, row sep=\\] {
Nr x y Textposition \\
0 0 0  south   \\%0: 0. Aliaspunkt & south als Default für Standardposition 
1 2 2             \\%1
2 0 1              \\%2
3 0 0              \\%3
4 1 0             \\%4
5 2 0            \\%5
6 2 0  north   \\%6  Geänderte Textposition
7 1 1  south   \\%7  Default wiederholen
8 0 2             \\%8
};
% Beschriftungen  ============================

\end{axis}
\end{tikzpicture}

\end{document}

gefragt 03 Sep, 09:25

cis's gravatar image

cis
7.9k15162257
Akzeptiert: 71%

bearbeitet 13 Sep, 07:47

Ist die Frage zu abstrakt oder mein Minimalbeispiel zu umfangreich? Ich hatte schonmal etwas ähnliches gestartet, in letzter Zeit nochmal zweimal; scheints ist die colormap ein kompliziertes Gebiet...

(03 Sep, 17:54) cis

Bei mir passieren andere interessante Sachen, je nachdem welchen Renderer ich verwende: mupdf, poppler.

(04 Sep, 20:30) Henri

Also mich beschleicht der Verdacht, dass es etwas mit einem Bug / einer Unvollständigkeit dieser patch table with point meta zu tun hat. Bei 'normalen' plots bekommt man es 'meistens' noch irgendwie mit Gewalt hin...

(04 Sep, 20:44) cis

Könnte das ein Bug sein oder ist die "meta-Datenverarbeitung" von patch table with point meta noch nicht ganz ausgereift? Oder liegt es an falschem Bedienen meinerseits?

(05 Sep, 09:12) cis

Mmmhh, ich bin mir ja sicher, die Experten haben den Code mal getestet und wenn es eine einfache Lösung gäbe, wäre die längst bekannt. Da könnte vermutlich höchstens noch der Chef @cfeuersaenger helfen. :()

(06 Sep, 16:22) cis
Sei der Erste, der diese Frage beantwortet!
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×257
×8
×5

Frage gestellt: 03 Sep, 09:25

Frage wurde angeschaut: 142 Mal

Zuletzt aktualisiert: 13 Sep, 07:47