Javascript 在图表中使用逗号值作为数据点

Javascript 在图表中使用逗号值作为数据点,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,我正在使用HighCharts,我希望能够使用逗号值作为数据输入。 Highcharts的标准方法是使用以下数据点创建Piechart: data: [{ name: 'Microsoft Internet Explorer', y: 0.1 }, { name: 'Chrome', y: 0.5 }] 通过外部来源,我检索数据(荷兰注释而非美国注释),如下所示: d

我正在使用HighCharts,我希望能够使用逗号值作为数据输入。 Highcharts的标准方法是使用以下数据点创建Piechart:

data: [{
            name: 'Microsoft Internet Explorer',
            y: 0.1
        }, {
            name: 'Chrome',
            y: 0.5
        }]
通过外部来源,我检索数据(荷兰注释而非美国注释),如下所示:

data: [{
            name: 'Microsoft Internet Explorer',
            y: 0,1
        }, {
            name: 'Chrome',
            y: 0,5
        }]
这将不起作用,因为Highcharts无法处理此问题,因为它将y点作为两个值进行交互

有人知道如何使用逗号作为数据输入点的解决方案吗?也许可以使用格式化程序


有关演示,请参见此

您可以使用replace将逗号值替换为点值,并将其解析为浮点:

y: parseFloat(('1,5').replace(/\,/g, '.'))

您好,我不确定您的目标是什么,如果您希望在工具提示中看到,而不是在初始化图表之前设置下面的代码

为工作代码编辑

Highcharts.setOptions({
lang: {
    decimalPoint: ','
}
});
Highcharts.chart('container', {
chart: {
    plotBackgroundColor: null,
    plotBorderWidth: null,
    plotShadow: false,
    type: 'pie'
},
title: {
    text: 'Browser market shares January, 2015 to May, 2015'
},
series: [{
    name: 'Brands',        
    data: [{
        name: 'Microsoft Internet Explorer',
        y: parseFloat(('1,5').replace(/\,/g, '.'))
    }, {
        name: 'Chrome',
        y: parseFloat(('4').replace(/\,/g, '.'))
    }]
}]
});

我不确定这是否可行,因为那里的语句将被解释为逗号分隔的表达式(这将由于错误的对象形成而导致错误)。如果可能的话,试着从源代码中获取字符串形式的数据。然后,使用
String.replace
将逗号替换为点就很简单了。如果您是从一个JSON API获得此消息,那么该结构将不是有效的JSON(逗号分隔的值必须用引号括起来),我将向您发送JSFIDLE链接
Highcharts.setOptions({
lang: {
    decimalPoint: ','
}
});
Highcharts.chart('container', {
chart: {
    plotBackgroundColor: null,
    plotBorderWidth: null,
    plotShadow: false,
    type: 'pie'
},
title: {
    text: 'Browser market shares January, 2015 to May, 2015'
},
series: [{
    name: 'Brands',        
    data: [{
        name: 'Microsoft Internet Explorer',
        y: parseFloat(('1,5').replace(/\,/g, '.'))
    }, {
        name: 'Chrome',
        y: parseFloat(('4').replace(/\,/g, '.'))
    }]
}]
});