在 C# 中获取最大柱形图的标签

get label of biggest column charts in c#

我制作了一个人群的年龄段图表。我想获取图表中最大和最小列的 label。如果有几个大的或小的相同的列,return 零。

我的代码:

Series series = new Series();
series.ChartType = SeriesChartType.Column;
series.Points.AddXY("15-20", age_set1);
series.Points.AddXY("21-25", age_set2);
series.Points.AddXY("26-30", age_set3);
series.Points.AddXY("31-35", age_set4);
series.Points.AddXY("36-45", age_set5);
series.Points.AddXY("46-55", age_set6);
series.Points.AddXY("56-65", age_set7);
chart1.Series.Add(series);

如果你的意思是 AxisLabel 你需要找到具有最大值的 DataPoint..:[=​​16=]

double max  = series.Points.Max(x => x.YValues[0]);
DataPoint dp = series.Points.Where(x => x.YValues[0] == max)
                            .First();
string label = dp.AxisLabel;

请注意,可能有几个点具有此值!如果你省略 First() 你可以得到一个 List<DataPoint> 然后你可以枚举..

如果你想 return "0" 你可以这样写:

List<DataPoint> dps = series.Points.Where(x => x.YValues[0] == max)
                                   .ToList();
string label = dps.Count == 1 ? dps.First().AxisLabel : "0";