绘制一个有 32 个单元格的网格,中间矩形不显示
Draw a grid with 32 cells, intermediate rectangles does not show up
我想画一张图来描述浮点 IEEE754 规范。
为此,我尝试绘制一个包含 32 个矩形的网格。 (然后我发现有一个网格命令)。
这是 4 个单元格的 MWE:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0, 1}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\foreach \x in {2, 3}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
\end{document}
我用了两个foreach。我可以将它们合并为一个,但我只获得最左侧和最右侧的矩形,而不是第一个 MWE 中的四个矩形。为什么会这样?
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0, 4}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
通过使用 \foreach \x in {0, 4}
,您的列表实际上只有这两个值,没有中间值。
如果您想包含中间步骤,可以使用\foreach \x in {0,...,3}
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0,...,3}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
\end{document}
我想画一张图来描述浮点 IEEE754 规范。 为此,我尝试绘制一个包含 32 个矩形的网格。 (然后我发现有一个网格命令)。 这是 4 个单元格的 MWE:
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0, 1}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\foreach \x in {2, 3}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
\end{document}
我用了两个foreach。我可以将它们合并为一个,但我只获得最左侧和最右侧的矩形,而不是第一个 MWE 中的四个矩形。为什么会这样?
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0, 4}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
通过使用 \foreach \x in {0, 4}
,您的列表实际上只有这两个值,没有中间值。
如果您想包含中间步骤,可以使用\foreach \x in {0,...,3}
\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\newcommand{\width}{1}
\newcommand{\height}{2}
\foreach \x in {0,...,3}{
\draw (\x, 0) rectangle (\x+\width, \height);
}
\end{tikzpicture}
\end{document}