如何停止在ios-charts中剪切限制线文本?

时间:2016-05-26 12:44:51

标签: ios-charts

我需要绘制靠近图表顶部的限制线,我想在右上角保留限制线标签。有什么办法,它不能被截断。请看我的输出。 enter image description here

2 个答案:

答案 0 :(得分:0)

尝试limitline.labelPosition = ChartLimitLabelPositionRightBottom;

如果你想将labelPosition保持在右上角, 您可以尝试设置yourYAxis.spaceTop = x; 如果x == 0,则maxValue将匹配图表的顶部, 如果x == 1,则maxValue将匹配图表的centerY,

抱歉,我无法表达自己,但是,试一试。 希望它有效。

答案 1 :(得分:0)

默认渲染器有点混乱。对其进行子类化(YAxisRenderer)并重写方法:renderLimitLines。从原始渲染器复制内容并替换行:

var clippingRect = viewPortHandler.contentRect
clippingRect.origin.y -= l.lineWidth / 2.0
clippingRect.size.height += l.lineWidth

具有:

var clippingRect = viewPortHandler.contentRect
clippingRect.origin.y -= l.lineWidth / 2.0 + l.valueFont.lineHeight
clippingRect.size.height += l.lineWidth + l.valueFont.lineHeight

现在,准备就绪后,您需要为

设置新的轴渲染器。
let yAxisRenderer = CenteredLimitLineYAxisRenderer(
   viewPortHandler: chart.viewPortHandler,
   yAxis: chart.leftAxis,
   transformer: chart.getTransformer(forAxis: .left)
)
chart.leftYAxisRenderer = yAxisRenderer