pgfplots,更改图例图像样式

pgfplots,更改图例图像样式

我想在同一个图中绘制两个数据集的数据标记和线性回归,并为一个数据/回归对添加图例条目:这是我当前的状态:

\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotstableread[col sep = comma]{
  x,   y1,      y2,
  1,    1.0,     3.0,
  2,    2.2,     6.3,
  4,    3.9,    10.0,
  8,    8.1,    25.0,
  } \data
 \begin{document}
  \begin{figure}
   \centering
   \begin{tikzpicture}
     \begin{axis}[legend pos=north west,
          legend image post style={solid}
       ]
       \addplot[only marks,mark=o,color=red] table [x=x, y=y1] {\data};
       \addplot[no markers,color=red,forget plot] table [x=x, y={create col/linear regression={y=y1}}] {\data};
       \addlegendentry{y1}
       \addplot[only marks,mark=square,color=blue] table [x=x, y=y2]{\data};
       \addplot[no markers,color=blue,forget plot] table [x=x, y={create col/linear regression={y=y2}}] {\data};
       \addlegendentry{y2}
     \end{axis}
   \end{tikzpicture}
  \end{figure}
 \end{document}

它创建了下面的图像:

沒有線條的圖例 :(

我想为每个图例条目添加一条线和一个标记,但目前只显示标记。我怎样才能绘制线条?当我将描述的图更改为线图(即,将“忘记图”选项向上移动一行)时,我想我不能根据图例中的每个条目添加不同的标记,可以吗?谢谢,Juhui

答案1

您可以使用以下命令更改用于生成图例图像的绘图选项legend image post style

\documentclass[border=5mm]{standalone}
\usepackage{pgfplotstable}
\pgfplotstableread[col sep = comma]{
  x,   y1,      y2,
  1,    1.0,     3.0,
  2,    2.2,     6.3,
  4,    3.9,    10.0,
  8,    8.1,    25.0,
  } \data
 \begin{document}
   \begin{tikzpicture}
     \begin{axis}[legend pos=north west,
          legend image post style={solid}
       ]
       \addplot[only marks,mark=o,color=red, legend image post style={sharp plot}] table [x=x, y=y1] {\data};
       \addplot[no markers,color=red,forget plot] table [x=x, y={create col/linear regression={y=y1}}] {\data};
       \addlegendentry{y1}
       \addplot[only marks,mark=square,color=blue, legend image post style={sharp plot}] table [x=x, y=y2]{\data};
       \addplot[no markers,color=blue,forget plot] table [x=x, y={create col/linear regression={y=y2}}] {\data};
       \addlegendentry{y2}
     \end{axis}
   \end{tikzpicture}
 \end{document}

相关内容