在“类似直方图”的箱体上绘制一条线

在“类似直方图”的箱体上绘制一条线

我必须使用 tikz 和 pgfplots 将以下 JPEG 图像转换为 TeX 等效图。

我想集成到我的 tex 文档中的 JPEG 图像

这是我目前所拥有的:

\documentclass[border=3mm]{standalone}
\usepackage{pgfplots}
    \begin{document}
        \begin{tikzpicture}
            \begin{axis}[
                width=\linewidth,
                height=8cm,
                ymin=0,
                ytick={0,10,20,30,40,50,60,70,80,90,100},
                ymax=100,
                ylabel={Percentage},
                symbolic x coords={0-15,15-59,60-64,65-69,70-74,75-79,80-84,85-89,90+},
                xtick=data,
                nodes near coords align={vertical}
                ]
                \addplot[draw={rgb:red,36;green,105;blue,179},ultra thick, smooth, nodes near coords] 
                    coordinates {(0-15,0.7) (15-59,0.6) (60-64,1.9) (65-69,3.0) (70-74,5.0) (75-79,9.8) (80-84,21.0) (85-89,38.2) (90+,64.4)};
            \end{axis}
        \end{tikzpicture}
    \end{document}

它看起来是这样的:

在此处输入图片描述

该图几乎与上述 JPEG 图像相似。但是,我遇到了以下问题:

A. 如何在第一个 JPEG 图像中所见的箱子之间绘制垂直线?

B. 如何删除 TeX Graph 中显示的 x 轴和 y 轴刻度?

C. 如何将第一个 JPEG 图像中显示的数值处的大蓝点形象化?

D. 如何将坐标处的可视化数字稍微向上移动,以便它们不干扰绘制的线条?

任何帮助将不胜感激...

答案1

B. 使用选项tick style={draw=none}

答:对于灰线,请使用小刻度处的网格:

minor x tick num=1,
minor ytick={10,30,90},
grid=minor,

C. 使用mark*绘图选项并更改drawcolor

\addplot[color={rgb:red,36;green,105;blue,179},mark=*,...] ...

D. 使用选项nodes near coords style移动数字并将颜色改回黑色:

nodes near coords style={yshift=1em,black},

此外我会使用较小的字体尺寸。

在此处输入图片描述

代码:

\documentclass[border=3mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\begin{document}
  \begin{tikzpicture}
    \begin{axis}[
      width=\linewidth,
      height=8cm,
      ymin=0,
      ytick={0,10,20,30,40,50,60,70,80,90,100},
      ymax=100,
      ylabel={Percentage},
      symbolic x coords={0-15,15-59,60-64,65-69,70-74,75-79,80-84,85-89,90+},
      xtick=data,
      font=\footnotesize,
      tick style={draw=none},
      minor x tick num=1,
      minor ytick={10,30,90},
      grid=minor,
      nodes near coords style={yshift=1em,black},
      ]
      \addplot[color={rgb:red,36;green,105;blue,179},mark=*,ultra thick, smooth, nodes near coords] 
        coordinates {(0-15,0.7) (15-59,0.6) (60-64,1.9) (65-69,3.0) (70-74,5.0) (75-79,9.8) (80-84,21.0) (85-89,38.2) (90+,64.4)};
    \end{axis}
  \end{tikzpicture}
\end{document}

相关内容