Shifting origin (0,0) to new coordinates in TikZ

I'm not sure of the usefulness of this approach, but \tikzset can alter most of tikz parameters from the point it appears on, so...

\documentclass[tikz, border=5pt]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
    \draw [->, very thick] (0, 0) -- (0,-1);
    \tikzset{shift={(0,-1)}}
    \draw [->, very thick] (0, 0) -- (0,-1);
    \tikzset{shift={(0,-1)}}
    \draw [->, very thick] (0, 0) -- (0,-1);
\end{tikzpicture}
\end{document}

Result


\draw [->] (0, 0) -- (0,-1);
\begin{scope}[yshift=-1cm]
\draw [->] (0, 0) -- (0,-1);
\end{scope}
\begin{scope}[yshift=-2cm]
\draw [->] (0, 0) -- (0,-1);
\end{scope}

enter image description here

Note:

  • as experienced TeX.SE user you should provide complete small document and with this helps people who would be willing help you. Above example I test in my tikzpicture test-bed, which setting can differ from your document, so I didn't provide them.
  • scope[<options>] is wrong syntax, correct is \begin{scope}[<options>] ... \end{scope}
  • each shift of scoped part of image code is relative to coordinate (0,0), sou you need accordingly increase shift amount, otherwise the second shifted image part will overlap previous one.
  • for shift in only one direction you can use xshift=... or yshift=...

Tags:

Tikz Pgf