Customising axis lines is a bit unintuitive: For one, the decoration
to be used in the postaction
needs to be specified within the postaction
. And applying a postaction
to the axes when using axis lines=left
(instead of axis lines=middle
, for example) requires the use of the every path/.style
(similar to what was done in How to specify a name path for the axis in PGFplots). To avoid an infinite recursion in this case, you need to clear the postaction
once it's been executed for the first time. This can be done using the nomorepostaction
key described in Applying a postaction to every path in TikZ.
Here's your axis generated using
\begin{axis}[
axis lines=middle,
axis line style={my axis}
]
\addplot coordinates {(-0.1,-0.2) (1.2,1.2)};
\end{axis}

And here's the complete code:
\documentclass[border=5mm]{standalone}
\usepackage{pgfplots}
\usetikzlibrary{arrows, decorations.markings}
\begin{document}
\begin{tikzpicture}
\makeatletter
\tikzset{
nomorepostaction/.code=\makeatletter\let\tikz@postactions\pgfutil@empty, % From https://tex.stackexchange.com/questions/3184/applying-a-postaction-to-every-path-in-tikz/5354#5354
my axis/.style={
postaction={
decoration={
markings,
mark=at position 1 with {
\arrow[ultra thick]{latex}
}
},
decorate,
nomorepostaction
},
thin,
-, % switch off other arrow tips
every path/.append style=my axis % this is necessary so it works both with "axis lines=left" and "axis lines=middle"
}
}
\makeatother
\begin{axis}[
axis lines=middle,
axis line style={my axis}
]
\addplot coordinates {(-0.1,-0.2) (1.2,1.2)};
\end{axis}
\end{tikzpicture}
\end{document}