具有可选域轴和缩放的 JFreeChart

JFreeChart with selectable domain axis and zoom

如何制作像https://www.amcharts.com/demos/line-chart-with-scroll-and-zoom/

这样的图表

我对这些功能特别感兴趣

  1. 能够 select window 域轴与那些 2 select 离子控制器。
  2. 能够通过 select 域轴的一部分进行缩放。
  3. 能够缩小并看到更大的画面。
  4. 能够映射到范围轴 (Y) 并在任何点(没有标记)看到气球上的值,如工具提示

我在这里做了初步尝试 在 trashgod 的帮助下,我使域可滚动。

我仍然缺少这些能够有效使用图表的功能。

您必须结合几种方法:

  1. 平移控件:调用,setDomainPannable(true)启用平移;在您的控件中,使用 panDomainAxes(), as shown in the implementation of mouseDragged(); use the mouse as suggested here.

  2. 缩放支持通过在轴上拖动进行缩放,但在图上拖动支持;向 拖动以查看选择矩形。为确保鼠标滚轮在滚动时仅缩放域轴,请在 ChartPanel 上调用 setRangeZoomable(false);范围轴反之亦然。

  3. 缩小:向拖动可缩小或使用按钮处理程序,如图所示.

  4. 工具提示:在您选择的 ChartFactory 中启用工具提示。如果需要,创建自定义 XYToolTipGenerator,如图 here.