code: function (init) {
              var series = this,
                chart = series.chart,
                renderer = chart.renderer,
                clipRect,
                markerClipRect,
                animation = series.options.animation,
                clipBox = series.clipBox || chart.clipBox,
                inverted = chart.inverted,
                sharedClipKey;
  
              // Animation option is set to true
              if (animation && !isObject(animation)) {
                  animation = defaultPlotOptions[series.type].animation;
              }
              sharedClipKey = ['_sharedClip', animation.duration, animation.easing, clipBox.height].join(',');
  
              // Initialize the animation. Set up the clipping rectangle.
              if (init) {
  
                  // If a clipping rectangle with the same properties is currently present in the chart, use that.
                  clipRect = chart[sharedClipKey];
                  markerClipRect = chart[sharedClipKey + 'm'];
                  if (!clipRect) {
                      chart[sharedClipKey] = clipRect = renderer.clipRect(
                        extend(clipBox, { width: 0 })
                      );
  
                      chart[sharedClipKey + 'm'] = markerClipRect = renderer.clipRect(
                        -99, // include the width of the first marker
                        inverted ? -chart.plotLeft : -chart.plotTop,
                        99,
                        inverted ? chart.chartWidth : chart.chartHeight
                      );
                  }
                  series.group.clip(clipRect);
                  series.markerGroup.clip(markerClipRect);
                  series.sharedClipKey = sharedClipKey;
  
                  // Run the animation
              } else {
                  clipRect = chart[sharedClipKey];
                  if (clipRect) {
                      clipRect.animate({
                          width: chart.plotSizeX
                      }, animation);
                  }
                  if (chart[sharedClipKey + 'm']) {
                      chart[sharedClipKey + 'm'].animate({
                          width: chart.plotSizeX + 99
                      }, animation);
                  }
  
                  // Delete this function to allow it only once
                  series.animate = null;
  
              }
          }
docs: Animate in the series