我正在使用Highcharts作为具有正负百分比值的柱形图。
我总是希望图表的y轴至少显示-50%和+ 30%之间的范围,无论值是多少。但是,如果值大于30%或小于-50%,则y轴的范围应相应地适应。如果我使用yAxis: {min: -50, max: 30}
,当我有更大的值时,范围不会变大。
有办法做到这一点吗?或者,一旦Highcharts计算了范围,我是否必须以编程方式更新它?
答案 0 :(得分:1)
目前你必须自己动手。 它可以通过运行一个函数来检查最小值/最大值并在需要时重置。
像这样的东西(快速脏的例子):
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)
答案 1 :(得分:0)
您可以准备自己的函数来定位刻度,它是tickPositioner