XamDataChartの棒グラフ(ColumnSeries)の棒の色を条件に応じて色分けする場合は、
- ColumnSeries の IsCustomCategoryStyleAllowed プロパティに True を設定する。
- ColumnSeries の AssigningCategoryStyle イベントにイベントハンドラーを追加し、その中で色分けを実装する。
でできます。
<!-- MainWindow.xaml側 --> <ig:XamDataChart Width="300px" Height="300px"> ... <ig:XamDataChart.Series> ... <ig:ColumnSeries ... IsCustomCategoryStyleAllowed="True" AssigningCategoryStyle="series1_AssigningCategoryStyle"/> ... </ig:XamDataChart.Series> </ig:XamDataChart>
// MainWindow.xaml.cs 側 private void series1_AssigningCategoryStyle(object sender, Infragistics.Controls.Charts.AssigningCategoryStyleEventArgs args) { // 点数が 80 点以上は緑 if (((ScoreResult)args.GetItems(args.StartIndex, args.EndIndex)[0]).Score >= 80) { args.Fill = new SolidColorBrush(Colors.LightGreen); args.Stroke = new SolidColorBrush(Colors.Green); } // 点数が 80 点未満 50 点以上は黄色 else if (((ScoreResult)args.GetItems(args.StartIndex, args.EndIndex)[0]).Score >= 50) { args.Fill = new SolidColorBrush(Colors.LightYellow); args.Stroke = new SolidColorBrush(Colors.Yellow); } // 点数が 50 点未満は赤 else { args.Fill = new SolidColorBrush(Colors.Pink); args.Stroke = new SolidColorBrush(Colors.Red); } }
実行結果
関連ヘルプ ドキュメント、API リファレンス
- シリーズの強調表示
- IsCustomCategoryStyleAllowed プロパティ (CategorySeries)
- AssigningCategoryStyle イベント (CategorySeries)