Konturen, Heatmaps und Farbskalen
Verwenden Sie \addplot3 in einer Achse mit view={0}{90}: surf oder matrix plot für eine Heatmap, contour filled für gefüllte Konturen, und fügen Sie für die Skala colorbar und eine colormap hinzu.
Eine Heatmap einer Funktion
\addplot3 plottet eine Funktion von x und y. Von oben betrachtet (view={0}{90}) wird ein surf-Plot zur Heatmap: Jede Zelle wird über die Farbskala nach ihrem Wert gefärbt. shader=interp lässt die Farben weich ineinander übergehen; shader=flat gibt jeder Zelle eine Farbe.
Eine weiche Heatmap mit Farbbalken
\begin{tikzpicture}
\begin{axis}[view={0}{90}, colorbar, colormap/viridis,
xlabel=$x$, ylabel=$y$, enlargelimits=false]
\addplot3[surf, shader=interp, domain=-2:2, y domain=-2:2, samples=30]
{exp(-x^2 - y^2) * (1 + x)};
\end{axis}
\end{tikzpicture}domain legt den Bereich von x fest, y domain den Bereich von y und samples die Rastergröße (standardmäßig 25, samples y für eine andere Anzahl in y).
Gefüllte Konturen
contour filled teilt die Werte in Bänder. number= legt fest, wie viele Konturstufen es gibt; mit levels={...} zählen Sie sie selbst auf.
Gefüllte Konturen einer Funktion mit zwei Gipfeln
\begin{tikzpicture}
\begin{axis}[view={0}{90}, colorbar, colormap/hot, enlargelimits=false]
\addplot3[contour filled={number=8}, domain=-3:3, y domain=-3:3, samples=40]
{exp(-(x-1)^2 - y^2) + 0.7*exp(-(x+1.2)^2 - (y-1)^2)};
\end{axis}
\end{tikzpicture}Heatmap aus einer Tabelle: matrix plot
Für Messdaten auf einem Raster zeichnet matrix plot* eine Zelle pro Tabellenzeile. mesh/cols gibt an, wie viele Spalten das Raster hat, und point meta=explicit mit meta= benennt die Wertespalte.
Ein 3-mal-3-Raster von Werten
\begin{tikzpicture}
\begin{axis}[colorbar, colormap/bluered, enlargelimits=false,
xtick=data, ytick=data, width=6.5cm, height=6cm]
\addplot[matrix plot*, mesh/cols=3, point meta=explicit]
table[meta=v] {
x y v
0 0 1
1 0 4
2 0 2
0 1 3
1 1 9
2 1 5
0 2 2
1 2 6
2 2 44
};
\end{axis}
\end{tikzpicture}Höhenlinien
Linien ohne Füllung brauchen Konturstufen, die für Sie berechnet werden. In pgfplots ist das contour gnuplot oder contour lua, die in einer TeX-Installation zusätzliche Programme oder LuaLaTeX brauchen. Scissor LaTeX berechnet die Linien selbst, zeichnet sie und erinnert Sie im Tab „Probleme“ daran, dass sich der Code anderswo vielleicht nicht übersetzen lässt.
Höhenlinien mit contour gnuplot
\begin{tikzpicture}
\begin{axis}[view={0}{90}, xlabel=$x$, ylabel=$y$]
\addplot3[contour gnuplot={levels={0.2, 0.5, 0.8}},
domain=-2:2, y domain=-2:2, samples=30]
{exp(-x^2 - y^2)};
\end{axis}
\end{tikzpicture}Tab „Probleme“: contour gnuplot needs gnuplot and shell escape in LaTeX; contour filled or contour prepared compile everywhere
Für eine Datei, die sich überall übersetzen lässt, verwenden Sie contour filled oder contour prepared mit vorberechneten Konturdaten.
Farbskalen und Farbbalken
| Option | Was sie bewirkt | In Scissor LaTeX |
|---|---|---|
colormap/viridis, /hot, /cool, /jet, /blackwhite, /bluered | eingebaute Farbskalen | Funktioniert |
colormap name=viridis | eine Skala nach Namen wählen | Funktioniert |
colormap={name}{rgb255=(..) rgb255=(..)} | Ihre eigene Skala | Funktioniert |
colorbar, colorbar horizontal | eine Skala neben oder unter dem Plot | Funktioniert |
colorbar style={..} | Teilstriche und Beschriftungen des Farbbalkens | Funktioniert |
point meta min, point meta max | den Farbbereich festlegen | Funktioniert |
shader=flat, shader=interp, shader=faceted | wie Zellen gefärbt werden | Funktioniert |
Eine eigene Farbskala und ein waagerechter Farbbalken
\begin{tikzpicture}
\begin{axis}[view={0}{90}, enlargelimits=false,
colormap={sea}{rgb255=(255,255,255) rgb255=(120,180,220) rgb255=(10,40,100)},
colorbar horizontal, width=7cm, height=6cm]
\addplot3[surf, shader=flat, domain=0:2, y domain=0:2, samples=12] {x*y};
\end{axis}
\end{tikzpicture}3D-Ansichten
Scissor LaTeX zeichnet \addplot3 nur in der Ansicht senkrecht von oben. Jede andere view, auch die voreingestellte 3D-Ansicht, lässt die Achse leer und zeigt eine Meldung.
Eine 3D-Ansicht wird nicht gezeichnet
\begin{tikzpicture}
\begin{axis}[width=6cm, height=5cm]
\addplot3[surf, domain=-2:2, y domain=-2:2] {x^2 - y^2};
\end{axis}
\end{tikzpicture}Tab „Probleme“: 3D plots are drawn only when seen from above (view={0}{90}) for now
Was anders ist als in einer TeX-Installation
Das Handbuch von pgfplots behandelt \addplot3, Farbskalen und Konturen ausführlich: ctan.org/pkg/pgfplots.
Siehe auch Grundlagen von pgfplots, Logarithmische Achsen und pgfplots.
Fragen und Antworten
Wie erstelle ich eine Heatmap in LaTeX?
Verwenden Sie \addplot3[surf, shader=interp] {f(x,y)}; (oder matrix plot* für Tabellendaten) in einer Achse mit view={0}{90} und fügen Sie colorbar hinzu.
Zeichnet Scissor LaTeX 3D-Flächenplots?
Noch nicht. \addplot3 wird nur in der Ansicht von oben (view={0}{90}) gezeichnet; andere Ansichten lassen die Achse leer, und der Tab „Probleme“ sagt das.
Warum zeigt contour gnuplot eine Warnung?
In einer TeX-Installation braucht es gnuplot und Shell-Escape. Scissor LaTeX zeichnet die Konturen trotzdem, warnt aber, dass sich der Code anderswo vielleicht nicht übersetzen lässt. contour filled lässt sich überall übersetzen.
Jedes Beispiel auf dieser Seite wird beim Erstellen der Website von Scissor LaTeX gesetzt. Zuletzt aktualisiert am 2026-11-07.