1

The follow code produces an arrowhead at the centre of the circles. Can anyone please explain why and how to remove it?

\tikzset{pics/carc/.style args={#1:#2:#3}{
code={\draw[pic actions] (#1:#3) arc(#1:#2:#3);
}}}
\begin{tikzpicture}
\draw[<-,>=stealth', thick, black] (0,0) pic{carc=100:440:1.6};
\draw[<-,>=stealth', thick, black] (0,0) pic{carc=100:440:1.1};
\draw[<-,>=stealth', thick, black] (0,0) pic{carc=100:440:0.6};
\end{tikzpicture}
  • 3
    Please, don't post fragments but a minimal example from \documentclass to \end{document}. – egreg Mar 19 '18 at 14:22
3

Replace \draw by \path then the arrow to (0,0), which is the end of your the path, will not be drawn:

\documentclass[margin=5pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows}
\begin{document}
\tikzset{pics/carc/.style args={#1:#2:#3}{
  code={\draw[pic actions] (#1:#3) arc(#1:#2:#3);
}}}
\begin{tikzpicture}
\path[<-,>=stealth', thick, black] 
  (0,0) foreach \r in {1.6,1.1,.6}{pic {carc=100:440:\r}};
\end{tikzpicture}
\end{document}

enter image description here

  • I really like your simple loop, but I think that the path solution is perhaps not optimal. Sometimes the paths get distorted by options like shorten. In the above situation, of course there is none of these issues. – user121799 Mar 19 '18 at 14:58
3

The arrow is there because you asked TikZ to put it. I guess you want to pass the options to the \draw inside the pic, not to the outside one.

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows}
\begin{document}
\tikzset{pics/carc/.style args={#1:#2:#3}{
code={\draw[pic actions] (#1:#3) arc(#1:#2:#3);
}}}
\begin{tikzpicture}
 \draw (0,0) pic[<-,>=stealth', thick, black]{carc=100:440:1.6};
 \draw (0,0) pic[<-,>=stealth', thick, black]{carc=100:440:1.1};
 \draw (0,0) pic[<-,>=stealth', thick, black]{carc=100:440:0.6};
\end{tikzpicture}
\end{document}

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.