如何使用没有标记但有误差线的 pgfplots 绘制数据点?如果我尝试marks=none
启用误差线,我会得到带有误差线的大实心圆。例如,如果我将标记更改为,mark=+
我必须手动调整标记大小,以便误差线大于标记。
原因是,如果我有误差线,我会自动获得实际数据点:误差线相交的点。所以我不需要明确的标记,但如上所述,仅设置mark=none
似乎不足以实现这一点。
mark=none
当标记均匀设置时,绘制带有误差线的实心圆:
\begin{tikzpicture}
\begin{axis}
\addplot[ only marks, mark=none,
error bars/.cd, y dir=both, x dir=both, x explicit, y explicit]
table [x index=0, y index=2, x error index=1, y error index=3]
{mydata.txt};
\end{axis}
\end{tikzpicture}
mydata.txt
to work with 的部分内容:
3.414 8E-3 3.62 5E-2
1.570 2E-2 1.65 1E-1
3.809 9E-3 3.96 3E-2
4.340 2E-2 4.34 3E-2
如何在没有实际标记符号的情况下获取误差线,以便通过误差线的交叉“自动标记”点?
答案1
将选项添加no markers
到轴,然后提供scatter, only marks
给图。看似矛盾,但确实有效:
\documentclass{article}
\usepackage{tikz,pgfplots,filecontents}
\begin{filecontents*}{mydata.txt}
3.414 8E-3 3.62 5E-2
1.570 2E-2 1.65 1E-1
3.809 9E-3 3.96 3E-2
4.340 2E-2 4.34 3E-2
\end{filecontents*}
\pgfplotsset{compat=1.7}
\begin{document}
\begin{tikzpicture}
\begin{axis}[no markers]
\addplot[scatter, only marks,
error bars/.cd,
y dir=both, x dir=both,
x explicit, y explicit]
table [x index=0, y index=2, x error index=1, y error index=3]
{mydata.txt};
\end{axis}
\end{tikzpicture}
\end{document}
输出: