1

我无法使我的 Shinobichart 中的 xAxis 看起来不错。右轴标签被切成两半(见图)。xAxis.setRangePaddingHigh 不起作用。我认为这与我使用自定义日期范围有关。请帮忙!

        DateRange dateRange = new DateRange(oldDate, today);
        xAxis.setDefaultRange(dateRange);
        xAxis.setTickMarkClippingModeHigh(TickMark.ClippingMode.TICKS_AND_LABELS_PERSIST);
        xAxis.getStyle().getTickStyle().setMinorTicksShown(true);
        xAxis.getStyle().getTickStyle().setMajorTicksShown(true);
        xAxis.getStyle().getTickStyle().setLabelsShown(true);
        DateFrequency test = new DateFrequency(30, DateFrequency.Denomination.MINUTES);
        xAxis.setRangePaddingHigh(test);
        shinobiChart.setXAxis(xAxis);

在此处输入图像描述

4

1 回答 1

2

正如您所怀疑的,当在 Axis 上设置默认范围时,任何范围填充都会被忽略。API 文档并没有真正提到这一点,所以我们会在未来更新它们!

你试过另一个ClippingModes吗?您在此处使用的将显示刻度标签,即使这意味着它们将被部分切断。

TICKS_PERSIST模式仍会在轴的最右侧显示刻度线,但由于标签将被切断,因此不会显示。NEITHER_PERSIST另一方面,该模式不会显示标签或刻度线。

根据您设置模式的时间,您可能需要调用,shinobiChart.redrawChart()但在将轴添加到图表之前,您似乎不必这样做。

最后,如果您想更好地控制刻度线的绘制方式,您可以使用ShinobiChart.OnTickMarkUpdateListener和/或ShinobiChart.OnTickMarkDrawListener(与ChartUtils一起获得一些默认行为)。

全面披露 - 我为shinobicontrols工作

于 2015-10-06T08:03:46.730 回答