为预栅格化数据提供图例

为预栅格化数据提供图例

我有一个包含数百万个数据点的图(实时传感器,50 个样本/秒,多个通道,5 小时)。为了减小文档的文件大小,我在 MATLAB 中使用折线图制作了一个裸 PNG,并\addplot graphics在 pgfplots 中使用它来添加与我的文档格式和其他 pgfplots 图形一致的轴线和标签。

\documentclass{standalone}

\usepackage{pgfplots}

\begin{document}
   \begin{tikzpicture}
       \begin{axis}[xmax=330, xtick={0,60,...,330}, xlabel={Time (min)}, ylabel=g, enlargelimits=false, axis on top]
         \addplot graphics [xmin=0, xmax=330, ymin=-200, ymax=800] {from_matlab.png};
       \end{axis}
   \end{tikzpicture}

\end{document}

效果很好

剧情需要传奇

现在我想添加一个图例。我宁愿使用 tikz 和 pgfplots 创建它,以保持一致的格式,并将其作为可搜索的文本数据保存在我的文档中。

我怎样才能让 pgfplots 知道这个仅包含单个对象的轴实际上需要三个条目,并且这些是特定颜色的线系列?

答案1

pgfplots 手册提到,\addlegendimage它可以直接控制后续图例条目的样式。选项没有很好地记录下来,但测试表明可以接受颜色,并且图例样式默认为线型。

 \addlegendimage{blue} \addlegendentry{Load Cell \#2};
 \addlegendimage{green!60!black} \addlegendentry{Load Cell \#3};
 \addlegendimage{red} \addlegendentry{Load Cell \#4};

此代码多于\addplot graphics,因为没有与图形元素本身配对的图例条目。要在添加图形后设置图例,应提供forget ploton \addplot(而不是 on !)作为选项,使图例不包含与图形相对应的条目,并将其样式设置为黑graphics线。

相关内容