构建 pgfplot 条形图,每个条形上方都有值

构建 pgfplot 条形图,每个条形上方都有值

这是我第一次尝试制作条形图。显然我遇到了一些问题。绘图中条形之间应该留出一些空间。y 值应该位于每个条形上方。每个 y 轴值的水平线也应该是图形的一部分,但不是垂直线。我在设置宽度时也遇到了一些问题,因此条形图始终相互连接。我想制作这样的绘图:在此处输入图片描述

请你帮助我好吗?

答案1

pgfplots这可以通过起点来完成:

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usetikzlibrary{patterns}
\begin{document}
\begin{tikzpicture}
  \definecolor{myblue}{HTML}{1F7ED2}
  \begin{axis}[
    axis x line*=bottom,
    axis y line*=none,
    every outer y axis line/.append style={draw=none},
    every y tick/.append style={draw=none},
    ymin=0,
    ymax=120,
    xticklabel={\pgfmathtruncatemacro\tick{\tick}\tick},   
    ytick={0, 20, ..., 120},
    ymajorgrids,
    y grid style={densely dotted, line cap=round},
    ylabel={Value in billion U.S. dollars},
    nodes near coords,
  ]
    \addplot[
      ybar,
      draw=none,
      fill=myblue,
    ] coordinates {
      (1995, 8.02)
      (1996, 11.29)
      (1997, 15.07)
      (1998, 21.06)
      (1999, 54.91)
      (2000, 105)
      (2001, 40.94)
    };
  \end{axis}
\end{tikzpicture}
\end{document}

结果

相关内容