1. A computer-readable medium having computer-executable instructions stored thereon that, when executed, cause an apparatus to: determine a number of three-dimensional surfaces to be displayed in a programming guide, each three-dimensional surface being associated with at least one structure attribute; determine a number of data elements to be included in the programming guide, each data element being associated with at least one information attribute; select, based on the determined number of three-dimensional surfaces and the determined number of data elements, a mapping technique from a plurality of mapping techniques; display one or more three-dimensional surfaces corresponding to the determined number of three-dimensional surfaces to be displayed; and display one or more data elements corresponding to the determined number of data elements to be included in the programming guide, the one or more data elements being mapped to the one or more three-dimensional surfaces according to the selected mapping technique.