单击JfreeChart折线图上的按钮放大和缩小function?
基本上我想要放大折线图并缩小(总共4个按钮,2个用于X轴(放大和缩小),其他两个用于Y轴)沿着任意轴单击按钮,就像绘制的图形一样在负x轴和负Y轴区域,根据数据点然后在按钮上单击图形应该放大并根据按钮单击沿着负x轴或负Y轴缩小。
我怎样才能实现这一点?任何带有详细解释的示例代码都非常有用!!
private JButton createZoom() { final JButton auto = new JButton("ZOOMIN"); auto.setActionCommand("ZOOM_IN_DOMAIN"); auto.addActionListener(new ChartPanel(chart)); return auto; }
每个按钮的Action
实现应调用ChartPanel
使用的相应方法来创建缩放命令的弹出菜单。 actionPerformed()
的实现是可用缩放function的方便指南。 例如,通过调用zoomInDomain()
来处理zoomInDomain()
。 基于此示例 ,相对于原点的典型Zoom X处理程序如下所示:
private JButton createZoom() { final JButton zoomX = new JButton(new AbstractAction("Zoom X") { @Override public void actionPerformed(ActionEvent e) { chartPanel.zoomInDomain(0, 0); } }); return zoomX; }
如果默认的zoomPoint
足够,您可以使用图表面板的实现:
private JButton createZoom() { final JButton zoomX = new JButton("Zoom X"); zoomX.setActionCommand(ChartPanel.ZOOM_IN_DOMAIN_COMMAND); zoomX.addActionListener(chartPanel); return zoomX; }
相比之下,原始示例中的createZoom()
方法显示了如何唤起ChartPanel
方法restoreAutoBounds()
,该方法恢复两个轴上的自动范围计算。