public override void UpdateVisual()
        {
            CoordinateSystem coordinateSystem = Drawing.CoordinateSystem;
            var xPoints = coordinateSystem.GetVisibleXPoints();
            var yPoints = coordinateSystem.GetVisibleYPoints();

            int count = xPoints.Count() + yPoints.Count();

            if (Lines.Count < count)
            {
                AddNewLines(count - Lines.Count, coordinateSystem);
            }
            else if (Lines.Count > count)
            {
                RemoveExcessLines(Lines.Count - count, coordinateSystem);
            }

            int i = 0;

            foreach (var x in xPoints)
            {
                MoveLineX(Lines[i++], x, coordinateSystem);
            }
            foreach (var y in yPoints)
            {
                MoveLineY(Lines[i++], y, coordinateSystem);
            }
        }