gpt4 book ai didi

javascript - 动态更改标签以显示 y 轴最小值和最大值

转载 作者:行者123 更新时间:2023-12-03 12:18:33 24 4
gpt4 key购买 nike

我想使用按钮获取 y 轴最小值和最大值标签。当我选择显示不同的图表时,它应该更新标签。现在,如果我单击“获取标签”按钮,它会显示正确的极值标签,但如果我继续单击“范围”按钮或输入范围框,它不会自动更新标签。如何解决这个问题?谢谢这是jsfiddle链接JS

html代码:

<script src="http://code.highcharts.com/stock/highstock.js"></script>
<script src="http://code.highcharts.com/stock/modules/exporting.js"></script>

<div id="container" style="height: 400px; min-width: 310px"></div>
<button id="button">Get Y axis extremes</button>

我的js代码:

$(function() {

$.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=aapl-c.json&callback=?', function(data) {
// Create the chart
$('#container').highcharts('StockChart', {


rangeSelector : {
selected : 1,
inputEnabled: $('#container').width() > 480
},

title : {
text : 'AAPL Stock Price'
},

series : [{
name : 'AAPL',
data : data,
tooltip: {
valueDecimals: 2
}
}]
});
// the button action
$('#button').click(function() {
var chart = $('#container').highcharts(),
extremes = chart.yAxis[0].getExtremes();

chart.renderer.label(
'dataMax: '+ extremes.dataMax +'<br/>'+
'dataMin: '+ extremes.dataMin +'<br/>'+
'max: '+ extremes.max +'<br/>'+
'min: '+ extremes.min +'<br/>',
100,
100
)
.attr({
fill: '#FCFFC5',
zIndex: 8
})
.add();

//$(this).attr('disabled', true);
});
});

});

最佳答案

使用chart redraw event .

使标签添加成为一个函数:

function addLabel(){
var chart = $('#container').highcharts(),
extremes = chart.yAxis[0].getExtremes();

chart.renderer.label(
'dataMax: '+ extremes.dataMax +'<br/>'+
'dataMin: '+ extremes.dataMin +'<br/>'+
'max: '+ extremes.max +'<br/>'+
'min: '+ extremes.min +'<br/>',
100,
100
)
.attr({
fill: '#FCFFC5',
zIndex: 8,
id :'myLabel'
})
.add();
}

然后在事件中,如果之前添加了标签,则更新它:

        chart: {
events: {
redraw: function() {
var oL = $('#myLabel');
if (oL.length){
oL.remove();
addLabel();
}
}
}
},

这是更新的 fiddle .

关于javascript - 动态更改标签以显示 y 轴最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24553172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com