我想grid
在轴环境中使用,但它不能按预期工作:
\documentclass[class=minimal,border=10pt]{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis equal, xmin=-1, xmax=10, ymin=-1, ymax=10,]
\draw[step=10mm] (0,0) grid (9,9);
\end{axis}
\end{tikzpicture}
\end{document}
为什么这不显示 10x10 的网格?
答案1
删除axis equal
并明确设置x
和y
单位:
\documentclass[class=minimal,border=10pt]{standalone}
\usepackage{pgfplots}% loads tikz
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}
\begin{axis}[xmin=-1, xmax=10, ymin=-1, ymax=10,x=10mm,y=10mm]
\draw[step=10mm] (-.001,-.001) grid (9,9);
\end{axis}
\end{tikzpicture}
\end{document}
结果:
或者您可以使用\pgfplotsinvokeforeach
绘制网格线:
\documentclass[class=minimal,border=10pt]{standalone}
\usepackage{pgfplots}% loads tikz
\pgfplotsset{compat=1.14}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis equal, xmin=-1, xmax=10, ymin=-1, ymax=10]
\pgfplotsinvokeforeach{0,...,9}{\draw(#1,0)--(#1,9)(0,#1)--(9,#1);}
\end{axis}
\end{tikzpicture}
\end{document}
结果: