我想创建一个 32 x 32 的网格,如下所示。
我还想在 x 和 y 方向添加两个标签。
1)0 - 31(网格数)
2)0- 1(箱体单元)
下一张幻灯片中,我必须从8号格子,23号格子结束。
在下一个级别,我必须添加另一个框,该框必须从格子号 12,应在格子号 19 处结束。
有什么方法可以实现这个吗?我尝试使用 TikZ
\draw 和 \fill
命令。但没有给出任何理想的结果。请建议任何方法来实现这一点。
谢谢。
答案1
这里是简短的 MWE。请参阅pgfmanual
说明。根据需要调整scale
-option(以使图像适合您的页面大小)
\documentclass[tikz, border=5mm]{standalone}
\begin{document}
\begin{tikzpicture}[scale=.5]
% Grid
\draw [step=1, dotted] (0,0) grid (31,31);
% Grid units
\foreach \x in {0,...,31} {
\node [below] at (\x,0) {\x};
\node [left] at (0,\x) {\x};
}
% Box units
\draw [<->, shorten >= .5cm, shorten <= .5cm] (0,-1.5) node {0} -- ++(31,0) node {1};
\draw [<->, shorten >= .5cm, shorten <= .5cm] (-1.5,0) node {0} -- ++(0,31) node {1};
% Inner rectangles
\draw [red, ultra thick] (8,8) rectangle (23,23);
\draw [blue, ultra thick] (12,12) rectangle (19,19);
\end{tikzpicture}
\end{document}
渲染图像:
答案2
杰西的评论可能是最简单的,但下面的代码也可以工作
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{tikz}
\begin{document}
\begin{center}
\begin{tikzpicture}[scale=0.5]
\foreach\x in {0,...,31} \draw(\x,31)--(\x,0) node[anchor=north]{\x} (31,\x)--(0,\x) node[anchor=east]{\x};
\end{tikzpicture}
\end{center}
\end{document}
答案3
只是为了用 PSTricks 来找点乐子的解决方案。
\documentclass[pstricks,border=15mm,12pt]{standalone}
\psset{unit=6mm,dimen=monkey,linewidth=2pt}
\begin{document}
\begin{pspicture}[showgrid](31,31)
\psframe[linecolor=red](8,8)(23,23)
\psframe[linecolor=blue](12,12)(19,19)
\rput(0,-1.5){0}\rput(31,-1.5){1}\psline{<->}(1,-1.5)(30,-1.5)
\rput(-1.5,0){0}\rput(-1.5,31){1}\psline{<->}(-1.5,1)(-1.5,30)
\end{pspicture}
\end{document}