points.js 990 B

12345678910111213141516171819202122232425262728293031
  1. function _default(seriesType, ecModel) {
  2. ecModel.eachSeriesByType(seriesType, function (seriesModel) {
  3. var data = seriesModel.getData();
  4. var coordSys = seriesModel.coordinateSystem;
  5. if (!coordSys) {
  6. return;
  7. }
  8. var dims = [];
  9. var coordDims = coordSys.dimensions;
  10. for (var i = 0; i < coordDims.length; i++) {
  11. dims.push(seriesModel.coordDimToDataDim(coordSys.dimensions[i])[0]);
  12. }
  13. if (dims.length === 1) {
  14. data.each(dims[0], function (x, idx) {
  15. // Also {Array.<number>}, not undefined to avoid if...else... statement
  16. data.setItemLayout(idx, isNaN(x) ? [NaN, NaN] : coordSys.dataToPoint(x));
  17. });
  18. } else if (dims.length === 2) {
  19. data.each(dims, function (x, y, idx) {
  20. // Also {Array.<number>}, not undefined to avoid if...else... statement
  21. data.setItemLayout(idx, isNaN(x) || isNaN(y) ? [NaN, NaN] : coordSys.dataToPoint([x, y]));
  22. }, true);
  23. }
  24. });
  25. }
  26. module.exports = _default;