带有小数字的直方图仅显示一条线

带有小数字的直方图仅显示一条线

我想实现一个直方图。当我使用 0 到 10 之间的数字时,我的代码可以正常工作,但当我使用新数字时,它只会显示一条线,而没有直方图。

有人可以给我建议如何修复这个问题吗?

写数字时不用除法吗?

  \begin{tikzpicture}
\begin{axis}[
ybar interval,
xticklabel=
\pgfmathprintnumber\tick--\pgfmathprintnumber\nexttick
]
\addplot+ [hist={bins=3}]
table [row sep=\\,y index=0] {
data\\
$6/94$\\ $4/94$\\ $8/94$\\ $3/94$\\ $7/94$\\ $2/94$\\ $2/94$\\ $5/94$\\ $1/94$\\ $1/94$\\ $1/94$\\ $9/94$\\
$6/94$\\ $4/94$\\ $10/94$\\ $3/94$\\ $3/94$\\ $5/94$\\ $2/94$\\ 0\\ $1/94$\\ $4/94$\\ $1/94$\\ $2/94$\\ $4/94$\\
};%Was diese Strich lan
\end{axis}
\end{tikzpicture}```

答案1

您可以使用 解析分数(但需要删除符号$y expr=\thisrow{data}。我不知道这是否正是您想要的输出。

\documentclass[a4paper]{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
ybar interval,
xticklabel=
\pgfmathprintnumber\tick--\pgfmathprintnumber\nexttick,
xticklabel style={yshift={-(1+pow(-1,1+\ticknum))*0.6em}}
]
\addplot+ [hist={bins=3}]
table [row sep=\\,y expr=\thisrow{data}] {
data\\
6/94\\ 4/94\\ 8/94\\ 3/94\\ 7/94\\ 2/94\\ 2/94\\ 5/94\\ 1/94\\ 1/94\\ 1/94\\ 9/94\\
6/94\\ 4/94\\ 10/94\\ 3/94\\ 3/94\\ 5/94\\ 2/94\\ 0\\ 1/94\\ 4/94\\ 1/94\\ 2/94\\ 4/94\\
};%
\end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容