简体   繁体   English

Highcharts Gauge错位标签

[英]Highcharts Gauge misplaced labels

I'm using highcharts solid gauge with decimal value. 我正在使用带有十进制值的highcharts solid gauge。 Here is the jsfiddle http://jsfiddle.net/7hm1mkbn/ 这是jsfiddle http://jsfiddle.net/7hm1mkbn/

$('#container-temp').highcharts(Highcharts.merge(gaugeOptions, {
    yAxis: {
        min: 10.39,
        max: 23.83,
        title: {
            text: 'Speed'
        }
    },

    credits: {
        enabled: false
    },

    series: [{
        name: 'Temperature',
        data: [23.23],
        dataLabels: {
            format: '<div style="text-align:center"><span style="font-size:25px;color:' +
                ((Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black') + '">{y}</span><br/>' +
                   '<span style="font-size:12px;color:silver">C</span></div>'
        },
        tooltip: {
            valueSuffix: ' C'
        }
    }]

}));

The min-max labels are misplaced. 最小 - 最大标签放错了位置。 Any suggestion? 有什么建议吗?

If you only want min and max ticks (with labels) you can replace your tickPixelInterval with a static definition of tickPositions . 如果你只是想最小值和最大值蜱(含标签),您可以取代你tickPixelInterval用的静态定义tickPositions For example ( JSFiddle ): 例如( JSFiddle ):

yAxis: {
    tickPositions: [10.39, 23.83]
}

If you may want more ticks (and labels) you may want to make a more dynamic function using tickPositioner . 如果您可能需要更多刻度(和标签),您可能希望使用tickPositioner创建更加动态的函数。 For example ( JSFiddle ): 例如( JSFiddle ):

yAxis: {
    tickPositioner: function () {
        var positions = [],
            numberOfTicks = 5;
            tick = this.min,
            increment = (this.max - this.min) / (numberOfTicks - 1);

        for (tick; tick - increment <= this.max; tick += increment) {
            positions.push(Math.round(tick * 100) / 100);
        }
        return positions;
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM