Gitternetzlinien im Oberflächendiagramm der Draufsicht

Gitternetzlinien im Oberflächendiagramm der Draufsicht

Mit meinen Graphen bin ich fast zufrieden, es fehlen nur noch die Gitternetzlinien. Was ich im Grunde mache, ist eine Art Dichteplot/Farbplot, indem ich pgfplots eine Oberfläche erzeugen lasse und diese von oben betrachte:

\begin{tikzpicture}
    \begin{axis}[
            axis lines = middle,
            grid = major,
            grid style = {color = white!90!black},
            xlabel = $x$,
            ylabel = $y$,
            no markers,
            mesh/ordering=y varies,
            view={0}{90},
            colormap = {graywhite}{color=(white) color=(gray)},
        ]
        \addplot3[surf,shader=interp] file{surf.txt};
    \end{axis}
\end{tikzpicture}

Beispielausgabe unter VerwendungDasEingang:

Ausgabe

Die Oberfläche wird mit einem feinen Raster (50 x 50) gezeichnet, daher ist es nicht möglich, die ursprünglichen Maschenlinien beizubehalten. Durch die Auswahl von shader=interppgfplots werden die Maschenlinien grundsätzlich entfernt und die Farben sauber interpoliert. Es wäre fantastisch, wenn darüber einige Rasterlinien gezeichnet werden könnten, z. B. in Schwarz mit 10 % Deckkraft. Weiß jemand, wie das geht?

Antwort1

colormap = {graywhite}{color=(white) color=(gray)}Wenn Sie Folgendes tun, wird der gesamte Plotbereich anscheinend mit Weiß gefüllt. Die Gitternetzlinien sind also hinter Ihrem Plot verborgen.

Um sie wie gewünscht oben anzuordnen, können Sie Folgendes verwenden:

\begin{tikzpicture}
\begin{axis}[
        axis lines = middle,
        grid = major,
        grid style = {color = white!90!black},
        xlabel = $x$,
        ylabel = $y$,
        no markers,
        mesh/ordering=y varies,
        view={0}{90},
        colormap = {graywhite}{color=(white) color=(gray)},
    ]
    \addplot3[surf,shader=interp] file{surf.txt};
    \draw[dotted,step={(axis cs:5,5)},help lines] (0,0) grid (axis cs:30,20);
\end{axis}
\end{tikzpicture}

Das Ergebnis: Ergebnis

Um schwarze Linien mit 10 % Deckkraft zu zeichnen, können Sie Folgendes verwenden: \draw[opacity=0.1,step={(axis cs:5,5)}] (0,0) grid (axis cs:30,20);

verwandte Informationen