如何使用 \foreach 绘制具有可变起点和终点(由定义的点确定)的节点?

如何使用 \foreach 绘制具有可变起点和终点(由定义的点确定)的节点?

因此,我想从一个点的给定 x 坐标到另一个点的 x 坐标,每个单位绘制节点,以标记自定义轴。我确实想跳过 0。手动示例如下所示:

\foreach \x in {-1,1,2,...,10}
    \draw (\x,-.1) -- (\x,.1) node[below=4pt] {$\scriptstyle\x$};

但由于我必须经常重复使用此代码,因此我不想总是手动设置范围的起点和终点。我更愿意从两个给定点导航。

基本上是这样的:

\foreach \x in {"x-Coordinate of Point DL",.., skip 0,"x-Coordinate of Point TR"}
    \draw (\x,-.1) -- (\x,.1) node[below=4pt] {$\scriptstyle\x$};

我正在尝试做的一个不那么简单的工作示例是:

\documentclass{article}
\usepackage{tikz}
\usepackage{tkz-euclide}
\begin{document}
\begin{tikzpicture}[cross/.style={draw, cross out,
        minimum size=2*(#1-1pt), inner sep=0pt, outer sep=0pt}, x=1cm, y=1cm]
    %----------------
    %--- Define x/y axis by setting x-min and y-min
    \tkzDefPoint(-1,-1){DL} %down left border
    \tkzDefPoint(10,10){TR} %top right border
    %----------------
    %--- Draw the grid  
    \draw [color=gray!50]  [step=5mm] ($(DL)+(-1,-1)$) grid ($(TR)+(1,1)$);
    %----------------
    %--- Drawing the axis
    %--- x-axis
    \draw[->,thick] let \p{DL}=(DL), \p{TR}=(TR), in
    (-13+\x{DL},0) -- (13+\x{TR},0) 
    node[right] {$x$};
    %--- y-axis
    \draw[->,thick] let \p{DL}=(DL), \p{TR}=(TR), in
    (0,-13+\y{DL}) -- (0,13+\y{TR}) 
    node[above right] {$y$};
    %----------------
    %--- Labeling of both axes
    \foreach \x in {-1,1,2,...,10}
    \draw (\x,-.1) -- (\x,.1) node[below=4pt] {$\scriptstyle\x$};
    \foreach \y in {-1,1,2,...,10}
    \draw (-.1,\y) -- (.1,\y) node[left=4pt] {$\scriptstyle\y$};
\end{tikzpicture} 
\end{document}

在此处输入图片描述

我确实知道我可以使用 pgfplots 来更轻松地完成我想要实现的目标,但我总是无法获得自定义网格。由于我必须打印这个,学生在上面画草图,所以网格大小非常重要(这就是我现在直接使用 tikz 的原因)。

相关内容