mschart中的前5个(MAX)值

时间:2012-08-13 22:50:49

标签: c# mschart

我使用MSchart创建了一个图表,如何在图表中显示mi数据的前5(MAX)值。

我的图表显示了18行,我只想显示按行(desc)排序的5行。

1 个答案:

答案 0 :(得分:1)

如果您的DataTable具有“x”和“y”列,并且您想要绘制y的5个最大值的x和y值,则可以使用DataView对DataTable进行排序,然后循环遍历五行并将它们放入图表中:

// assuming dt is your DataTable with an "x" and "y" column
var dv = new DataView(dt);
dv.Sort = "y desc";

for (int count = 0; count < 5; count++ )
{
    chart1.Series[0].Points.AddXY(dv[count][0], dv[count][1]);
}

修改

可能有一种更简单的方法可以做到这一点。只需像往常一样添加所有数据,然后使用DataManipulator:

chart1.DataManipulator.FilterTopN(5, "SeriesName");

我直到今天才使用它,但它似乎正是你所追求的。