我创建了一个使用 JFreeChart 制作 XYLineChart 的应用程序(除其他外),但最近在 JFreeChart 中遇到了一个错误,即如果图表的 x 或 y 轴设置为非常小的范围(低值或值之间的最小差异x 或 y 轴),图表将照常绘制,但所述轴上的所有刻度标签都会消失。如果用户将图表放大得太远,也会发生这种情况。
我设法通过在我的应用程序的 UI 中添加一个按钮来解决这个问题,该按钮允许用户在制作或放大图表后刷新轴。此按钮的动作侦听器重新设置刻度标签,然后它们正确显示在轴上。
现在,我希望这可以自动完成,而不是使用我制作的按钮。为此,我需要将此代码放在图表面板创建中的某个位置,在 ChartPanel.zoom() 方法完成执行后立即执行该代码。
我的问题是,当用户放大图表时,zoom() 代码执行完成后会发生什么?下一步控制在哪里?或者,有没有办法在每次执行 zoom() 方法后添加几行代码?
如果有人有任何建议,请尽快告诉我。谢谢。