highcharts 手动调用重置缩放

bvjveswy  于 2022-11-24  发布在  Highcharts
关注(0)|答案(6)|浏览(287)

我有一个图表,我允许放大/缩小。每次用户放大/缩小“重置缩放”出现。
现在我已经添加了一个新的自定义按钮,我需要显示X最新的列数据。我已经改变了类别和数据,但也需要重置缩放。
这可以做到吗?我仍然希望在用户试图放大/缩小时保留“重置缩放”。PS:我试着这样做。zoomOut(),但随后出现了“重置缩放”:(
Chanan问候

eblbsuwk

eblbsuwk1#

Pawel的电话建议

chart.xAxis[0].setExtremes(null,null);

顺便说一句,确实有效,如下所示:http://jsfiddle.net/tvHg6/
但是,尽管图表缩小了,resetZoom按钮仍然在附近,不知道如何隐藏它。调用chart.resetZoomButton.hide()会隐藏它,但它会永久地隐藏它。

gblwokeq

gblwokeq2#

按建议here

chart.zoom()

但是请记住,调用chart.zoom()不会触发chart.events.selection事件,如果您手动或通过编程$('.highcharts-button').click();单击“Reset button”,则会触发该事件

gmxoilav

gmxoilav3#

如果要重置外部按钮上的缩放,请单击,然后执行以下操作:

$("#YourOwnZoomBtnID").click(function(){ 

    $('.highcharts-button').click();
});

如果你想隐藏 highcharts 的内置重置按钮,那么你可以这样做:

xAxis: { categories: xAxisCategories
                ,events: {
      afterSetExtremes: function() {
        $('.highcharts-button').hide();
      }
    }}

jsfiddle示例如下:jsfiddle
谢谢Kalyan

rks48beu

rks48beu4#

我刚刚调用了按钮的单击事件,它运行正常。
给定:v_chart是Highcharts图表的变量;

if (typeof v_chart.resetZoomButton !== 'undefined') {
    v_chart.resetZoomButton.element.onclick();
}
wlsrxk51

wlsrxk515#

1.隐藏原来的重置按钮

chart: {
            resetZoomButton: {
                    theme: {
                        display: 'none'
                    }
                }
            }

1.处理事件

buttons: {
                    resetButton: {
                        symbol: 'url(redo_icon.svg)',
                        _titleKey: "resetZoom",
                        y: 20,
                        x: -20,
                        onclick: function () {
                            this.xAxis[0].setExtremes(null,null);
                            this.yAxis[0].setExtremes(null,null)
                        }
                    }
                }
sg3maiej

sg3maiej6#

我们有一个类似的情况-用户缩放,我们添加了一个“保存此缩放阶段”按钮,用户单击该按钮,我们保存新的最小/最大时间,但现在我们必须使重置缩放按钮消失。
以下代码完成了此操作,如果用户以后进一步缩放,按钮将返回:

chart.resetZoomButton.hide();
chart.resetZoomButton = chart.resetZoomButton.destroy();

相关问题