我正在尝试使用Highcharts xrange chartType实现时间轴小部件
基本结构是YAxis类别:代理名称,在线/离线/中断/等的X轴时间轴数据
我发现YAxis标签与每个类别的实际Bar都不对齐-我在网上找到的两个解决方案是使用pointPadding / groupPadding,这导致条太细以至于不可见。另一种方法是定义pointWidth 20以确保您可以看到每个条形,但是没有保护重叠的条形... LAME,但是通过添加YAxis滚动条来解决-但是,这不能解决有时标签在条形之间的中间问题等等
在jsfiddle bc中很难复制,它是静态大小的图,而不是在我的产品中动态大小的图,但这是我当前状态https://jsfiddle.net/bj7y3dwv/5/#run
的一个很好的例子'yAxis': {
'categories': agents,
'min': 0,
'max': agents.length < maxY ? agents.length - 1 : maxY,
'scrollbar': {
'enabled': true,
'showFull': false,
'barBackgroundColor': '#ccc',
'barBorderRadius': 7,
'barBorderWidth': 0,
'buttonBorderWidth': 0,
'buttonArrowColor': 'transparent',
'buttonBackgroundColor': 'transparent',
'rifleColor': 'transparent',
'trackBackgroundColor': '#F3F3F3',
'trackBorderColor': 'transparent',
'height': 10,
'minWidth': 25
},
'reversed': true,
'tickmarkPlacement': 'on',
'gridLineColor': 'transparent'
},
答案 0 :(得分:0)
只需设置dataLabels.overflow = 'allow'
。默认值为“ justify”,它使标签在打印区域内对齐。
代码:
series: [{
data: [{
...
}],
dataLabels: {
enabled: true,
overflow: 'allow',
crop: true
}
}]
演示:
答案 1 :(得分:0)
这与plotOptions分组为false有关,这阻止了highcharts为每个系列在每个类别中保留空间