在 pgfplots 中绘制坐标 {(a_1,3) (a_2,2) (a_i,4) (a_r,1)}

在 pgfplots 中绘制坐标 {(a_1,3) (a_2,2) (a_i,4) (a_r,1)}

我正在使用以下代码:

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot+[ycomb] plot coordinates
    {(0,3) (1,2) (2,4) (3,1)};
\end{axis}
\end{tikzpicture}
\end{document}

输出为:

在此处输入图片描述

但是如果我有坐标{(a_1,3) (a_2,2) ... (a_i,4) ... (a_r,1)}0 < a_1 < a_2 < ...< a_i < ... < a_r我该如何绘制这些坐标?

提前致谢!

答案1

您可以使用symbolic x coords={...}xtick=data

代码:

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.10}
\pagestyle{empty}
\begin{document}
\begin{tikzpicture}
\begin{axis}[symbolic x coords={$a_1$,$a_2$,$a_i$,$a_r$},xtick=data,]
\addplot+[ycomb] plot coordinates
    {($a_1$,3) ($a_2$,2) ($a_i$,4) ($a_r$,1)};
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容