radarLayout.js 737 B

1234567891011121314151617181920212223242526272829
  1. function _default(ecModel) {
  2. ecModel.eachSeriesByType('radar', function (seriesModel) {
  3. var data = seriesModel.getData();
  4. var points = [];
  5. var coordSys = seriesModel.coordinateSystem;
  6. if (!coordSys) {
  7. return;
  8. }
  9. function pointsConverter(val, idx) {
  10. points[idx] = points[idx] || [];
  11. points[idx][i] = coordSys.dataToPoint(val, i);
  12. }
  13. for (var i = 0; i < coordSys.getIndicatorAxes().length; i++) {
  14. var dim = data.dimensions[i];
  15. data.each(dim, pointsConverter);
  16. }
  17. data.each(function (idx) {
  18. // Close polygon
  19. points[idx][0] && points[idx].push(points[idx][0].slice());
  20. data.setItemLayout(idx, points[idx]);
  21. });
  22. });
  23. }
  24. module.exports = _default;