I might be missing the obvious, but I can't figure out how the unit vectors in spherical coordinates combine to result in a generic vector. In cartesian coordinates, we would have for example $ \mathbf{r} = x \mathbf{\hat{i}} + y \mathbf{\hat{j}} + z \mathbf{\hat{k}}$. But in spherical coordinates, the position vector is actually a multiple of the unit vector $ \mathbf{\hat{e}_{r}} $, since $ \mathbf{r} = r \mathbf{\hat{e}_{r}} $ and not a linear combination of $\mathbf{\hat{e}_{\theta}} $, $ \mathbf{\hat{e}_{\phi}}$ and $ \mathbf{\hat{e}_{r}}$ (attached picture). Do we actually combine all 3 unit vectors in spherical coordinates to obtain a certain vector, or are $\mathbf{\hat{e}_{\theta}} $ and $ \mathbf{\hat{e}_{\phi}}$ just an indication of direction?

enter image description here

  • $\begingroup$ Are you asking how to get the magnitude of the vector from the polar coordinates? $\endgroup$ Feb 4, 2020 at 16:36
  • 4
    $\begingroup$ Vector is not only the position vector $\mathbf{r}$. If the position of a moving particle is given in spherical coordinates as function of time $\mathbf{r}[r(t),\phi(t),\theta(t)]$ then to express vectors like its velocity or its acceleration in these coordinates you need all unit vectors $\mathbf{\hat{e}_{r}},\mathbf{\hat{e}_{\theta}},\mathbf{\hat{e}_{\phi}}$. $\endgroup$
    – Frobenius
    Feb 4, 2020 at 17:03
  • 1
    $\begingroup$ You can express all other vectors as a linear combination of the unit vectors, except for position vectors. $\endgroup$ Feb 4, 2020 at 18:07
  • 2
    $\begingroup$ The unit vectors are non-constant, depending on position and its coordinates. For example $e_r$ at any given point is the vector pointing from the origin to the point,then converted to a unit vector. you have new unit vectors where you are. They form a basis according to which you can express a velocity or acceleration vector even though you don't need two of them for the position vector. $\endgroup$
    – R. Romero
    Feb 4, 2020 at 18:14
  • $\begingroup$ Maybe your problem becomes clearer when you see that $\mathbf{\hat{e}_{r}}$ is in general different for different vectors. Or, in other words, but maybe a bit more roundabout, if you were to express an arbitrary $\mathbf{r}'$ in terms of the basis that you associated with $\mathbf{r}$ (note the absence of primes, also I wouldn't bold the indices) $\mathbf{\hat{e}_{r}}$, $\mathbf{\hat{e}_{\phi}}$, $\mathbf{\hat{e}_{\theta}}$ then you would expect to see non-zero factors in front of all three basis vectors. $\endgroup$
    – tobi_s
    Feb 5, 2020 at 8:54

7 Answers 7


The curvilinear unit vectors are tricky in that their expression depends on which point the vector corresponds to. For example, the vector $\mathbf v=v_x\,\hat x$ can always be expressed in this way no matter where the vector "is located". However, if this vector $\mathbf v$ is located on the x-axis, then it only has a $\hat r$ component using spherical unit vectors. If $\mathbf v$ is located on the $-y$ axis, then it only has a $\hat\phi$ component using spherical unit vectors. Conversely, this means that saying a vector is, for example, $\mathbf v=v_r\,\hat r$ is not enough to determine the actual direction of the vector (we just know it is pointing away from or towards the origin, but not from where it is pointing). This is typically why it is recommended to convert to Cartesian unit vectors before performing vector integrals in general, as the Cartesian unit vectors do not have this dependence.

In general, if you have some vector $\mathbf v=v_x\,\hat x+v_y\,\hat y+v_z\,\hat z$ located at the spatial point $(x,y,z)$, then we can transform the representation using the following transformations: $$\hat x=\sin\theta\cos\phi\,\hat r+\cos\theta\cos\phi\,\hat\theta-\sin\phi\,\hat\phi$$ $$\hat y=\sin\theta\sin\phi\,\hat r+\cos\theta\sin\phi\,\hat\theta+\cos\phi\,\hat\phi$$ $$\hat z=\cos\theta\,\hat r-\sin\theta\,\hat\theta$$

where $$\theta=\tan^{-1}\left(\frac{\sqrt{x^2+y^2}}{z}\right)$$ $$\phi=\tan^{-1}\left(\frac{y}{x}\right)$$

Do we actually combine all 3 unit vectors in spherical coordinates to obtain a certain vector...

Yes, you just need to also specify where the vector is. In other words, saying $\mathbf v=v_r\,\hat r+v_\theta\,\hat\theta+v_\phi\,\hat\phi$ is not sufficient to specify the vector.

  • $\begingroup$ Thank you for your answer! But something is still not clear to me: if $\hat{r}$ is a function of ϕ and θ, isn't the position information already implicit in $\hat{r}$? Why do we even need $\hat{\theta}$ and $\hat{\phi}$? Shouldn't the vector then be written just as $\mathbf{v} = v_r\mathbf{\hat{r}(\theta,\phi)}$? $\endgroup$
    – paulo
    Feb 5, 2020 at 0:41
  • $\begingroup$ @paulo I'm not sure I understand. What you seem to be proposing is that all vectors should be radial? $\endgroup$ Feb 5, 2020 at 1:36
  • $\begingroup$ I think I am mixing everything up now... I guess I was thinking 'position' vector when I wrote this reply (a bit tired already). I understand now, sorry for the confusion $\endgroup$
    – paulo
    Feb 5, 2020 at 1:52

Conceptionally, there's a difference between points and vectors. Given a set of coordinates, each point carries around its own frame induced by the coordinate lines, a basis of the vector space of tangent vectors rooted at that point.

In flat Euclidean space, any such frame extends globally, and we can even use it to describe points in terms of position vectors relative to some chosen point of origin. In that case, we could just fix one frame to describe everything, but even when that's possible, it can still make sense to instead phrase things in terms of the different frames that change from point to point. There's value in, say, having an 'up' direction that always points away from the center of the earth, no matter where you are.


You're right to state that in spherical coordinates, you can represent a vector as just $r\mathbf{\hat{e}_{r}}$.

The angular quantities come in when you are either attempting to understand what $\mathbf{\hat{e}_{r}}$ is in terms of another basis, say a Cartesian one—there the angles show up as you'd expect—or if you're calculating rates of change of a vector in spherical coordinates, in which case the derivatives of $\mathbf{\hat{e}_{r}}$ will have components in the $\mathbf{\hat{e}_{\theta}}$ and $\mathbf{\hat{e}_{\phi}}$ directions.


A vector space is a space that fulfills the vector axioms, closure under vector addition and scalar multiplication being the ones pertinent to this case. With all of the vector space axioms, any finite dimensional vector space has a basis set such that every vector can be written as a linear combination of the basis vectors. This means that given a particular basis, every vector can be represented by a tuple consisting of the coefficients of the linear combination.

This is an example of a coordinate system. In general, a coordinate system is a method of assigning to each point a tuple of numbers. Taking coefficients of a linear combination is a special case of a coordinate system. In general, coordinate systems need not be built off of vector spaces.

The spherical coordinate system is not based on linear combination. The spherical coordinates of u+v will not be sum of the individual coordinates. Spherical coordinates are not based on combining vectors like rectilinear coordinates are. Each point's coordinates are calculated separately.

Also, your reference to "the three unit vectors" suggests a misunderstanding. Given a particular basis, the vectors in the basis are called elementary vectors. In three dimensions, there are three elementary vectors, which are unit vectors. There are an infinite number of unit vectors.


In Cartesian coordinates, the unit vectors are constants. In spherical coordinates, the unit vectors depend on the position. Specifically, they are chosen to depend on the colatitude and azimuth angles. So, $\mathbf{r} = r \hat{\mathbf{e}}_r(\theta,\phi)$ where the unit vector $\hat{\mathbf{e}}_r$ is a function of the two angles. The directions $\hat{\mathbf{e}}_\theta(\theta,\phi)$ and $\hat{\mathbf{e}}_\phi(\theta,\phi)$ are also functions of the two angles. In terms of the Cartesian unit vectors, the spherical unit vectors can be given as:

$\hat{\mathbf e}_r(\theta,\phi) = \sin \theta \cos \phi \,\hat{\mathbf e}_x + \sin \theta \sin \phi \,\hat{\mathbf e}_y + \cos \theta \,\hat{\mathbf e}_z,$

$\hat{\mathbf e}_\theta(\theta,\phi) = \cos \theta \cos \phi \,\hat{\mathbf e}_x + \cos \theta \sin \phi \,\hat{\mathbf e}_y - \sin \theta \,\hat{\mathbf e}_z,$

$\hat{\mathbf e}_\phi(\theta,\phi) = -\sin \phi \,\hat{\mathbf e}_x + \cos \phi \,\hat{\mathbf e}_y$

For each set of angles $(\theta,\phi)$, the three vectors form a mutually perpendicular basis, as shown in the image below by Wikipedia user Ag2gaeh (CC BY-SA 4.0).

by Wikipedia user Ag2gaeh (CC BY-SA 4.0)[3]


I think the problem comes from confusing the radial unit vector for spherical coordinates and a trajectory vector. They are different, to build the second one you can use the $\hat{r}$ only if the path is radial, but it can have another components if the trayectory is not.


In spherical coordinates, the $\theta$ and $\phi$ are like latitude and longitude on the surface of the Earth. At a given point, if we want to express a "south pointing direction" tangent to the surface, we'd use the $\theta$ basis vector. Likewise, an "east pointing direction" would be expressed using the $\phi$ basis vector. The difficulty you have with "position vectors" is that they are always "from the origin". Better to think of displacement vectors, e.g. the difference between two position vectors on a trajectory. Then all three spherical basis vectors are used to express the direction and length of the displacement from the initial point.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.