The pgfplots manual says that axis on top=true won't affect the plot if using plotmarks as this usually doesn't make sense, which I agree with. However, in this case I'd prefer both the axis and tick labels to be on top of the plot marks; is there any way to force this, or any workaround available?
At the moment, my output becomes as in the attached figure,

using the following options
\begin{axis}[%
axis on top=true,
view={0}{90},
axis y line = center,
axis x line = center,
xmin=-2,xmax=2,
ymin=-2,ymax=2,
xtick={-2,-1.5,-1,-0.5,0,0.5,1,1.5,2},
xticklabels={$-2c$,$-1.5c$,$-c$,$-0.5c$,$0$,$0.5c$,$c$,$1.5c$,$2c$},
ytick={-2,-1.5,-1,-0.5,0,0.5,1,1.5,2},
yticklabels={$-2d$,$-1.5d$,$-d$,$-0.5d$,$0$,$0.5d$,$d$,$1.5d$,$2d$},
width=4in,
height=3in,
scale only axis,
xlabel={$\phi_1$},
ylabel={$\phi_2$}]
Code for MWE:
\documentclass[12pt]{standalone}
\usepackage{amsmath}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\input{sn2.tikz}
\end{document}
sn2.tikz can be found in the link below
Link to sn2.tikz: sn2.tikz
