Ejemplo n.º 1
0
        private double GetAxis(IChartItem item, bool x, double axisSize)
        {
            if (this._axisData == null)
            {
                return(double.NaN);
            }

            object obj = ChartHelper.GetChartItemAxisValue(item, x);

            if (item == null)
            {
                return(double.NaN);
            }

            double value = ChartHelper.ConvertToDouble(obj);

            if (!ChartHelper.DoubleHasValue(value))
            {
                return(double.NaN);
            }

            double result = axisSize * (value - this._axisData.MinValue) / this._axisData.Area;

            if (base.Orientation == AxisLabelOrientation.BottomToTop ||
                base.Orientation == AxisLabelOrientation.RightToLeft)
            {
                result = axisSize - result;
            }

            return(result);
        }
Ejemplo n.º 2
0
        private double GetAxis(IChartItem item, bool x, double axisSize)
        {
            if (this._axisData == null)
            {
                return(double.NaN);
            }

            object obj = ChartHelper.GetChartItemAxisValue(item, x);

            if (item == null)
            {
                return(double.NaN);
            }

            DateTime?value = ChartHelper.ConvertToDateTime(obj);

            if (value == null)
            {
                return(double.NaN);
            }

            //计算AxisOrientation.LeftToRight或TopToBottom
            double result = axisSize * (value.Value - this._axisData.MinValue).TotalMilliseconds / this._axisData.Area.TotalMilliseconds;

            if (base.Orientation == AxisLabelOrientation.RightToLeft ||
                base.Orientation == AxisLabelOrientation.BottomToTop)
            {
                result = axisSize - result;
            }

            return(result);
        }