图表的 Horizo​​ntalBarChart 的左轴从顶部剪裁

Left axis for HorizontalBarChart of Charts are clipped from the top

在设置水平条形图时,我实际上遇到了一个奇怪的问题,即 leftAxis 的标签被剪裁了。

见截图:

这是我用来设置单杠的代码

func prepareHorizontalBarChart() {

    horizontalBarChartView.zoomOut()
    horizontalBarChartView.fitBars = true

    horizontalBarChartView.xAxis.drawGridLinesEnabled = false // disable horizontal grid lines
    horizontalBarChartView.chartDescription?.enabled = false

    horizontalBarChartView.xAxis.labelPosition = .bottom
    horizontalBarChartView.leftAxis.spaceTop = 0.0
    horizontalBarChartView.rightAxis.enabled = false
    horizontalBarChartView.leftAxis.axisMinimum = 0
    horizontalBarChartView.leftAxis.labelPosition = .insideChart
    horizontalBarChartView.leftAxis.granularity = 1.0
    horizontalBarChartView.leftAxis.granularityEnabled = true
    horizontalBarChartView.extraRightOffset = 10.0
    horizontalBarChartView.legend.enabled = false
    horizontalBarChartView.xAxis.avoidFirstLastClippingEnabled = true
    horizontalBarChartView.xAxis.granularity = 1.0
    horizontalBarChartView.xAxis.granularityEnabled = true
    horizontalBarChartView.xAxis.drawLabelsEnabled = true

    horizontalBarChartView.rightAxis.labelFont = UIFont.systemFont(ofSize: 20)
    reloadData()
}

我认为水平条形图标签在顶部边缘被剪裁,因此我们需要在图表视图端口中添加额外的 space 属性。

horiBarChartView.extraTopOffset = 10

将从顶部额外增加 10 像素 space。

在额外 space 之前(默认行为):

增加 10px 后 space:

希望本文能帮助您解决问题。