条形图中的水平线没有第一条线

条形图中的水平线没有第一条线

我开始学习 pgf-plot,这是我的第一个情节:

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    ybar,
    ymin=0, ymax=70,
    width=9.5cm,
    symbolic x coords={a,b,c,d,e},
    xtick=data,
    bar width=15pt,
    axis lines*=left,
    ytick={0,10,...,70},
    xticklabel style={text height=1.5ex},
    ymajorgrids, 
    ]
    \addplot[fill=gray!40] coordinates {
        (a,54)
        (b,60)
        (c,62)
        (d,58)
        (e,51)
    };
\end{axis}
\end{tikzpicture}
\end{document}

现在我想从每个 yticks 到图的另一端绘制水平线。我试过了,xbar interval但没有成功。我该怎么做?

编辑:没关系,找到了。这是选项xmajorgrids。现在我无法做的是从水平网格中删除第一条线(从上方开始,y=70 处的 hline)。可能吗?

答案1

这是一种可能性:

\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.9}

\begin{document}
\begin{tikzpicture}
\begin{axis}[
    ybar,
    ymin=0, ymax=70,
    width=9.5cm,
    symbolic x coords={a,b,c,d,e},
    xtick=data,
    bar width=15pt,
    axis lines*=left,
    ytick={0,10,...,60},                  %changed code
    xticklabel style={text height=1.5ex},
    ymajorgrids,
    extra y ticks=70,                     %new code
    extra y tick style={grid=none}        %new code
    ]
    \addplot[fill=gray!40] coordinates {
        (a,54)
        (b,60)
        (c,62)
        (d,58)
        (e,51)
    };
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

我所做的是从您的选项中删除您不想要的值ytick,然后添加一个带有已删除值的额外勾号,但​​没有网格样式。

相关内容