ios - 多个标签 xAxis iOS-Charts

标签 ios swift charts ios-charts

我在使用库时遇到问题,找不到解决方案,希望您能提供帮助。

当我将数据放在图表上时,有关绘制轴和形状的所有内容都进展顺利,但我的 xAxis 上的标签会 self 倍增,我不知道为什么,看我让你我的代码和问题的图片,也许听起来很奇怪,但是为了显示问题,我创建了一个仅包含一个数据的条形图。

func setChart(values: [Double]) {

    let formato:BarChartFormatter = BarChartFormatter()
    formato.setArray(self.listadoLabels)
    let xaxis:XAxis = XAxis()

    max = values.maxElement()

    barChartView.noDataText = "You need to provide data for the chart."

    var dataEntries: [BarChartDataEntry] = []

    for i in 0..<values.count {
        let dataEntry = BarChartDataEntry(x: Double(i), y:values[i])
        dataEntries.append(dataEntry)

        formato.stringForValue(Double(i), axis: xaxis)
    }

    xaxis.valueFormatter = formato

    let chartDataSet = BarChartDataSet(values: dataEntries, label: "Units Sold")
    chartDataSet.colors = ChartColorTemplates.joyful()

    barChartView.fitBars = true //Para que las barras inicial y final se muestren completas
    barChartView.xAxis.valueFormatter = xaxis.valueFormatter
    barChartView.xAxis.labelPosition = .Bottom

    barChartView.leftAxis.axisMinimum = 0
    barChartView.leftAxis.axisMaximum = max + 2
    barChartView.rightAxis.enabled = false
    barChartView.drawValueAboveBarEnabled = false
    barChartView.descriptionText = ""
    barChartView.xAxis.drawGridLinesEnabled = false
    barChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.0)

    let chartData = BarChartData()
    chartData.addDataSet(chartDataSet)
    barChartView.data = chartData
}

大部分代码只是样式,我有一个用于 xAxis 格式的类,因为您需要一个类来在 xAxis 中放置标签,这是代码:

public func stringForValue(value: Double, axis: AxisBase?) -> String {

    return  "Label1"
}

我只是发送一个值5512,结果是,不用关注segmentTab和按钮:

enter image description here

最佳答案

我的情况和你一样,我找不到确切的解决方案,但这对我有用:

barChart?.xAxis.wordWrapEnabled = true
barChart?.xAxis.setLabelCount(5, force: true)

我还将条形图居中以匹配标签

let dataEntry = BarChartDataEntry(x: Double(i) + 0.5, y: Double(count))

就我而言,我的图表不能有超过 5 个条形图,所以我使用了 5 个,但您可以传递一个包含条形图数量的变量并将“LabelCount”设置为该数字,当您放大时,它仍然会重复标签,但它们不会重叠,也不会看起来那么糟糕。

我知道这并不完全是您正在寻找的答案,但希望它有所帮助

关于ios - 多个标签 xAxis iOS-Charts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39777205/

相关文章:

ios - 单元格中的图像不出现

ios - 如何显示 Json 对象中的键和值

ios - 登录UIWebView的弹窗

ios - URL 不在 Corona SDK 的 iOS webviews 中重定向

xcode - 如何在堆栈 View 中获取 "unshrink"对象

ios - 如何快速将 double 转换为字节数组?

javascript - 饼状图表,其中填充了切片的百分比

reporting-services - SSRS : Define custom X axis position on bar chart

ios - 根据indexPath Swift在TableView中设置UiCell文本颜色

c# - EPPlus C# x 轴类型 "Text axis"