我用 MSchart 做了一个图表,如何在图表中显示 mi 数据表的前 5 个(MAX)值。
我的图表显示 18 行我只想显示按值排序的 5 行(desc)。
如果您有一个包含“x”和“y”列的 DataTable,并且您想要绘制 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");
直到今天我才使用它,但它似乎完全符合您的要求。