Repository: sunpy/sunpy

Issue:
Some coordinate frames aren't well defined
I'm trying to understand some of the coordinate frames build in to SunPy, but some of the documentation doesn't give enough information to understand how the frames are defined:

- [x] [HeliographicCarrington](http://docs.sunpy.org/en/latest/api/sunpy.coordinates.frames.HeliographicCarrington.html#sunpy.coordinates.frames.HeliographicCarrington):
Not clear what the zero-longitude is defined as. ("defined using an offset which is a time-dependent scalar value." makes no sense to me, because the offset isn't defined)
- [x] [Heliocentric](http://docs.sunpy.org/en/latest/api/sunpy.coordinates.frames.Heliocentric.html#sunpy.coordinates.frames.Heliocentric):
I think the origin is at the center of the Sun, but which direction do the coordinate axes point in?


Discussion:
@dstansby I am painfully aware of the deficiencies in the SunPy docs with respect to the definitions of the frames. I should really get back to working on my documentation of that.

To answer your questions:

1. The offset in heliographic is the longitude offset 0-306 deg based on the time in the current carrington rotation. i.e. it's 0 every 27 days.

2. Yes, the origin is at the centre of the Sun and the the "x" axis points towards the obsever. (with the z axis being 90 degrees offset to x in the same plane, and the y axis being perpendicular to the other two.)

Resolving patch:
diff --git a/sunpy/coordinates/frames.py b/sunpy/coordinates/frames.py
--- a/sunpy/coordinates/frames.py
+++ b/sunpy/coordinates/frames.py
@@ -121,11 +121,17 @@ def __init__(self, *args, **kwargs):
 
 class HeliographicCarrington(HeliographicStonyhurst):
     """
-    A coordinate or frame in the Carrington Heliographic
-    system.
-    This frame differs from the Stonyhurst version in the
-    definition of the longitude, which is defined using
-    an offset which is a time-dependent scalar value.
+    A coordinate or frame in the Carrington Heliographic system.
+
+    - The origin is the centre of the Sun
+    - The z-axis is aligned with the Sun's north pole
+    - The x and y axes rotate with a period of 25.38 days. The line of zero
+      longitude passed through the disk centre as seen from Earth at
+      21:36 on 9th Nov 1853.
+
+    This frame differs from the Stonyhurst version in the definition of the
+    longitude, which is defined using the time-dependant offset described
+    above.
 
     Parameters
     ----------
@@ -139,8 +145,7 @@ class HeliographicCarrington(HeliographicStonyhurst):
         The latitude for this object (``lon`` must also be given and
         ``representation`` must be None).
     radius: `astropy.units.Quantity` object, optional, must be keyword.
-        This quantity holds the radial distance. If not specified, it is, by
-        default, the solar radius. Optional, must be keyword.
+        This quantity holds the radial distance. Defaults to the solar radius.
     obstime: SunPy Time
         The date and time of the observation, used to convert to heliographic
         carrington coordinates.
@@ -186,11 +191,16 @@ class HeliographicCarrington(HeliographicStonyhurst):
 class Heliocentric(BaseCoordinateFrame):
     """
     A coordinate or frame in the Heliocentric system.
-    This frame may either be specified in Cartesian
-    or cylindrical representation.
-    Cylindrical representation replaces (x, y) with
-    (rho, psi) where rho is the impact parameter and
-    psi is the position angle in degrees.
+
+    - The origin is the centre of the Sun
+    - The z-axis points from the centre of the Sun to the observer.
+    - The y-axis is perpendicular to the z-axis, and lies in the plane that
+      contains the z-axis and the solar rotation axis, pointing towards the
+      Sun's north pole.
+
+    This frame may either be specified in Cartesian or cylindrical
+    representation. Cylindrical representation replaces (x, y) with (rho, psi)
+    where rho is the impact parameter and psi is the position angle in degrees.
 
     Parameters
     ----------
@@ -204,8 +214,9 @@ class Heliocentric(BaseCoordinateFrame):
         Y-axis coordinate, optional, must be keyword.
     z: `Quantity` object. Shared by both representations.
         Z-axis coordinate, optional, must be keyword.
-    observer: `~sunpy.coordinates.frames.HeliographicStonyhurst`
-        The coordinate of the observer in the solar system.
+    observer: `~sunpy.coordinates.frames.HeliographicStonyhurst`, optional
+        The coordinate of the observer in the solar system. Defaults to the
+        Earth.
     obstime: SunPy Time
         The date and time of the observation, used to convert to heliographic
         carrington coordinates.


Test patch: