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 リファレンス

 

Tagged:

製品について

Ultimate UI for WPF