| 1015 | |
| 1016 | // 辅助函数:转换散点图数据 |
| 1017 | function transformScatterData(datasets) { |
| 1018 | return datasets.map(dataset => { |
| 1019 | if (!dataset.data || !Array.isArray(dataset.data)) { |
| 1020 | return { |
| 1021 | ...dataset, |
| 1022 | data: [] |
| 1023 | }; |
| 1024 | } |
| 1025 | |
| 1026 | return { |
| 1027 | ...dataset, |
| 1028 | data: dataset.data.map((value, index) => { |
| 1029 | // 确保value是一个有效的数值 |
| 1030 | const y = parseFloat(value); |
| 1031 | if (isNaN(y)) { |
| 1032 | return { x: index + 1, y: 0 }; |
| 1033 | } |
| 1034 | return { x: index + 1, y: y }; |
| 1035 | }) |
| 1036 | }; |
| 1037 | }); |
| 1038 | } |
| 1039 | |
| 1040 | // 辅助函数:转换气泡图数据 |
| 1041 | function transformBubbleData(datasets) { |