Javascript 堆叠条形图中的排序值无效

Javascript 堆叠条形图中的排序值无效,javascript,html,jquery,highcharts,Javascript,Html,Jquery,Highcharts,我试图根据这个问题对堆叠条中的值进行排序 但排序后,序列中的数据似乎是错误的 用于排序的代码 seriesData.forEach(function (name) { if (name.data != undefined) { name.data.sort(function (a, b) { if (a < b) { return -1;

我试图根据这个问题对堆叠条中的值进行排序

但排序后,序列中的数据似乎是错误的

用于排序的代码

seriesData.forEach(function (name) {
              if (name.data != undefined) {
                name.data.sort(function (a, b) {

                  if (a < b) {
                    return -1;
                  } else if (a > b) {
                    return 1;
                  }
                  return 0;
                });
              }
            });
seriesData.forEach(函数(名称){
if(name.data!=未定义){
name.data.sort(函数(a,b){
if(ab){
返回1;
}
返回0;
});
}
});
这是我的全部源代码

JSFIDLE

var系列数据=[{
“名称”:(组件)”,
“数据”:[2039521123,0,0,4046613348,0,544280301,3865715691,0],
“显示”:2,
“堆栈”:“预测”,
“showInLegend”:false,
“点填充”:0,
“pointPlacement”:0
}, {
“名称”:“(基质)”,
“数据”:[18482326051109333700,0,0,1478070275,0,0,0],
“显示”:2,
“堆栈”:“预测”,
“showInLegend”:false,
“点填充”:0,
“pointPlacement”:0
}, {
“名称”:(模块)”,
“数据”:[05328223452625462,0,0,207607714,0103089669],
“显示”:2,
“堆栈”:“预测”,
“showInLegend”:false,
“点填充”:0,
“pointPlacement”:0
}, {
“名称”:(支持)”,
“数据”:[0,0,0,0,537829903,0,0],
“显示”:1,
“堆栈”:“预测”,
“showInLegend”:false,
“点填充”:0,
“pointPlacement”:0
}, {
“名称”:(组件)”,
“数据”:[11118985500,0473291564414216361483,03424327323216931478,0],
“显示”:1,
“堆栈”:“真实”,
“showInLegend”:false
}, {
“名称”:“(基质)”,
“数据”:[84951538003191092821,0,013153490000,0,0,0],
“显示”:3,
“堆栈”:“真实”,
“showInLegend”:false
}, {
“名称”:(模块)”,
“数据”:[0,13925175787,9837488553,0,0,370501758,0,338212038],
“显示”:1,
“堆栈”:“真实”,
“showInLegend”:false
}, {
“名称”:(支持)”,
“数据”:[0,0,0,0,4845038686,0,0],
“显示”:1,
“堆栈”:“真实”,
“showInLegend”:false
}, {
“名称”:“预测”,
“颜色”:“fe7c7c”,
“事件”:{}
}, {
“姓名”:“真实”,
“颜色”:“43d487”,
“事件”:{}
}];
var选项={
图表:{
类型:“列”
},
标题:{
文本:“堆叠柱形图”
},
xAxis:{
类别:['A','B','C','D','E','F','G','H']
},
亚克斯:{
分:0,,
标题:{
正文:“水果总消费量”
},
堆叠标签:{
启用:对,
风格:{
fontWeight:'粗体',
textOutline:false,
颜色:(//主题
Highcharts.defaultOptions.title.style&&
Highcharts.defaultOptions.title.style.color
)| |“灰色”
}
}
},
图例:{
对齐:'居中',
x:0,,
垂直排列:“底部”,
y:5,
backgroundColor:Highcharts.defaultOptions.legend.backgroundColor | | |“白色”,
边框颜色:“#CCC”,
边框宽度:0,
影子:错
},
工具提示:{
headerFormat:“{point.x}
”, pointFormat:“{series.name}:{point.y}
总计:{point.stackTotal}” }, 打印选项:{ 专栏:{ 堆叠:“正常”, 数据标签:{ 已启用:true }, 点填充:0.05, maxpointWidth:35, //分组填充:0.1, 边框宽度:0 }, 系列:{ maxpointWidth:35, 分组填充:0.36, //堆叠:“正常”, 数据标签:{ 格式化程序:函数(){ if(this.y==this.point.stackTotal | | this.y==0){ 返回“” } 返回this.series.name; }, 启用:对, //allowOverlap:是的, //对齐:“右”, 颜色:“#444”, textOutline:false, 影子:错, //x:-50, 风格:{ 字体大小:“8px”, textShadow:“0px” } }, //点填充:0.1, 点宽度:50, 分组填充:0.2, 堆叠:“正常”, //colorByPoint:对, //showInLegend:false } }, 系列:[] } seriesData.forEach(函数(名称){ if(name.data!=未定义){ name.data.sort(函数(a,b){ if(ab){ 返回1; } 返回0; }); } }); option.series=系列数据; var chart=Highcharts.chart('container',选项)


我不确定您想要实现什么-这就是没有排序的图表的样子-有点凌乱-这就是想要的输出-?我想从顶部较大的堆栈显示值,底部较小的堆栈显示值,但在排序之后,数据似乎发生了变化我也遵循这个解决方案,但在我的情况下不起作用请看这个简化的演示-对我来说,每个堆栈都已排序-顶部较大,底部较小。这是一个想要的结果吗?你的演示不是我的要求,我在附件中解释说我不确定你想要实现什么-这就是没有排序的图表的样子-有点混乱-这就是想要的输出-?我想从顶部较大,底部较小,但排序后,显示每个堆栈显示的值,数据似乎发生了变化我也遵循这个解决方案,但在我的情况下不起作用请看这个简化的演示-对我来说,每个堆栈都已排序-顶部较大,底部较小。这是一个想要的结果吗?你的演示不是我的要求,我在附上的图片中解释