Как сделать цвет сегментов линии более гладким в pgfplots?

Как сделать цвет сегментов линии более гладким в pgfplots?

Я обнаружил, что полученная фигура \addplot[mesh]состоит из отрезков линий разного цвета.

\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        samples=50,
        point meta rel=axis wide,
        point meta=y,
        ]
    \addplot[mesh,thick] {sin(deg(x))};
    \end{axis}
\end{tikzpicture}
\end{document}

которые производят введите описание изображения здесь

Цветовой переход не плавный. Я хочу сделать цвет линии плавным и переписываю код выше как

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{
compat=newest
}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        samples=50,
        point meta rel=axis wide,
        point meta=y,
        colormap access=direct,
        shader=interp
        ]
    \addplot[mesh,thick] {sin(deg(x))};
    \end{axis}
\end{tikzpicture}
\end{document}

Это производит линию того же цвета. Как сделать цвет линии различным в зависимости от точки мета и плавный переход цвета?

решение1

Не пытайтесь повторить это дома! (потому что это глупо ;)...!)

Серьёзно, вам просто следует увеличить samplesколичество кривых.

Выход

введите описание изображения здесь

Код

\documentclass{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
    \begin{axis}
      [
        samples=51,
        view={0}{0},
        ]
    \addplot3
    [
      surf,
      line width=2mm,
      point meta=z,
      shader=interp,
      samples y=2,
      y domain=0:.05,
    ]
      ({x-y*cos(deg(x)},0,{sin(deg(x))+y});
    \end{axis}
\end{tikzpicture}
\end{document}

Связанный контент