我创建了一个带有自定义轴和简单线条的图表,该线条使用垂直轴和水平轴。接下来,我通过调用 setAutomatic(false
) 和 Axis
类提供的setMinMax(min, max)
方法进行放大。TeeChart 放大了,但与普通放大相比,它的行为有所不同。它不会重新缩放轴标签 - 为什么?如何重新缩放轴标签以使它们不重叠?
我发现,在正常放大后,接下来调用方法invalidate()。所以我也尝试在我的 teechart 实例上调用doInvalidate()
,但这没有帮助。 setMinorTickCount(arg0)
和adjustMinMax()
也没有任何变化。
知道如何重新缩放标签吗?感谢
以下是重现它的方法:
TChart chart = new TChart(parent, 0);
Line series = new Line(chart.getChart());
series.fillSampleValues(100);
chart.getAxes().getBottom().setAutomatic(false);
chart.getAxes().getBottom().setMinMax(0.0, 10.0);
chart.getAxes().getBottom().setMinMax(2.0, 5.0);
当我在此操作后滚动时,我需要类似的东西。滚动后,标签会正确重新缩放。
感谢
和这里一样。
首先要注意的是,setMinMax()
函数已经将automatic
设置为false
,所以在调用setMinMax()
之前不需要调用setAutomatic(false)
。此外,调用setMinMax()
函数两次,只有最后一次调用有意义,我没有看到添加或删除第一个调用的任何不同行为。
我看到您的代码似乎生成了一个在底部轴上有重叠标签的图表。这很奇怪,因为如果我稍微滚动图表,或者我设置的最小值和最大值略有不同,则不会出现重叠:
tChart1.getAxes().getBottom().setMinMax(2.01, 5.01);
我已将其添加到要为下一个版本(TJ71016731)修订的愿望列表中。
更新:
作为解决方法,您可以手动设置Increment
,如下所示:
tChart1.getAxes().getBottom().setIncrement(0.5);