Exemplo n.º 1
0
 private void XAxis_ActualRangeChanged(object sender, ActualRangeChangedEventArgs e)
 {
     if (!e.IsScrolling && e.ActualMaximum != null)
     {
         e.VisibleMinimum = (double)e.ActualMaximum - 50d;
     }
 }
Exemplo n.º 2
0
 void NumericalAxis_ActualRangeChanged(object sender, ActualRangeChangedEventArgs e)
 {
     if (DataCollections[3].Count > 0)
     {
         e.VisibleMaximum = Convert.ToDouble(DataCollections[3].Max(dataList => dataList.Value) * 1.1);
         e.VisibleMinimum = Convert.ToDouble(DataCollections[3].Min(dataList => dataList.Value) * 0.9);
     }
 }
Exemplo n.º 3
0
 private void XAxis_ActualRangeChanged(object sender, ActualRangeChangedEventArgs e)
 {
     if (e.IsScrolling)
     {
         return;
     }
     e.VisibleMinimum = (double)e.ActualMaximum - 100d;
 }
Exemplo n.º 4
0
        /// <summary>
        /// Actual Range Event hooked here for the suppose of DateTimeAxis with Auto type errorbar calculation
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void ErrorBarSeries_ActualRangeChanged(object sender, ActualRangeChangedEventArgs e)
        {
            var dateTimeAxis = sender as DateTimeAxis;

            if (dateTimeAxis != null && dateTimeAxis.IntervalType == DateTimeIntervalType.Auto)
            {
                double minrange = ((DateTime)e.ActualMinimum).ToOADate();
                double maxrange = ((DateTime)e.ActualMaximum).ToOADate();
                for (int i = 0; i < Segments.Count; i++)
                {
                    var   chartSegment = Segments[i] as ErrorBarSegment;
                    Point point;
                    if (Type == ErrorBarType.Custom)
                    {
                        point = chartSegment.DateTimeIntervalCalculation(HorizontalCustomValues.Count > 0 ? HorizontalCustomValues[i] : 0, dateTimeAxis.ActualIntervalType);
                    }
                    else
                    {
                        point = chartSegment.DateTimeIntervalCalculation(_horizontalErrorValue, dateTimeAxis.ActualIntervalType);
                    }
                    if (minrange > point.X)
                    {
                        minrange = point.X;
                    }
                    if (maxrange < point.Y)
                    {
                        maxrange = point.Y;
                    }
                }

                var date = (DateTime)e.ActualMinimum;
                if (minrange < date.ToOADate())
                {
                    e.ActualMinimum = Convert.ToDouble(minrange).FromOADate();
                }
                date = (DateTime)e.ActualMaximum;
                if (maxrange > date.ToOADate())
                {
                    e.ActualMaximum = Convert.ToDouble(maxrange).FromOADate();
                }
            }
        }
 private void SecondaryAxis_ActualRangeChanged(object sender, ActualRangeChangedEventArgs e)
 {
     e.VisibleMaximum = Convert.ToDouble(e.ActualMaximum);
 }