public virtual void PrepareAxes()
{
for (var index = 0; index < AxisX.Count; index++)
{
var xi = AxisX[index];
xi.TopLimit = double.IsNaN(xi.MaxValue) ?
View.ActualSeries
.Where(series => series.Values != null && series.ScalesXAt == index)
.Select(series => series.Values.GetTracker(series).XLimit.Max)
.DefaultIfEmpty(0).Max() : xi.MaxValue;
xi.BotLimit = double.IsNaN(xi.MinValue) ?
View.ActualSeries
.Where(series => series.Values != null && series.ScalesXAt == index)
.Select(series => series.Values.GetTracker(series).XLimit.Min)
.DefaultIfEmpty(0).Min() : xi.MinValue;
}
for (var index = 0; index < AxisY.Count; index++)
{
var yi = AxisY[index];
yi.TopLimit = double.IsNaN(yi.MaxValue) ?
View.ActualSeries
.Where(series => series.Values != null && series.ScalesYAt == index)
.Select(series => series.Values.GetTracker(series).YLimit.Max)
.DefaultIfEmpty(0).Max() : yi.MaxValue;
yi.BotLimit = double.IsNaN(yi.MinValue) ?
View.ActualSeries
.Where(series => series.Values != null && series.ScalesYAt == index)
.Select(series => series.Values.GetTracker(series).YLimit.Min)
.DefaultIfEmpty(0).Min() : yi.MinValue;
}
}