美好的一天,我正在构建一个Android应用程序,我正在使用AChartEngine来显示我获得的图形和值。
我能够正确地绘制正确的值。但是,一旦用户放大并平移我的图表,就很难查看数据。我考虑的一个选项是显示“重绘图”按钮,一旦用户点击它,图形将重绘为原始状态,缩放和平移也将重置。
到目前为止,这是代码:
public void redrawGraph(View view){
chartView.repaint();
}
其中redrawGraph
是我的按钮的onClick
函数,而chartView
是GraphicalView
类型的对象。
然而,这似乎做了什么,因为它只重绘了我的图表中的更改(如果我添加/删除了系列渲染器,系列等)。
有没有人知道如何在AChartEngine中重置缩放和平移图形?
非常感谢任何帮助。谢谢。
答案 0 :(得分:1)
我的回答是指XY /时间图表。首先,您必须在您使用的每个渲染器中启用外部缩放功能。下面的代码段显示了完成此操作的代码:
yourMultipleSeriesRenderer.setExternalZoomEnabled(true);
在您的方法redrawGraph
中,您必须执行以下命令:
public void redrawGraph(View view) {
chartView.zoomReset();
}
这对我很有用。如果您需要任何进一步的信息,请发表评论。
答案 1 :(得分:-2)
将它放入多系列渲染
multiRenderer.setZoomButtonsVisible(false);
// setting pan enablity which uses graph to move on both axis
multiRenderer.setPanEnabled(true, false);
// setting click false on graph
multiRenderer.setClickEnabled(false);
// setting zoom to false on both axis
multiRenderer.setZoomEnabled(true, false);
// setting lines to display on y axis
multiRenderer.setShowGridY(true);
// setting lines to display on x axis
multiRenderer.setShowGridX(true);
// setting legend to fit the screen size
multiRenderer.setFitLegend(true);
// setting displaying line on grid
multiRenderer.setShowGrid(true);
// setting zoom to false
multiRenderer.setZoomEnabled(false);
// setting external zoom functions to false
multiRenderer.setExternalZoomEnabled(false);