当max
设置为一个非常大的数字(例如666772)时会出现问题.Highcharts会根据tickPixelInterval
设置的值来取数字并将其四舍五入。
如果我将tickPixelInterval
值设置为接近0,则Gauge图表上的最大数字开始接近666772,但仍然是四舍五入的。我希望min
从0开始(它确实如此),然后让max
成为确切数字(666772),或者甚至是向下舍入版本(667k)。
有没有办法只使用Gauge图表上显示的min
和max
进行此操作?
var gaugeOptions = {
chart: {
type: 'solidgauge'
},
title: null,
pane: {
center: ['50%', '85%'],
size: '140%',
startAngle: -90,
endAngle: 90,
background: {
backgroundColor: '#EEE',
innerRadius: '60%',
outerRadius: '100%',
shape: 'arc'
}
},
// the value axis
yAxis: {
stops: [
[0.1, '#DF5353'], // green
[0.5, '#DDDF0D'], // yellow
[0.9, 'green'] // red
],
lineWidth: 0,
minorTickInterval: null,
tickPixelInterval: 400,
tickWidth: 0,
endOnTick: false,
maxPadding: 0,
title: {
y: -70
},
labels: {
y: 10,
format: '{value}'
}
},
credits: {
enabled: false
},
tooltip: {
enabled: false
},
plotOptions: {
solidgauge: {
dataLabels: {
y: 5,
borderWidth: 0,
useHTML: true
}
}
}
};
// Quarter1
jQuery('#quarter1').highcharts(Highcharts.merge(gaugeOptions, {
yAxis: {
min: 0,
max: 666772,
title: {
text: 'Quarter 1'
}
},
series: [{
name: 'Quarter 1',
data: [50],
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">Quota</span><br/><span>Bonus Elegible</span></div>'
}
}]
}));
答案 0 :(得分:4)
使用此代码显示确切金额的最小值和最大值。
yAxis: {
min: 0,
max: 2602,
tickPositioner: function() {
return [this.min, this.max];
}
答案 1 :(得分:2)
将 endOnTick:false (http://api.highcharts.com/highcharts#yAxis.endOnTick)添加到您的轴。例如
yAxis: {
min: 0,
max: 666772,
title: {
text: 'Quarter 1'
},
endOnTick:false
}
答案 2 :(得分:1)
我发现了另一种替代方法。如果您将tickPixelInterval: 400,
替换为tickAmount: 2,
,则它将仅显示最小值和最大值