在 Latex 中创建一个简单、美观、空白的条形图的最简单方法是什么——我将适当地设置轴,但学生将填写数据。
具体来说,条形图将显示掷一对骰子时,每种可能的总和(从 2 到 12)有多少种方法。例如,总和为 7 有 6 种方法,等等。
编辑:这是我的尝试。如果您发现更好的方法,请告诉我!
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[dashed,gray] (0,0) grid (11,6);
\draw (0,0) --(11,0);
\draw (0,0) --(0,6);
\node at (.5,-.5) {2};
\node at (1.5,-.5) {3};
\node at (2.5,-.5) {4};
\node at (3.5,-.5) {5};
\node at (4.5,-.5) {6};
\node at (5.5,-.5) {7};
\node at (6.5,-.5) {8};
\node at (7.5,-.5) {9};
\node at (8.5,-.5) {10};
\node at (9.5,-.5) {11};
\node at (10.5,-.5) {12};
\node at (-.5,1) {1};
\node at (-.5,2) {2};
\node at (-.5,3) {3};
\node at (-.5,4) {4};
\node at (-.5,5) {5};
\node at (-.5,6) {6};
\foreach \y in {1,2,3,4,5,6}
\draw (-2pt,\y) -- (2pt,\y);
\end{tikzpicture}
\end{document}
答案1
以下是我使用 的方法pgfplots
。样式代码已进行了广泛注释,以向您展示每个选项的作用。可以进行更多自定义;请参阅手动的了解完整详情。
我绘制了两个不可见的条形图((2,0)和(12,6))以正确设置范围。
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.11}
\begin{document}
\begin{tikzpicture}
\begin{axis}[%
ybar, % a bar plot
xtick align=inside, % x-tick marks inside the axis
ytick align=center, % y-tick marks straddle the axis
width=5in, % 5 in width of plot
axis equal image, % unity aspect ratio
enlarge y limits=false, % do not add padding to y axis limits
axis lines*=left, % draw axis lines left and bottom; no arrows
grid=major, grid style={gray,dashed}, % major grid, gray and dashed
xtick={2,...,12}, % x ticks integers from 2 to 12
ytick={1,...,6}, % y ticks integers from 1 to 6
]
\addplot[opacity=0] coordinates {(2,0) (12,6)}; % two bars are good enough to get the correct extents
\end{axis}
\end{tikzpicture}
\end{document}
这种方法的一个优点是您可以将所有自定义设置存储为 TikZ style
。然后,您可以将此样式应用于其他轴环境,以自动获得可能具有不同大小或范围的图形的一致样式。