docs: function assembleSeriesWithCategoryAxis(series) {
      var tables = [];
      zrUtil.each(series, function (group, key) {
          var categoryAxis = group.categoryAxis;
          var valueAxis = group.valueAxis;
          var valueAxisDim = valueAxis.dim;
  
          var headers = [' '].concat(zrUtil.map(group.series, function (series) {
              return series.name;
          }));
          var columns = [categoryAxis.model.getCategories()];
          zrUtil.each(group.series, function (series) {
              columns.push(series.getRawData().mapArray(valueAxisDim, function (val) {
                  return val;
              }));
          });
          // Assemble table content
          var lines = [headers.join(ITEM_SPLITER)];
          for (var i = 0; i < columns[0].length; i++) {
              var items = [];
              for (var j = 0; j < columns.length; j++) {
                  items.push(columns[j][i]);
              }
              lines.push(items.join(ITEM_SPLITER));
          }
          tables.push(lines.join('\n'));
      });
      return tables.join('\n\n' + BLOCK_SPLITER + '\n\n');
  }