上面図のグリッド線

上面図のグリッド線

グラフにはほぼ満足していますが、グリッド線が欠けているだけです。基本的に私が行っているのは、pgfplots で表面を生成し、それを上から表示して、一種の密度プロット/カラー プロットを作成することです。

\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}

出力例、使用方法これ入力:

出力

表面は細かいグリッド (50x50) を使用して描画されるため、元のメッシュ ラインを残すことはできません。pgfplots を選択すると、shader=interp基本的にメッシュ ラインが削除され、色が適切に補間されます。たとえば、10% の不透明度の黒を使用して、この上にグリッド ラインを描画できればすばらしいでしょう。これを行う方法をご存知の方はいらっしゃいますか?

答え1

次のようにすると、colormap = {graywhite}{color=(white) color=(gray)}プロット領域全体が白で塗りつぶされるようです。そのため、グリッド ラインはプロットの背後に隠れてしまいます。

要求どおりに上部にプロットするには、次を使用します。

\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}

これによって次のものが生成されます: 結果

10% の不透明度で黒い線をプロットするには、次のようにします。 \draw[opacity=0.1,step={(axis cs:5,5)}] (0,0) grid (axis cs:30,20);

関連情報