Как сместить пунктирный узор в pgfplots с помощью «фазы пунктира»: только на графике, но не в легенде

Как сместить пунктирный узор в pgfplots с помощью «фазы пунктира»: только на графике, но не в легенде

Как упоминалось вэтот вопрос, можно использовать dash phaseдля смещения положения пробелов между черточками графика. Однако это также сдвигает пробелы в легенде.

Можно ли переместить пробелы только в сюжете, оставив легенду неизменной?

МВЭ

\begin{tikzpicture}
\begin{axis}[
width=3in,
height=3in
]
\addplot [black, dashed]
table {%
0 0
1 1
2 0
3 -.5
};
\addlegendentry{w/o dash phase}
\addplot [black, dashed, dash phase = 8pt]
table {%
1 0
2 1
3 0
4 -.5
};
\addlegendentry{w/ dash phase}
\end{axis}
\end{tikzpicture}

который дает

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

решение1

Это цель legend image post style. Вы можете использовать его для сброса dash phase.

\documentclass[tikz,border=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.17}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
width=3in,
height=3in,legend image post style={dash phase=0pt},
]
\addplot [black, dashed]
table {%
0 0
1 1
2 0
3 -.5
};
\addlegendentry{w/o dash phase}
\addplot [black, dashed, dash phase=8pt]
table {%
1 0
2 1
3 0
4 -.5
};
\addlegendentryexpanded{w/ dash phase}
\end{axis}
\end{tikzpicture}

\end{document}

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

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