Friends, I'm having a bad time trying to figure out how to make the axis appear "inside" the plot. When I use the option axis on top it appears always in front of the plot and when I do not use it, they stay behind the plot. Is there a way to make the axis be visible only when the plot is not in front of it? Further, One can scale the z axis of the plotted function?
You can see below my code and figures of what I have and what I would desire to have.
\documentclass[12pt,a4paper,final]{report}
\usepackage{tikz}
\usepackage{pgfplots}
\begin{document}
\begin{center}
\begin{tikzpicture}[]
\begin{axis}[axis lines=center,
axis on top,
xtick=\empty,
ytick=\empty,
ztick=\empty,
xrange=-2:2,
yrange=-2:2
]
% plot
\addplot3[domain=-1:1,y domain=-1:1,colormap/viridis,surf]
{sqrt(x^2+y^2)};
\addplot3[domain=-1:1,y domain=-1:1,colormap/viridis,mesh]
{-sqrt(x^2+y^2)};
\end{axis}
\end{tikzpicture}
\end{center}
\end{document}
Left: what I have, right: what I'd like to get.



axis background, the whole positivezaxis gets covered by the green surface. You could, of course, draw the axis by hand... – Feb 15 '18 at 17:02