2015-10-02 73 views
1

我不能让x轴在我Shinobichart好看。右轴标签被切成两半(见图片)。 xAxis.setRangePaddingHigh不起作用。我认为这与我使用自定义日期范围有关。请帮忙!Shinobichart轴填充

 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); 

enter image description here

回答

2

当你怀疑,当默认的范围设定在一个轴的任意范围内的填充被忽略。 API文档没有提到这一点,所以我们会在将来更新它们!

您是否尝试过其他ClippingModes?您正在使用在这里会显示刻度标签,即使这意味着他们将被部分切断之一。

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

根据您设置模式的时间不同,您可能需要调用shinobiChart.redrawChart(),尽管在这里看起来您不需要像在轴上添加轴之前那样做。最后,如果您想更多地控制刻度线的绘制方式,您可以使用ShinobiChart.OnTickMarkUpdateListener和/或ShinobiChart.OnTickMarkDrawListener(以及ChartUtils获取一些默认行为)。

充分披露 - 我为shinobicontrols

+0

谢谢合作!更改clippingmodes给了我更多的选择,也许我会尝试你refered给听众。但我希望能有一个更顺畅的解决方案。用户可以选择最近6,12或24小时或三天的数据。我从现在开始制定一个自定义范围,并在X小时后返回。在不同的图表中,刻度标签的位置各不相同。在6小时内,只显示一个标签。 (手机旋转时效果会更好)。如果我没有设置默认范围,那么看到标签自动定位的方式会很好,就像我觉得它们的做法一样。 – Fubbe99