I'm trying to replicate this figure:
but I don't know how to draw these planes. I need to draw the plane for constant z, rho and phi. I know that, to draw this, many lines of code are needed but the ideal answer should be simple and easy to understand and to modify.
Right now, I only have this code
\documentclass[11pt, oneside]{book}
\usepackage{physics}
\usepackage[italic = true]{derivative}
\usepackage[scr = rsfso]{mathalfa}
\usepackage{mathtools}
\usepackage{amssymb}
\usepackage{pgfplots}
\pgfplotsset{compat = newest}
\usepackage{tikz-3dplot}
\usepackage{tikz}
\usetikzlibrary{snakes, calc, quotes, babel,
decorations, trees, arrows, patterns, patterns.meta,
decorations.pathreplacing, calligraphy, backgrounds,
decorations.pathmorphing, decorations.markings, hobby,
chains, shapes.geometric, shapes, angles, 3d}
\begin{figure}[H]
\centering
\begin{tikzpicture}[yzx]
\draw[->] (0,0,0) -- (5,0,0) node(x)[left]{$x$};
\draw[->] (0,0,0) -- (0,6,0) node(y)[right]{$y$};
\draw[->] (0,0,0) -- (0,0,4) node(z)[right]{$z$};
\def\px{3}; \def\py{5}; \def\pz{2};
\coordinate (o) at (0,0,0);
\coordinate (p) at (\px,\py,\pz);
\coordinate (pxy) at (\px,\py,0);
\def\Arho{((\px)^2 + (\py)^2)^0.5};
\filldraw[bleudefrance] (p) circle(2pt)
node[right]{$(\rho, \phi, z)$};
%\draw (o) -- (p);
\pic[draw, dashed, "$\phi$", bleudefrance, angle eccentricity = 2, angle radius = 1cm] {angle = x--o--pxy};
%\draw pic[draw,fill=green!30,angle radius=1cm,"$\alpha$" shift={(6mm,1mm)}] {angle=x--o--pxy};
\draw[dashed, bleudefrance] (o) -- (pxy) node(r)[below, pos = 0.5]{$\rho$};
\filldraw[bleudefrance] (pxy) circle(1pt)
node[right]{$P'$};
\draw[dashed, bleudefrance] (pxy) -- (p);
\end{tikzpicture}
\end{figure}
that produces
I don't know how to draw these "solid planes"
\draw[->]
ing the three axes, then add the grey block which you can just draw using three 2D shapes. You don't really need a 3D environment for this (except you really want this).