图表的数据源过滤

时间:2013-03-06 22:52:50

标签: c# visual-studio-2010 graph datasource

我有一个看起来像这样的表:

id | group | time_stamp | value
---|-------|------------|------
01 | 1     | 02:30      | 8
02 | 2     | 03:00      | 9
03 | 2     | 03:00      | 14
04 | 1     | 03:30      | 10
05 | 2     | 04:00      | 12

我想在折线图中显示第1组的值。我创建了一个数据源和一个图形。 XValueMember是time_stamp,图表系列的YValueMember是value。现在图表基于所有记录,我完全理解。但是,我如何只选择某个组的记录?我想制作一个按钮来切换组。

1 个答案:

答案 0 :(得分:0)

您可以通过执行以下操作将数据转换为所需的格式。

var lineGraphs = data
    .GroupBy(x => x.group)
    .Select(g => new
    {
        Group = g.Key,
        Points = g
            .Select(x => new { X = x.time_stamp, Y = x.value })
            .OrderBy(p => p.X)
            .ToList()
    })
    .ToList();

命名空间System.Windows.Forms.DataVisualization则具有交互式图形控件,可为您提供显示此类数据的基本功能。