问题
当我在 highcharts 条形图中只有 1 个系列与多个用户一起显示时,它显示在彼此之上而不是彼此相邻。下面是正在使用的代码。请指导我正确的方向。
此外,如果我在任何用户的系列中再添加 1 个日期,它会正确显示,但这不是解决方案,因为我的图表上总是有 1 个日期。
JS小提琴链接:http: //jsfiddle.net/bhats1989/b33mN/3/
代码
$(function () {
                           $('#team_container').highcharts({
                chart: {
                    type: 'bar',
                    //inverted: true,
                    renderTo: 'container',
                    zoomType: 'xy',
                    events: {
                    },
                    zIndex: 5
                },
                title: {
                    text: 'Team Activity Game',
                    x: -20 //center
                },
                subtitle: {
                     text: 'Click and drag in the plot area to zoom in and scroll',
                     x: -25 //center
                 },
                xAxis: {
                  title: {
                       text: 'Week Ending'
                      },
                    type: 'datetime',
                    maxZoom: 24 * 3600000, // Two days
                    labels: {
                         rotation: -45,
                         align: 'right',
                         formatter: function() {
                           return Highcharts.dateFormat('%d/%m/%Y', this.value);
                         }
                     },
                    tickInterval: 24 * 3600 * 1000,
                },
                plotOptions: {
                    series: {
                        events: {
                          legendItemClick: function(event) {
                            if (!this.visible)
                                return true;
                            var seriesIndex = this.index;
                            var series = this.chart.series;
                            var j = series.length;
                            for (var i = 0; i < series.length; i++)
                            {
                                if (series[i].index != seriesIndex)
                                {
                                  series[i].visible ? series[i].hide() : series[i].show();
                                  series[j-1].hide();
                                } 
                            }
                            return false;
                          }
                        }
                    }
                  },
                yAxis: {
                plotBands: [{ // mark the weekend
                    color: '#f4e3e7',
                    from: 0,
                    to: 15,
                    events: {
                        mouseover: function(e) {                            
                           team_tooltipUpdate();
                        }
                    },
                    zIndex: 3
                  }],
                   gridLineColor: null,
                  title: {
                      text: 'Distance (kms)'
                     },
                     plotLines: [{
                     color: '#FF0000',
                     width: 2,
                     value: 15                  }]
                },
                tooltip: {
                    useHTML: true,
                    formatter: team_myFormatter
                },
                legend: {
                    layout: 'vertical',
                    align: 'right',
                    verticalAlign: 'top',
                    x: -10,
                    y: 100,
                    borderWidth: 0
                },
                series: [
                                                 {
                         name: 'Mark',
                         data: []
                         },                                              {
                         name: 'Joe',
                         data: [[Date.parse('7/28/2013 UTC'), 7.2954706108315 ]]
                         },                                              {
                         name: 'Max',
                         data: [[Date.parse('7/28/2013 UTC'), 25.668099736872 ]]
                         },                                              {
                         name: 'John',
                         data: [[Date.parse('7/28/2013 UTC'), 16.576099736872 ]]
                         }                                               ,{
                        name: 'yellowline',
                        visible: false,
                        showInLegend: false,
                        data: []
                         }
                    ]
               });
                          });
            function team_tooltipUpdate(){          
              var chart = $('#team_container').highcharts();
              chart.tooltip.refresh(chart.series[4].points[0]);     
            }
            function team_myFormatter(){
                var game_parameter = 'running';
                if(this.series.name == 'yellowline'){
                   return '<span style="color:Red;"><b>Danger Area</b></div>';
                }else{
                    if(game_parameter == 'running'){
                        return '<span style="color:'+ this.series.color + '"><b>'+ this.series.name +'</b><br/>'+
                        Highcharts.dateFormat('%d\/%m\/%Y', this.x) +': '+ parseFloat(this.y).toFixed(2) +' kms</span>';
                    }else if(game_parameter == 'steps'){
                        return '<span style="color:'+ this.series.color + '"><b>'+ this.series.name +'</b><br/>'+
                        Highcharts.dateFormat('%d\/%m\/%Y', this.x) +', No. of Steps: '+ parseFloat(this.y).toFixed(2) +'</span>';
                    }else if(game_parameter == 'floors'){
                        return '<span style="color:'+ this.series.color + '"><b>'+ this.series.name +'</b><br/>'+
                        Highcharts.dateFormat('%d\/%m\/%Y', this.x) +', No. of Floors: '+ parseFloat(this.y).toFixed(2) +'</span>';
                    }else if(game_parameter == 'cycling'){
                        return '<span style="color:'+ this.series.color + '"><b>'+ this.series.name +'</b><br/>'+
                        Highcharts.dateFormat('%d\/%m\/%Y', this.x) +': '+ parseFloat(this.y).toFixed(2) +' kms</span>';
                    }else if(game_parameter == 'heartrate'){
                        return '<span style="color:'+ this.series.color + '"><b>'+ this.series.name +'</b><br/>'+
                        Highcharts.dateFormat('%d\/%m\/%Y', this.x) +': '+ parseFloat(this.y).toFixed(2) +' BPM</span>';
                    }                
                }
            }