PGFplots contour gnuplot call da como resultado un archivo .table vacío

Nov 27 2020

Estoy tratando de reproducir el siguiente código de esta respuesta que pego aquí con las correcciones sugeridas por @TikZling por conveniencia:

\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
    \pgfplotsset{compat=newest}
\usepackage{pgfplotstable}
\pgfplotstableset{%
    col sep=semicolon,
    x index=0,
    y index=1,
    header=false
}%

\begin{filecontents}[overwrite]{XYZ.csv}
   2016; 1;       33e-9
   2016; 2;      199e-9
   2016; 3;      966e-9
   2016; 4;      110e-9

   2015; 1;      199e-9
   2015; 2;      966e-9
   2015; 3;      110e-9
   2015; 4;      104e-9

   2014; 1;      199e-9
   2014; 2;      965e-9
   2014; 3;      110e-9
   2014; 4;      104e-9

   2006; 1;     2349e-9
   2006; 2;     6528e-9
   2006; 3;    18405e-9
   2006; 4;    17250e-9

   1993; 1;  1167453e-9
   1993; 2;  2376539e-9
   1993; 3;  2262076e-9
   1993; 4;  2262076e-9
\end{filecontents}

\begin{document}
\begin{tikzpicture}
    \begin{axis}[view = {0}{90}]%
        \addplot3[%
            surf,shader=interp,opacity=0.8
        ] table {XYZ.csv};
        \addplot3[%
            contour gnuplot={
                levels={.0000001,.000001,.00001,.0001,.001,.01,.1},
                draw color=black,
                contour label style={/pgf/number format/std},
            },
        ] table {XYZ.csv};
    \end{axis}
\end{tikzpicture}

\end{document}

Según la respuesta original, la salida debería ser así:

Compilando a través de

$ lualatex --shell-escape contour.tex

produce esta advertencia

Package pgfplots Warning: the current plot has no coordinates (or all have been
 filtered away) on input line 56.

y el .tablearchivo devuelto por gnuplot también está vacío:

$ cat contour_contourtmp0.table 

# Surface 0 of 1 surfaces

# Curve title: ""contour_contourtmp0.dat""

Estoy usando TeXlive 2020 en Arch Linux, $ gnuplotestá disponible en la línea de comandos.

Respuestas

Christoph90 Nov 30 2020 at 12:25

Resulta que mi sistema tenía un ~/.gnuplotarchivo de configuración predeterminado en el directorio de inicio que especificaba set datafile separator comma.

Esto provocó que los datos de contour_contourtmp0.datse interpretaran como separados por comas, lo que inevitablemente no arrojó puntos de datos válidos.