It is easy for me to add arrows to the axes of the a figure by taking advantage of AxesStyle -> Arrowheads[] when the differences between the horizontal and vertical coordinates is small. For instance, by using

Plot[1/x, {x, -20, 20}, AxesStyle -> Arrowheads[{0.0, 0.03}]]

the arrows appear at both the horizontal and vertical axis.
However, I don't know how to add arrows to the ones whose differences are big. For example, when the following program is run

Plot[1/x^5, {x, -20, 20}, AxesStyle -> Arrowheads[{0.0, 0.00003}]]

the arrows cannot be seen obviously? I want to know how I can make the arrows to be found evidently just as the previous one?

@cormullion only as a placeholder for specifying for example Arrowheads[{-0.05, 0.05}] later
–
belisariusOct 5 '12 at 15:23

1

I know that ImagePadding was needed but I don't see why, nor why the default ImagePadding depends on the parameters of Arrowhead.
–
David CarraherOct 5 '12 at 15:24

@DavidCarraher I've to think about that. Probably it's due to the time in which the image size is determined (something in the plot scaling may be still unknown). You may post a question :)
–
belisariusOct 5 '12 at 15:28

Mathematica is a registered trademark of Wolfram Research, Inc. While the mark is used herein with the limited permission of Wolfram Research, Stack Exchange and this site disclaim all affiliation therewith.