java—有没有办法将jfreechart图表缩放到x轴上的值?

7d7tgy0s  于 2021-07-12  发布在  Java
关注(0)|答案(1)|浏览(350)

我有一堆图表,我想把它们全部放大,以突出显示值x+范围内的系列,该范围基于一个不是源于图表的事件。
如果我读对了所有的缩放图表方法,比如 chart::zoomInDomain 获取屏幕坐标。所以我要找的是一种方法,要么将x域值转换为图表中的屏幕坐标,要么找到另一种基于序列值的缩放方法。

57hvy0tb

57hvy0tb1#

一种方法是调整相关轴,使其位于所需范围的侧面。确切的公式将取决于你的数据和目标。作为一个具体的例子,从这里开始,以下更改为 createChart() 生成下面的图表。它将缩放到序列中最后一天的值,在域轴的两侧是两天,在范围轴上是成比例的量:

int n = dataset.getItemCount(0);
double dMin = dataset.getX(0, n - 3).doubleValue();
double dMax = dataset.getX(0, n - 1).doubleValue();
domain.setRange(dMin, 2 * dMax - dMin);
ValueAxis range = plot.getRangeAxis();
double rMin = dataset.getY(0, n - 3).doubleValue();
double rMax = dataset.getY(0, n - 1).doubleValue();
range.setRange(rMin, 2 * rMax - rMin);


请参阅此处和此处的相关答案。

相关问题