1

Currently, I'm working on an exploded pie chart with a bended arc indicating the direction of a process. My problem is that the bended arc I used as an arrow has no contour at it's arrow tip. Also, the overall arrow tip style should match the style of the existing arced arrow. My attempt looks as follows:

\documentclass{minimal}

\usepackage{tikz}
\usepackage{pgf-pie}
\usepackage{pgfplots}
\usepackage{pgfplotstable}
\usetikzlibrary{arrows, decorations.markings}
\usepgfplotslibrary{smithchart}
\pgfplotsset{compat=newest,width=0.6\linewidth} 

\begin{document} 

\tikzstyle{vecArrow} = [thick, decoration={markings,mark=at position
   1 with {\arrow[semithick]{open triangle 60}}},
   double distance=1.4pt, shorten >= 5.5pt,
   preaction = {decorate},
   postaction = {draw,line width=1.4pt, white,shorten >= 4.5pt}]
\tikzstyle{innerWhite} = [semithick, white,line width=1.4pt, shorten >= 4.5pt]

\tikzstyle{CircArrow} = [thick, decoration={markings,mark=at position
   1 with {\arrow[semithick]{ triangle 90}}},
   double distance=3.5pt, shorten >= 4.5pt,
   preaction = {decorate},
   postaction = {draw,line width=3.5pt, black,shorten >= 4.5pt}]
\tikzstyle{innerCirc} = [semithick, gray,line width=3.5pt, shorten >= 4.5pt]

\begin{tikzpicture}
\pie[explode=0.2, sum=auto, color=white, rotate=30, text=inside, hide number, radius=5.0, /text/every inside/.style={align=center}]
{10/ 1. Charakte-\\risieren, 10/ 6. Erfahrungen\\sammeln, 10/ 5. Ergebnisse\\analysieren, 10/ 4. Projekt\\durchführen, 10/ 3. Prozess\\wählen, 10/ 2. Ziele setzen}

%\draw[very thick, <-, rotate=120] (1.5,0) arc (0:330:1.5cm);

\draw[CircArrow, rotate=90] (1.5,0) arc (0:-330:1.5cm);
\draw[innerCirc, rotate=90] (1.5,0) arc (0:-330:1.5cm);
\end{tikzpicture}
\end{document}
2
  • Welcome to TeX.SE!
    – Mensch
    Jul 28 at 14:50
  • Can no one help me with the problem I have?
    – Peter1509
    Jul 29 at 5:36

1 Answer 1

2

I think you approach is a bit too complicated, since you can easily attach arrow tips to paths without the need to load any decorations library. You can use the postaction option instead to place two arrows with the same attributes on top of each other and change the color, decrease the line width and shorten the line ends of one of them:

\documentclass[border=10pt]{standalone}
\usepackage{pgf-pie}
\usetikzlibrary{arrows.meta}

\begin{document} 

\tikzset{
  thick arrow/.style={
    -{Triangle[angle=90:2.4142pt 1]},
    draw=black,
    line width=10pt, 
    postaction={
        -{Triangle[angle=90:1pt 1]},
        draw=gray,
        line width=8pt, 
        shorten <= 1pt,
        shorten >= 1.4142pt
    }
  }
}

\begin{tikzpicture}

\pie[explode=0.2, sum=auto, color=white, rotate=30, text=inside, hide number, radius=5.0, /text/every inside/.style={align=center}]
{10/ 1. Charakte-\\risieren, 10/ 6. Erfahrungen\\sammeln, 10/ 5. Ergebnisse\\analysieren, 10/ 4. Projekt\\durchführen, 10/ 3. Prozess\\wählen, 10/ 2. Ziele setzen}

\draw[thick arrow, rotate=90] (1.5,0) arc (0:-330:1.5cm);

\end{tikzpicture}
\end{document}

enter image description here

I used the TikZ library arrows.meta above, which also allows you to fill open arrows tips. But since that arrow tip is a closed triangle, this wouldn't have gotten you anywhere close to what you wanted:

\documentclass[border=10pt]{standalone}
\usepackage{tikz}
\usetikzlibrary{arrows.meta}

\begin{document} 

\begin{tikzpicture}

\draw[
    -{Triangle[angle=90:1pt 1, open, fill=gray]}, 
    line width=.5cm
] (0,0) -- ++(2,0);

\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.