Javascript 海图重置y轴
首先,我的页面上有几个图表-为了更容易比较不同图表中的数据,我将最大yAxis设置为可用的最大yAxis 问题:如何在不重新读取数据的情况下恢复刚刚设置的最大值?我正在寻找类似“自动缩放”的东西,因为如果我加上最大值11245,最大yAxis大约是12500。我想恢复我所有的图表 演示:Javascript 海图重置y轴,javascript,highcharts,reset,Javascript,Highcharts,Reset,首先,我的页面上有几个图表-为了更容易比较不同图表中的数据,我将最大yAxis设置为可用的最大yAxis 问题:如何在不重新读取数据的情况下恢复刚刚设置的最大值?我正在寻找类似“自动缩放”的东西,因为如果我加上最大值11245,最大yAxis大约是12500。我想恢复我所有的图表 演示: $('#setMax')。单击(函数(ev){ var yAxisMax=0; $(“[数据图表]”)。每个(功能(项目){ var c=$(this.highcharts(); 如果(c.yAxis[0].m
$('#setMax')。单击(函数(ev){
var yAxisMax=0;
$(“[数据图表]”)。每个(功能(项目){
var c=$(this.highcharts();
如果(c.yAxis[0].max>yAxisMax){
yAxisMax=c.yAxis[0].max;
}
});
$(“[数据图表]”)。每个(功能(项目){
c=$(this.highcharts();
if(c.yAxis[0].max
您只需从axis中删除极值即可。一般来说,我建议使用axis.setextrems(min,max)
而不是axis.update(options)
setExtremes
与update
相比应该具有更好的性能
代码:
演示:这个解决方案对于我推出轴极值以避免图表元素中断的图表非常有用,但需要用新数据重新绘制。使用“null”将极端值设置回默认值会阻止图表在每次重画后继续展开。哪些元素被截断?这不应该发生,我有一个气泡图,其中某些气泡会在一边被切断。我使用
setextrems()
将轴推出一个单位,使其适合。你上面关于null重置极端值的回答是我在重画图表时使用的:重置极端值,重画图表,将极端值推出一个单位,重复。哦,气泡。。只要我们使用线性/日期时间轴就可以了。但以对数轴为例是行不通的。如果您发现线性/日期时间轴存在问题,请告诉我-这可能是一个bug,我们应该在核心中修复它。
$('#setMax').click(function (ev) {
var yAxisMax = 0;
$('[data-chart]').each(function (item) {
var c = $(this).highcharts();
if (c.yAxis[0].max > yAxisMax) {
yAxisMax = c.yAxis[0].max;
}
});
$('[data-chart]').each(function (item) {
c = $(this).highcharts();
if (c.yAxis[0].max < yAxisMax) {
c.yAxis[0].update({
max: yAxisMax
});
}
});
});
$('#setDefault').click(function (ev) {
$('[data-chart]').each(function (item) {
$(this).highcharts().yAxis[0].setExtremes(null, null);
});
});