Я строю Microsoft System.Web.UI.DataVisualization.Charting.Chart с тремя сериями (два столбца и линия наложения). Похоже, что верхняя граница оси Y вычисляется автоматически на основе диапазона данных в первом ряду, добавленном на диаграмму. Впоследствии любая серия не будет отображаться, если ее значение y больше, чем значение y первой серии. В этом случае я хотел бы использовать максимальное значение из любой серии.
Серии добавляются на диаграмму с помощью общего метода:
foreach (var s in model.Series)
{
var chartSeries = new Series(s.Title);
chartSeries.ChartType = s.Type;
chartSeries.Color = s.DrawColour;
// add the data to the series
foreach (DataRow row in data.Tables[0].Rows)
{
chartSeries.Points.AddXY(row[model.XAxis.DataColumnName], row[s.ColumnName]);
}
// does the series name come from a column? if not use the plain text. if the column has a caption use it, otherwise the column name.
chartSeries.Name = data.Tables[0].Columns.Contains(s.Title) ? String.IsNullOrEmpty(data.Tables[0].Columns[s.Title].Caption) ? data.Tables[0].Columns[s.Title].Caption : data.Tables[0].Columns[s.Title].ColumnName : s.Title;
chart.Series.Add(chartSeries);
}
Если я изменю порядок, в котором ряды добавляются к диаграмме, то область графика будет правильной, однако ряды строк будут находиться за столбцами.
Любые идеи? Спасибо.