or
var dataItem = (Telerik.Reporting.Processing.DataItem)sender;
var list = dataItem.DataSource
as
IList<InclinationProfileItemModel>;
if
(list ==
null
)
return
;
list =
new
List<InclinationProfileItemModel>(list.OrderBy(l => l.InclinationInDistanceUnitToStart));
var minY = list.First().InclinationInDistanceUnitToStart;
var maxY = list.Last().InclinationInDistanceUnitToStart;
var inclMax = Math.Abs(maxY - minY);
if
(inclMax < 1)
this
.UnitToStartLineSeriesGraphAxisY.Scale =
new
NumericalScale
{
MajorStep = 0.25,
MinorStep = 0.25,
Minimum = Math.Min(0, Math.Floor(minY)),
Maximum = Math.Max(1, Math.Ceiling(maxY))
};
else
if
(inclMax < 5)
this
.UnitToStartLineSeriesGraphAxisY.Scale =
new
NumericalScale
{
MajorStep = 1,
MinorStep = 1,
Minimum = Math.Min(0, Math.Floor(minY)),
Maximum = Math.Max(1, Math.Ceiling(maxY))
};
else
if
(inclMax < 20)
this
.UnitToStartLineSeriesGraphAxisY.Scale =
new
NumericalScale
{
MajorStep = 5,
MinorStep = 5,
Minimum = Math.Min(0, Math.Floor(minY)),
Maximum = Math.Max(1, Math.Ceiling(maxY))
};
else
this
.UnitToStartLineSeriesGraphAxisY.Scale =
new
NumericalScale
{
MajorStep = 10,
MinorStep = 10,
Minimum = Math.Min(0, Math.Floor(minY)),
Maximum = Math.Max(1, Math.Ceiling(maxY))
};