The hemoglobin molecule is made up of four polypeptide chains (Alpha 1, Beta 1 , Alpha 2, Beta 2), noncovalently bound to each other. There are four heme-iron complexes.

Each chain holds a heme group containing one Fe++ atom.

The heme-iron complexes are colored red because they give hemoglobin its red color.

Now the heme molecules have been colored by element.
(Hydrogens are not resolved by x-ray crystallography, from which this structure was obtained.)

Spacefill view of atoms that make up a single heme molecule.

Here is how iron is attached to the rest of the heme molecule.

An elemental oxygen molecule binds to the ferrous iron atom in the lungs where oxygen is abundant, and is released later in tissues which need oxygen.

The position of bound elemental oxygen in one chain of hemoglobin.

Space occupied by the heme bound oxygen in the polypeptide chain.

A histidine nitrogen binds to the iron, helping to anchor its position. The hydrophilic propanoate groups of heme face the water at the surface of the protein, while the hydrophobic portions of the heme are buried among the hydrophobic amino acids of the protein.

A spacefill view (with the exception of the heme molecule) of the hemoglobin polypeptide chain.