1

我对使用 JFreeChart 创建的图表的移动导航有疑问。从库源代码中包含的示例来看,当我们在图表上进行缩放或移动时,图表可以自由移动。但我目前正在尝试做的是与实际交易平台类似的行为,比如 Metatrader (MT4)。当图表向左/向右移动时,数据集的最小值/最大值在变化,因此图表的 y 轴也会相应更新。基本上我知道如何使用以下代码更改 y 轴的范围:

ValueAxis y_range = plot.getRangeAxis(); range.setRange(min, max);

但现在我的问题是获取最小/最大值,我认为它现在应该来自屏幕上当前可见的数据集。

任何人都知道如何获取图表当前可见数据集的最小值/最大值?我目前拥有的信息是完整的数据集。我已经探索了一些与 JFreeChart 相关的论坛,并且一些建议使用以下内容:

static Range    findDomainBounds(XYDataset dataset)

但如果我使用我的数据集,它将是整个数据集的最小值/最大值。如果这是获取我需要的信息的唯一方法,知道如何获取当前可见图表的数据集的唯一部分吗?(不是整个数据集)

非常感谢您的帮助!!

4

1 回答 1

1

目前尚不清楚XYDataset您正在使用哪个,但您始终可以扩展AbstractXYDataset,如此处所示以获得您当前选择的轴范围的最小值/最大值。

于 2012-11-04T13:07:24.463 回答