2D Coordinate Plane

tikz-pgf

I want to sketch a plane to illustrate the relations between the Polar and the Cartesian coordinate systems, but I have no idea how to make it look good. I need some help, because all I've done is this:

\documentclass{standalone}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
    \draw[very thin,color=gray] (-3,-3) grid (3,3);
    \draw[->] (-3,0) -- (3,0) node[right] {$x$}; 
    \draw[->] (0,-3) -- (0,3) node[above] {$y$};
    \draw[->] (0,0) -- (2,1)            node[right] {$\vec{r}$}; 
\end{tikzpicture}

\end{document}

It's the closest I got.

here's how it should look like

enter image description here

All advises are fully appreciated.

Best Answer

\documentclass[tikz, border=1 cm]{standalone}
\usetikzlibrary{angles,quotes}
\begin{document}
\begin{tikzpicture}
%\draw[very thin,color=gray] (-3,-3) grid (3,3);
\coordinate (o) at (0,0);
\coordinate (r) at (2,1);
\coordinate (x) at (1,0);
\draw[->] (-3,0) -- (3,0) node[right] {$x$}; 
\draw[->] (0,-3) -- (0,3) node[above] {$y$};
\draw[->] (o) -- (r) node[right] {$\vec{r}$}; 
\draw[dashed] (o|-r) node[left]{$y$} -- (r) -- (r|-o) node[below]{$x$};
\pic[draw, "$\varphi$", angle eccentricity=1.5] {angle = x--o--r};
\node[below left] {$o$};
\end{tikzpicture}
\end{document}

Graph with axis and a single vector with angle