私のカスタム Power BI コードでは、「データの色」オプションを使用しました。以下に示すように、データポイントをさらに使用するようプッシュしています。
this.dataPoints.push({
category: String(categories.values[index]),
value: Number(dataValues.values[index]),
color: getCategoricalObjectValue<Fill>(categories, index, 'colorSelector', 'fill', defaultColor).solid.color,
selectionId: this.host.createSelectionIdBuilder().withCategory(categories, index).createSelectionId()
})
getCategoricalObjectValue
関数の定義を含むヘルパー ファイルを使用しました。関数の定義は次のとおりです。
export function getCategoricalObjectValue<T>(category: DataViewCategoryColumn, index: number, objectName: string, propertyName: string, defaultValue: T): T {
let categoryObjects = category.objects;
if (categoryObjects) {
let categoryObject: DataViewObject = categoryObjects[index];
if (categoryObject) {
let object = categoryObject[objectName];
if (object) {
let property: T = object[propertyName];
if (property !== undefined) {
return property;
}
}
}
}
return defaultValue;
}
[書式] メニューからいつ色が変更されたかに関係なく、getCategoricalObjectValue
関数が常に未定義になるという問題に直面しています。category.objects
上記の問題を解決するために助けが必要です。私が使用したすべてのコードは、 https://github.com/Microsoft/PowerBI-visuals for Bar Chartにある例に基づいています