code: function (chart, options) {
              var series = this,
                eventType,
                events,
                chartSeries = chart.series,
                sortByIndex = function (a, b) {
                    return pick(a.options.index, a._i) - pick(b.options.index, b._i);
                };
  
              series.chart = chart;
              series.options = options = series.setOptions(options); // merge with plotOptions
              series.linkedSeries = [];
  
              // bind the axes
              series.bindAxes();
  
              // set some variables
              extend(series, {
                  name: options.name,
                  state: NORMAL_STATE,
                  pointAttr: {},
                  visible: options.visible !== false, // true by default
                  selected: options.selected === true // false by default
              });
  
              // special
              if (useCanVG) {
                  options.animation = false;
              }
  
              // register event listeners
              events = options.events;
              for (eventType in events) {
                  addEvent(series, eventType, events[eventType]);
              }
              if (
                (events && events.click) ||
                (options.point && options.point.events && options.point.events.click) ||
                options.allowPointSelect
              ) {
                  chart.runTrackerClick = true;
              }
  
              series.getColor();
              series.getSymbol();
  
              // Set the data
              each(series.parallelArrays, function (key) {
                  series[key + 'Data'] = [];
              });
              series.setData(options.data, false);
  
              // Mark cartesian
              if (series.isCartesian) {
                  chart.hasCartesianSeries = true;
              }
  
              // Register it in the chart
              chartSeries.push(series);
              series._i = chartSeries.length - 1;
  
              // Sort series according to index option (#248, #1123, #2456)
              stableSort(chartSeries, sortByIndex);
              if (this.yAxis) {
                  stableSort(this.yAxis.series, sortByIndex);
              }
  
              each(chartSeries, function (series, i) {
                  series.index = i;
                  series.name = series.name || 'Series ' + (i + 1);
              });
  
          }
docs: each point's x and y values are stored in this.xData and this.yData