Spherical harmonics discretized using HEALPix (either sampled at pixel centers, or avaraged over pixel areas) form a linearly independent system up to lmax = 3 nsmax -1. (from here: HEALPX anafast)

You need to setup IPython to display matplotlib plots. If you are using IPython console %matplotlib If IPython notebook %matplotlib inline ...

No way to do it right now with healpy There is an open issue on healpy about this: https://github.com/healpy/healpy/issues/19. An alternative is to plot a map directly using matplotlib: https://github.com/zonca/paperplots/blob/master/python/scripts/PlanckFig_map.py...

there is no direct relation between a pixel and and the spherical harmonic coefficients. you can imagine it like this: the map pixels are the data and the spherical harmonic functions you "fit" to the data. The spherical harmonic functions is a system of infinitely many (orthonormal) functions. Now you...

deg refers only to the angles in rot, not to the Rotator itself. The Rotator needs theta (colatitude) and phi (longitude) in radians, see: import healpy as hp import numpy as np r = hp.Rotator(coord = ['G', 'C']) ri = hp.Rotator(coord = ['C', 'G']) gz, ga = np.pi/2, 0. #...

Is it possible that you are using and old version of healpy? It looks like there used to be a limit of 2000 pixels that was removed few months ago, see: https://github.com/healpy/healpy/commit/2aaa5ba79db8d16aad036b387ff8771838d7768f...

It is due to symmetry. m=-1 and m=1 have the same transform, so HEALPix considers only m>=0. So for example lmax=2 we have: a00 a10 a11 a20 a21 a22 6 coefficients total. The length of the alm array is expected to be: mmax * (2 * lmax + 1 -...