Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Highcharts动态更改y轴的单位?_Javascript_Jquery_Highcharts - Fatal编程技术网

Javascript 如何在Highcharts动态更改y轴的单位?

Javascript 如何在Highcharts动态更改y轴的单位?,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,如何在Highcharts动态更改y轴的单位 我有一个y轴的格式化程序: yAxis:{ title:{ text:'Custom Title' }, labels: { formatter: function () { var maxElement;//I want to set it to max value at y axis labels

如何在Highcharts动态更改y轴的单位

我有一个y轴的格式化程序:

 yAxis:{
        title:{
            text:'Custom Title'
        },
        labels: {
            formatter: function () {
                var maxElement;//I want to set it to max value at y axis labels

                if(maxElement > gb){
                    return (this.value / gb).toFixed(1) + " GB";
                }else if(maxElement > mb){
                    return (this.value / mb).toFixed(1) + " MB";
                }else if(maxElement > kb){
                    return (this.value / kb).toFixed(1) + " KB";
                } else {
                    return (this.value) + " B";
                }
            }
        },
      ...
我在这里问了一个问题:关于如何获得y轴标签上的最大值。然而,我认为我应该有一些像beforeLoad和beforeRedraw的方法

如何动态更改y轴标签的单位(因为如果禁用/关闭右侧的系列,则最大y轴标签更改)


欢迎使用有关我的问题的其他解决方案。

在这种情况下,您可以通过以下行获得
最大值:
this.axis.max

因此,您的函数应该是:

formatter: function() {
    var maxElement = this.axis.max;
    if (maxElement > gb) {
        return (this.value / gb).toFixed(1) + " GB";
    } else if (maxElement > mb) {
        return (this.value / mb).toFixed(1) + " MB";
    } else if (maxElement > kb) {
        return (this.value / kb).toFixed(1) + " KB";
    } else {
        return (this.value) + " B";
    }
}​

你可以看到它,这正是我想要的。找到Highcharts API了吗?@kamaci您可能无法在API引用中获取整个对象图的信息,但是当您希望查看给定objectI调试过的yAxis对象的可用属性列表时,浏览器DOM inspector或firebug之类的调试工具或内置工具肯定会派上用场,但我没有想到要调试axis元素。我应该想办法找到我需要的东西。你是如何决定这些价值观的?kb=19,mb=29,gb=39@维沙,这只是一个例子。这一决定没有逻辑可言,只是为了说明如何解决OP的问题。