消除我对定位图例选项的疑虑

消除我对定位图例选项的疑虑
\begin{tikzpicture}
\begin{axis}[
  axis lines=middle,
  samples=100,
  ymax=5,legend pos=north east
]
\addplot[cyan,domain=0.001:8] {abs(log10(x))};
\addplot[red!70!black,domain=-2:4] {2+exp(abs(x))};
\addplot[green,thick,domain=-2:3] {exp(x)};
\legend{$e^{x}$};
\node[pin={90:$f(x)=\lvert\log x\rvert$},inner sep=0pt] 
  at (axis cs:{2,log10(2)}) {};
\node[pin={0:$f(x)=e^{x}$},inner sep=0pt] 
  at (axis cs:{1,exp(1)}) {}; 
\end{axis}
\end{tikzpicture}

我使用上述代码在同一平面上绘制了三条不同的曲线。我也做到了。但对于图例:

问题 1我只需要$e^{x}$。我该怎么做?

问题:2我怎样才能移除框架?

问题:3我需要将我的放置$e^x$在东北和$|e^x|$西北方向。我该怎么做?

我得到的图表是:

在此处输入图片描述

(请注意,图例的颜色$e^x$是错误的颜色。)

答案1

  1. 添加forget plot那些不应被图例考虑的图表(在您的示例中,是前两个)。

  2. 您可以使用legend style它来自定义图例格式;就您而言,您需要draw=none抑制框架。

  3. 使用 pgfplots 提供的各种坐标系统,您可以将元素放置在任何所需的位置。在下面的示例中,我使用轴描述系统添加了\lervt e^{x}\rvert

代码:

\documentclass{article}
\usepackage{pgfplots}
\usepackage{amsmath}

\begin{document}

    \begin{tikzpicture}
\begin{axis}[
  axis lines=middle,
  samples=100,
  ymax=5,legend pos=north east,
  legend style={draw=none}
]
\addplot[forget plot,cyan,domain=0.001:8] {abs(log10(x))};
\addplot[forget plot,red!70!black,domain=-2:4] {2+exp(abs(x))};
\addplot[green,thick,domain=-2:3] {exp(x)};
\addlegendentry{$e^{x}$};
\node[pin={90:$f(x)=\lvert\log x\rvert$},inner sep=0pt] 
  at (axis cs:{2,log10(2)}) {};
\node[pin={0:$f(x)=e^{x}$},inner sep=0pt] 
  at (axis cs:{1,exp(1)}) {};
\node[anchor=north west] 
  at (axis description cs:0,0.5)
  {$\lvert e^{x}\rvert$};
\end{axis}
\end{tikzpicture}

\end{document}

结果:

在此处输入图片描述

相关内容