设置不同的标记大小和线宽

设置不同的标记大小和线宽

我想用很细的线但很大的标记绘制一个图,如下例所示

\documentclass[tikz]{standalone}
\RequirePackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
  \addplot [thin, mark = none] coordinates {(0,0) (1,1)};
  \addplot [only marks,thick] coordinates {(0,0) (1,1)};
\end{axis}
\end{tikzpicture}

\end{document}

到目前为止,我无法定义一种样式来实现这种效果,因为标记和线条使用相同的选项(粗或细)。

编辑:当使用 + 或 x 之类的标记时会出现问题:

\documentclass[tikz]{standalone}
\RequirePackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
  \addplot [thin, mark = none,blue] coordinates {(0,0) (1,1)};
  \addplot [only marks, thick,mark = +,blue] coordinates {(0,0) (1,1)};

  \addplot [thin, mark = +, mark size=8pt,red] coordinates {(0,1) (1,0)};
\end{axis}
\end{tikzpicture}

\end{document}

我想要得到下图中的蓝色图

在此处输入图片描述

答案1

您可以使用mark options比例因子或mark size来控制标记:

\documentclass[tikz]{standalone}
\RequirePackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot+[ultra thin,mark options={scale=4}] coordinates {(0,0) (1,1)};
\addplot+[line width=3pt,mark size=6pt] coordinates {(0,0.5) (1,0.5)};
\end{axis}
\end{tikzpicture}

\end{document}

在此处输入图片描述

每一个都mark style可以用来“全局”设置标记选项:

\documentclass[tikz]{standalone}
\RequirePackage{pgfplots}
\begin{document}
\begin{tikzpicture}[every mark/.append style={mark size=8pt}]
\begin{axis}
\addplot+[ultra thin] coordinates {(0,0) (1,1)};
\addplot+[line width=3pt] coordinates {(0,0.5) (1,0.5)};
\end{axis}
\end{tikzpicture}

\end{document}

我选择了一个相当大的标记尺寸只是为了举例。

相关内容