如何在 pgfplots 中绘制带有标记和垂直线的图?

如何在 pgfplots 中绘制带有标记和垂直线的图?

我想绘制一个由标记和连接标记与横轴的垂直线组成的图。到目前为止我能想到的最接近的方法是:

\documentclass{article}
\usepackage{tikz}
\usepackage{pgfplots}
\usepackage{pgfplotstable}

\begin{tikzpicture}
\begin{axis}[
    xmin=-1, xmax=4,
    ymin=0, ymax=0.5
]
\addplot[color=blue, mark=o]
    coordinates{(0,0)(0,0.5^3)};
\addplot[color=blue, mark=o]
    coordinates{(1,0)(1,3*0.5^3)};
\addplot[color=blue, mark=o]
    coordinates{(2,0)(2,3*0.5^3)};
\addplot[color=blue, mark=o]
    coordinates{(3,0)(3,0.5^3)};
\end{axis}
\end{tikzpicture}

\end{document}

这很糟糕,因为

  • 我不想在横轴上做标记。
  • 我不想让线条显示内部标记。
  • 我宁愿只有一个\addplot命令,而不是多个命令。

答案1

我不能 100% 确定我是否正确理解了您的问题,但您的意思是以下内容吗?

\documentclass[border=5pt]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
    \begin{axis}[
        xmin=-1, xmax=4,
        ymin=0, ymax=0.5,
        ycomb,             % <-- added
    ]
        \addplot+ [mark options={fill=white}] coordinates {
            (0,0.5^3)
            (1,3*0.5^3)
            (2,3*0.5^3)
            (3,0.5^3)
        };
    \end{axis}
\end{tikzpicture}
\end{document}

该图显示了上述代码的结果

相关内容