どのようにして簡単な折れ線グラフをプログラム的にズーム(全体のグラフを表示)することができますか?私はドキュメントで適切な方法を見つけることができません。ExtJS 6チャートをプログラムでリセットリセット
私はExt.chart.interactions.CrossZoomを使用します。
どのようにして簡単な折れ線グラフをプログラム的にズーム(全体のグラフを表示)することができますか?私はドキュメントで適切な方法を見つけることができません。ExtJS 6チャートをプログラムでリセットリセット
私はExt.chart.interactions.CrossZoomを使用します。
CrossZoom classには、文書化されていないundoZoom
メソッドがあります。クロスズーム相互作用がzoomHistory
財産で歴史のズームを保持
chart.getInteraction('crosszoom').undoZoom();
編集
を: あなたはそうのような、それを使用することができます。 undoZoom
メソッドは、ズーム履歴に沿って、一度に1ステップずつズームします。 undoZoom
方法に基づき、私は直接その初期のズームにグラフをリセットしresetZoom
方法作成した
:https://fiddle.sencha.com/#view/editor&fiddle/264t
別の編集
:ここExt.define(null, {
override: 'Ext.chart.interactions.CrossZoom',
resetZoom: function() {
var zoomMap = this.zoomHistory[0],
axes = this.getChart().getAxes();
if (zoomMap) {
for (var i = 0; i < axes.length; i++) {
var axis = axes[i];
if (zoomMap[axis.getId()]) {
axis.setVisibleRange(zoomMap[axis.getId()]);
}
}
}
this.getUndoButton().setDisabled(true);
this.zoomHistory = [];
this.sync();
}
});
は作業フィドルです
@SergeyNovikovはコメントに記載されており、undoZoom
メソッドとresetZoom
オーバーライドからわかるようにe、それはすべて軸 'setVisibleRangeの方法になります。したがって、最小/最大値を引数として直接使用してズームをリセットすることもできます。
ニースの答え、ありがとう!実際には、 '.setVisibleRange()'とaxisの最小値/最大値を引数として使用できます。あなたはそれを完璧にするために答えに加えることができます。 –
この質問が何らかの理由で間違っているようであれば、その理由を記入してください。私は、このタスクは、そのtrivialityのために箱からソリューションを持っていると確信して、私は本当にドキュメントでそれについて何も見つけることができません。 –