Highcharts 报错#14 图表无法显示问题排查求助
Highcharts error #14 问题原因
Highcharts 错误码#14的定义为:传入的series.data数组中包含了非数字类型的无效值,Highcharts的数值轴要求对应的数据必须为纯数字格式,传入字符串、对象等不符合要求的类型时就会触发该报错,同时中断图表渲染。
报错位置定位
你提供的调用栈指向showChart方法的pricefeed文件第485行,该位置就是你给Highcharts配置项中series.data赋值的代码位置。
修复方案
- 优先对数据源做类型转换,遍历待传入的data数组,将所有字符串格式的数值通过
Number()或者parseFloat()方法转换为数字类型,示例代码如下:
// 原始数据示例:['12.3', '45.6', '78.9'] const processedData = rawData.map(item => Number(item)); // 转换后再传入Highcharts配置 Highcharts.chart('container', { series: [{ data: processedData }] })
- 如果数据中存在无效值(比如空字符串、特殊符号、带单位的数值等),要提前做清洗,无效值可以替换为
null(Highcharts会自动跳过null值渲染,留空对应点位):
const processedData = rawData.map(item => { // 先剥离单位等非数字字符,再转数字 const pureNumStr = item.toString().replace(/[^\d.-]/g, ''); const num = Number(pureNumStr); return isNaN(num) ? null : num; })
- 检查是否错误传入了完整对象数组而非单个数值数组,如果是需要取对象中对应数值字段传入,比如
rawData.map(item => item.value)。
内容的提问来源于stack exchange,提问作者user10459204
相关产品推荐
相关产品推荐

