extract_status_coords.js 1.4 KB

1234567891011121314151617181920212223242526272829303132
  1. const fs = require('fs');
  2. // 读取 mock 数据文件
  3. const data = JSON.parse(fs.readFileSync('src/mock/map_data_gaode.json', 'utf8'));
  4. const totalData = data.length;
  5. // 计算 chunkSize
  6. const normalStatusCount = 6;
  7. const abnormalStatusCount = 3;
  8. const chunkSize = Math.floor(totalData / (normalStatusCount + abnormalStatusCount));
  9. const maxAbnormalCount = 10;
  10. // 提取不同状态的坐标点
  11. const offlineData = data.slice(chunkSize * 6, Math.min(chunkSize * 7, chunkSize * 6 + maxAbnormalCount));
  12. const degradedData = data.slice(chunkSize * 7, Math.min(chunkSize * 8, chunkSize * 7 + maxAbnormalCount));
  13. const faultData = data.slice(chunkSize * 8, Math.min(chunkSize * 9, chunkSize * 8 + maxAbnormalCount));
  14. // 转换为坐标格式
  15. const offlineCoords = offlineData.map(item => [item['位置-经度'], item['位置-纬度']]);
  16. const degradedCoords = degradedData.map(item => [item['位置-经度'], item['位置-纬度']]);
  17. const faultCoords = faultData.map(item => [item['位置-经度'], item['位置-纬度']]);
  18. // 输出结果
  19. console.log('总数据量:', totalData);
  20. console.log('chunkSize:', chunkSize);
  21. console.log('\n离线状态坐标点:');
  22. console.log(JSON.stringify(offlineCoords, null, 2));
  23. console.log('\n降级状态坐标点:');
  24. console.log(JSON.stringify(degradedCoords, null, 2));
  25. console.log('\n故障状态坐标点:');
  26. console.log(JSON.stringify(faultCoords, null, 2));