pgfplots + gnuplot:如何使用颜色条清理从原始 gnuplot 数据生成的轮廓图的外观?

pgfplots + gnuplot:如何使用颜色条清理从原始 gnuplot 数据生成的轮廓图的外观?

以下是 MWE:

\documentclass[12pt,letterpaper]{article}

\usepackage{lmodern}
\usepackage[T1]{fontenc}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[view={0}{90}, clip = false, xmin = -2, xmax = 2, ymin = -2, ymax = 2, grid=major, xlabel=$x$, ylabel=$y$]

            \addplot +[no markers,
            raw gnuplot,
            contour prepared,
            ] gnuplot {
                set samples 50, 50;
                set isosamples 51, 51;
                set contour base;
                set cntrparam levels incremental -4,0.25,4;
                set style data lines;
                splot [-2:2] [-2:2] 0.2*x**5 - 0.25*x**4 + 0.5*y**2;
            };

        \end{axis}
    \end{tikzpicture}
\end{document}

它的输出有非常混乱的标签:

在此处输入图片描述

我有一个想法可以把它清理干净:使用colorbar,其中线条颜色由其轮廓图级别决定(因此,不是其 y 轴值)。查看手册pgfplots,我不清楚如何选择确定颜色的值作为轮廓图 z 值(编辑:嗯,point meta似乎是这样,但这是我目前所知道的全部)。我该怎么做?

如果我能弄清楚发生了什么,那么以下问题及其答案似乎是相关的:pgfplots colorbar 的映射网格颜色

答案1

我不知道为什么,但colorbar会自动访问 z 值(我猜,是轮廓图附带的元点?)。因此,关闭标签,并像往常一样使用颜色条命令,就可以让一切按我想要的方式运行:

\documentclass[12pt,letterpaper]{article}

\usepackage{lmodern}
\usepackage[T1]{fontenc}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[view={0}{90}, clip = false, xmin = -2, xmax = 2, ymin = -2, ymax = 2, grid=major, xlabel=$x$, ylabel=$y$, colorbar, point meta min = -4, point meta max = 3]

            \addplot +[no markers,
            raw gnuplot,
            contour prepared, contour/labels=false,
            ] gnuplot {
                set samples 50, 50;
                set isosamples 51, 51;
                set contour base;
                set cntrparam levels incremental -4,0.25,4;
                set style data lines;
                splot [-2:2] [-2:2] 0.2*x**5 - 0.25*x**4 + 0.5*y**2;
            };

        \end{axis}
    \end{tikzpicture}
\end{document}

在此处输入图片描述

我希望有人可以进一步解释一下!

相关内容