我正在尝试为我的Highchart柱状图设置最大列数,如下所示
xAxis: {
categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas', 'Kiwi'],
tickAmount: 3
}阅读文档,它说使用tickAmount来设置您的轴数。
由于空间限制,我希望我的图表仅显示xAxis中的三个。这需要动态发生,因此不能从数组中删除项。
这是我的jsfidddle http://jsfiddle.net/rjayako/mt4x95rd/1/
任何帮助都将不胜感激。
发布于 2017-11-08 05:37:28
从tickAmount文档中:
该选项仅对线性轴有效。日期时间、对数或类别轴不受影响。
你的轴是一个类别轴。
您可以尝试使用tickInterval和一些额外的计算来达到类似的效果:
var categories = ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas', 'Peaches', 'Lemons', 'Apricots']
var tickAmount = 3
//best effort, for tickAmounts > categories.length / 2 it will show all ticks
var tickInterval = tickAmount > 1
? Math.floor((categories.length - 1) / (tickAmount - 1))
: tickAmount == 1 ? categories.length : NaN然后
xAxis: {
categories: categories,
tickInterval: tickInterval
}http://jsfiddle.net/peterlgh7/6anq4p8s/
EDIT:在阅读您的评论之后,考虑到您不仅希望隐藏标记,还希望隐藏列,我在文档中找不到任何东西。我的建议仍然是预处理你的数据,也就是过滤它。您可以定期采样它,类似于tickInterval的工作方式,或者您可以简单地获取前n个元素,因为这对您可能没有什么不同。你可以在这里看到这两种方式:http://jsfiddle.net/peterlgh7/L9fa1hg9/
但这都是javascript,不涉及highcharts。
发布于 2017-11-08 05:05:00
您可以设置tickInterval: n使其跳过轴中的每n个项目。
xAxis: {
categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas'],
tickInterval: 2
},http://jsfiddle.net/mt4x95rd/2/
发布于 2017-11-08 19:42:08
可以使用xAxis.max属性设置可以在x轴上显示的最大索引。类别索引从0开始,它们是后续的整数。
xAxis: {
categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas'],
max: 2
}现场演示: http://jsfiddle.net/kkulig/q9p3b8hw/
https://stackoverflow.com/questions/47167029
复制相似问题