javascript - 在 Highcharts 中设置柱形图的最小默认范围

标签 javascript charts highcharts

我使用 Highcharts 制作具有正百分比值和负百分比值的柱形图。

我总是希望图表的 y 轴至少显示 -50% 到 +30% 之间的范围,无论值是什么。但是,如果值大于 30% 或小于 -50%,则 y 轴的范围应相应调整。如果我使用yAxis: {min: -50, max: 30}当我有更大的值时,范围不会变大。

有办法做到这一点吗?或者,一旦 Highcharts 计算出范围,我是否必须以编程方式更新它?

最佳答案

目前你必须自己做。 它可以通过运行一个函数来检查最小值/最大值并在需要时重置来完成。

类似这样的东西(快速肮脏的例子):

function setMinAxisExtremes(chart, axis, min, max) {
    var ax = axis == 'y' ? chart.yAxis[0] : chart.xAxis[0];    
    var ext = ax.getExtremes();
    min = ext.min > min ? min : ext.min;    
    max = ext.max < max ? max : ext.max;
    ax.setExtremes(min,max);    
}

示例:

(如上所述,有一个功能请求要求 Highcharts 使用内置属性来执行此操作,这非常需要投票,此处:http://highcharts.uservoice.com/forums/55896-general/suggestions/1848953-extend-the-axis-max-property-to-act-like-css-mi)

关于javascript - 在 Highcharts 中设置柱形图的最小默认范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28582797/

相关文章:

javascript - 使用 JS 变量更改多个页面上的特定 <div> 内容 (JQuery Mobile)(第二次单击按钮不执行任何操作)

javascript - 图像作为复选框

javascript - 在弹出窗口中显示 nvd3 饼图时出现问题?

javascript - D3 stack() 跳过数据数组中的第一个对象

javascript - 按钮在后续选项卡上无法在 Highcharts 中重绘图表

javascript - 如何使用 Highcharts 和大量动态数据构建 Angular

javascript - 如何在 :hover:after with css3 中强制执行整个动画

javascript - 如何在不导入polyfills的情况下显示 Angular 不支持的Internet Explorer

JavaFX 折线图抛出强制转换异常

javascript - Highcharts/Highmaps 未捕获类型错误 : Cannot read property '0' of undefined error