在 PGFplots 中,如何将箭头作为绘图的标记,以便让它们出现在图例中?

在 PGFplots 中,如何将箭头作为绘图的标记,以便让它们出现在图例中?

在我的图中,我想用箭头指示图形的方向。

通常,我只会创建类似这样的东西:

\begin{tikzpicture}
    \begin{axis}[
        axis x line=center,
        axis y line=center,
        xmax=3.5,xmin=-4,
        ymax=6,ymin=-4,
        xlabel=$x_1$,
        ylabel=$x_2$,
        xtick=\empty,ytick=\empty
        ]
    \addplot[smooth,domain=-3.5:2.7,mark=none,black]{-(x/1.5+0.1)^2 + 2};
    \pgfmathsetmacro{\arronestart}{-(-0.6/1.5+0.1)^2+2};
    \pgfmathsetmacro{\arroneend}{-(-0.59/1.5+0.1)^2+2};
    \draw[
     decoration={markings,mark=at position 1 with {\arrow[ultra thick]{stealth}}},
     postaction={decorate}
     ] (axis cs:-0.6,\arronestart) -- (axis cs:-0.59,\arroneend);
    \pgfmathsetmacro{\arrtwostart}{-(2.69/1.5+0.1)^2+2};
    \pgfmathsetmacro{\arrtwoend}{-(2.7/1.5+0.1)^2+2};
    \draw[
     decoration={markings,mark=at position 1 with {\arrow[ultra thick]{stealth}}},
     postaction={decorate}
     ] (axis cs:2.69,\arrtwostart) -- (axis cs:2.7,\arrtwoend);
    \end{axis}
\end{tikzpicture}

现在,我想要的是这些箭头的图例条目,类似于: ->- ,但当然这在 \draw[] 中是不可能的。那么,有没有办法将箭头作为标记,以便我可以使用 \addplot 而不是 \draw 创建相同的图形并具有适当的图例?

答案1

您可以使用该\addlegendimage命令来记录自定义绘制语句:

        \draw[red,->] (axis cs:0,1) -- (axis cs:1,2);
    \addlegendimage{red,->}
    \addlegendentry{Something}

这里\addlegendimage提供了可视化图例条目的选项并\addlegendentry提供了文本。

相关内容