在对数轴上使用最小最大值的HighChart缺少次要刻度网格

时间:2013-04-11 09:22:36

标签: highcharts

我正在使用高图来显示具有对数轴的图形。我真的需要在yAxis上精确设置最小值和最大值。

不幸的是,如果我的最大值没有打勾,它将不会按预期显示minorTrickGrid。

见于this fiddle

预期结果应该与this one类似,但没有勾选“ 1000 ”。最大值正好 999

关键行是max : 1000,它允许显示次要网格线。但我的问题是我需要将最大值设置为999(max : 999),这会使次要网格变得奇怪。

问题是:这是一个错误还是有办法在这种情况下显示次要的网格线?

2 个答案:

答案 0 :(得分:0)

如果你只是想摆脱1k标签,你可以保持最大值:1000,但添加这样的自定义格式化程序功能:

yAxis: {
            endOnTick: false,
            type: 'logarithmic',
            minorTickInterval: 0.1,
            min: 1,
            max: 1000,
            labels:{
                formatter:function() {
                    if (this.value==1000) {
                        return "";
                    } else {
                        return this.value;
                    }
                }
            }
        },

http://jsfiddle.net/hA9yF/

如果设置max:999,这仍然无效,但可能适合您。

答案 1 :(得分:0)

您可以使用标签格式化程序(http://api.highcharts.com/highcharts#yAxis.labels.formatter)和highcharts.numberFormat()(http://api.highcharts.com/highcharts#Highcharts.numberFormat()),它允许返回自定义数字数字。

http://jsfiddle.net/a3jXx/5/

labels:{
                formatter:function(){

                    return Highcharts.numberFormat(this.value,0);

                }
            }