
グラフにはほぼ満足していますが、グリッド線が欠けているだけです。基本的に私が行っているのは、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);