描述
- I've read, understood, and done my best to follow the *CONTRIBUTING guidelines.
What did you do?
I implemented LineChart in my project and tried to subclass LineChartRenderer in order to change offset of values that are drawn in func drawValues(context: CGContext). The problem is that the only option is to copy all code of this method from LineChartRenderer into my subclass, but there are warnings, because _xBounds property has internal protection level.
What did you expect to happen?
I would like to be able to control value position of DataSet entries on LineChart. For example, in LineChartRenderer in func drawValues(context: CGContext) there is an alignment option, which is always set to .center, but I need to set it to left.
if dataSet.isDrawValuesEnabled {
ChartUtils.drawText(
context: context,
text: formatter.stringForValue(
e.y,
entry: e,
dataSetIndex: i,
viewPortHandler: viewPortHandler),
point: CGPoint(
x: pt.x,
y: pt.y - CGFloat(valOffset) - valueFont.lineHeight),
align: .center,
attributes: [NSAttributedStringKey.font: valueFont, NSAttributedStringKey.foregroundColor: dataSet.valueTextColorAt(j)])
}
Also it would be great to change offset for X and Y position.
Is there any option to do that without making fork?
Charts Environment
**Charts version/Branch/Commit Number: 3.1.1 Release ** Xcode version: 9.3.1 Swift version: 4.1 Platform(s) running Charts: iOS macOS version running Xcode: 10.13.4