我尝试使用代表当前季度费用的值创建一个LineChartView。我需要使用xAxis的自定义标签数打印数月和数天。不幸的是,LineChart正在生成一组不符合我需求的条目,我无法更改它们。我需要在我自定义位置的网格线,即月份的第一天和一个月的一组天,我希望它们位于特定的位置,而不是LineChart想要的位置。我检查了代码并看到xAxis的条目值是在XAxisRenderer.computeAxisValues中计算的,看起来我无法指定它们的编号和位置。我没有考虑我设置的标签数量......我没有时间对其进行自定义。
答案 0 :(得分:2)
有两种方法可以实现您的需求:
设置x轴的标签数量,例如
let xAxis = chartView.xAxis
xAxis.labelCount = 7
//xAxis.drawLabelsEnabled = true
通过这个,如果你设置,将绘制正好7个网格线 drawLabelsEnabled为false,将添加最小和最大行 除了那些
使用限制线
您可以禁用网格线的绘制,并使用限制线 代替。通过这种方式,您可以为任何值绘制线条 需要,例如,
let limitLine = ChartLimitLine(limit: xValue, label:
labelForThisLine)
limitLine.lineWidth = 0.5
limitLine.lineColor = .black
limitLine.valueTextColor = .black
chartView.xAxis.addLimitLine(limitLine)