
8x8 のグリッド上に 64 個のディスクのセットを描画しようとしています。次の図のように:
これまでのところ:
たとえば、forループを使用してこのタスクを自動化したいのですが、わかりません。私のコードを見てください。これは、ディスクごとに1行の強引なコードです。
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=3]
\draw[step=.5cm,gray,very thin] (-2.0,-2.0) grid (2.0,2.0);
\draw (-1.75,1.75) circle (0.15cm);
\draw (-1.25,1.75) circle (0.15cm);
\draw (-0.75,1.75) circle (0.15cm);
\draw (-0.25,1.75) circle (0.15cm);
\draw (0.25,1.75) circle (0.15cm);
\draw (0.75,1.75) circle (0.15cm);
\draw (1.25,1.75) circle (0.15cm);
\draw (1.75,1.75) circle (0.15cm);
\end{tikzpicture}
\end{document}
答え1
マニュアルを少し見れば、これは非常に簡単です。pgfmanual バージョン 3.0.1a の 901 ページの最後に、@Symbol1 が指摘したのと同様の円のパターンがあります。残りのティックとラベルは、基本的な簡単なスラフです。
\documentclass[tikz,border=5pt]{standalone}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}[line width=.7pt, outer sep=0pt]
\foreach \x in {1,...,8}
\foreach \y in {1,...,8}
\draw [fill=red](\x,\y) circle (0.3cm);
\node [minimum size=8.2cm,draw](o) at (4.5,4.5){};
\node at (o.north) [above]{$N=64, \eta=0.3$};
\node at (o.south) [below=1em]{eixo x};
\node at (o.west) [left=2.5em,rotate=90]{eixo y};
\foreach \i in {0,0.2,0.4,0.6,0.8,1.0}{
\draw ($(o.south west)!\i!(o.south east)$)node[below]{\i}--++(0,2mm);
\draw ($(o.south west)!\i!(o.north west)$)node[left]{\i}--++(2mm,0);
}
\end{tikzpicture}
\end{document}