如何绘制带条形图

如何绘制带条形图

我想知道如何在乳胶中绘制这种类型的图表: 在此处输入图片描述

在这种情况下,tikz 可能会有所帮助?这种代码会是什么样子的?

答案1

这是一个TikZ解决方案:

在此处输入图片描述

如果您只需要 3 个级别,您可以将第一个\forall循环更改为。您也可以将其更改为或更多,但左侧的标签会重叠,并且开始变得非常慢。您可能需要更改比例。{1,2,3}{1,...,5}

\documentclass{article}
\usepackage{tikz}
\begin{document}

\begin{tikzpicture}[xscale=10,yscale=5]
\draw (0,1)--(0,0)--(1,0)--(1,1);
\foreach \n[evaluate=\n as \M using 5^\n-1, evaluate=\n as \m using int(\n-1)] in {1,2,3,4}{
    \foreach \k in {1,3,...,\M}{
        \fill ({\k/(\M+1)},0) rectangle ({(\k+1)/(\M+1)},{1/3^(\m)});
        \node[left,font=\scriptsize\sffamily] at (0,{1/3^(\m)}){$1/3^\m$};
    }
}

\end{tikzpicture}
\end{document}

相关内容