如果将LineChartDataSet()
和drawValuesEnabled
设置为true,是否可以在条目下绘制值,而不是在标签上绘制值的默认位置?
我还没有在API中找到任何有用的东西。
谢谢!
最佳答案
目前,无法轻易更改LineChartDataSet
标签的位置,但有人建议使用这样的功能:
[Feature Request] Make it easier to change the position of the labels drawn above the circles in a LineChartView #2581。
悲哀地。。。这个特性请求已经开放了很长时间,所以不确定是否有人有兴趣实现它。
然而。。。如果这是绝对必要的,那么您可以在LineChartRenderer.drawValues(context:)中进行更改。
在这里,它调用ChartUtils.drawText(context:text:point:align:attributes:)
,传递一个CGPoint
,其y
值决定该位置。
您可以通过更改以下行向y
位置添加一些点:
pt.y - CGFloat(valOffset) - valueFont.lineHeight
致:
pt.y - CGFloat(valOffset) - valueFont.lineHeight + 100
我希望这在某种程度上有所帮助,但请注意,所有更改都将是项目的本地更改,如果您/其他人更新了组件,则这些更改将丢失。
关于swift - iOS图表:如何在数据输入图标/圆点下绘制值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55008817/