in src/globemap.ts [471:509]
private static createDataPointForEnumeration(dataPointsParams: { dataView, seriesIndex, source, visualHost, catIndex, metaData, colors, colorHelper }): GlobeMapSeriesDataPoint {
const columns: DataViewValueColumnGroup = dataPointsParams.dataView.categorical.values.grouped()[dataPointsParams.seriesIndex];
const values: DataViewValueColumns = <DataViewValueColumns>columns.values;
let sourceForFormat: DataViewMetadataColumn = dataPointsParams.source;
let nameForFormat: PrimitiveValue = dataPointsParams.source.displayName;
if (dataPointsParams.source.groupName !== undefined) {
sourceForFormat = values.source;
nameForFormat = dataPointsParams.source.groupName;
}
const label: string = valueFormatter.format(nameForFormat, valueFormatter.getFormatString(sourceForFormat, null));
const categoryColumn: DataViewCategoryColumn = dataPointsParams.dataView
&& dataPointsParams.dataView.categorical
&& dataPointsParams.dataView.categorical.categories
&& dataPointsParams.dataView.categorical.categories[0];
const identity: ISelectionId =
dataPointsParams.visualHost.createSelectionIdBuilder()
.withCategory(categoryColumn, dataPointsParams.catIndex)
.createSelectionId();
const category: string = `${converterHelper.getSeriesName(dataPointsParams.source)}`;
const objects: {} = categoryColumn && categoryColumn.objects;
const color: string =
objects && objects[dataPointsParams.catIndex] && objects[dataPointsParams.catIndex].dataPoint ?
objects[dataPointsParams.catIndex].dataPoint.fill.solid.color : dataPointsParams.metaData && dataPointsParams.metaData.objects
? dataPointsParams.colorHelper.getColorForMeasure(dataPointsParams.metaData.objects, "")
: dataPointsParams.colors.getColor(dataPointsParams.seriesIndex).value;
return {
label: label,
identity: identity,
category: category,
color: color,
selected: null
};
}