# How would you draw an arrow filled with a gradient?

I want to draw several large arrows filled with gradients at different locations. How would you do that ?

I am new to tikz and latex and came to the following (ugly) solution:

\def\y{0.4}
\def\x{0.2}
\newcommand\verticalarrow[2]{
(0,0) -- (#1,0) -- (#1,#2-\y) -- (#1+\x,#2-\y) -- (#1/2,#2) --
(-\x,#2-\y) -- (0,#2-\y) -- (0,0)
}

\draw[bottom color=white, top color=gray, very thin] \verticalarrow{0.15}{4};

It's complex and for now I don't know how to locate my arrows ...

-

I would use a \node with the single arrow shape, which is provided by the shapes.arrows library. The shape can be adjusted quite flexibly:

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[every node/.append style={draw=gray, left color=white, single arrow}]
\node [
right color=orange,
single arrow,
minimum height=1cm
] {};

\node at (0,-1) [
right color=blue!50!cyan,
single arrow,
minimum height=1cm,
rotate=60
] {};

\node at (1,0) [
right color=red!80!black,
single arrow,
single arrow tip angle=110,
minimum height=2cm,
inner sep=1pt,