【问题标题】:iOS Charts Bar-Bar Combined-ChartsiOS 图表条形组合图表
【发布时间】:2020-02-10 22:06:49
【问题描述】:

我正在使用 iOS charts 库并尝试制作条形组合图表。

我不确定这是否可行,但我没有看到有关文档的任何限制,所以我假设有这样的选项。

这是我用来添加组合图表的代码:

func createIntegratedChartForStat(stat:String, chart:CombinedChartView){
    chart.noDataText = "You need to provide data for the " + stat + " chart"

    var dataEntriesTotal: [BarChartDataEntry] = []
    var dataEntriesGood: [BarChartDataEntry] = []
    for i in 0..<gamesOrder.count {
        let outFromStat = playersFullData["b"]![stat]![i]
        var splittedData = outFromStat.split(separator: "/")
        let dataEntryTotal = BarChartDataEntry(x: Double(i), y: Double(splittedData[0])!)
        let dataEntryGood = BarChartDataEntry(x: Double(i), y: Double(splittedData[1])!)
        dataEntriesTotal.append(dataEntryTotal)
        dataEntriesGood.append(dataEntryGood)
    }

    let chartDataSetTotal = BarChartDataSet(values: dataEntriesTotal, label: stat + " Attempts")
    let chartDataSetGood = BarChartDataSet(values: dataEntriesGood, label: stat + " Successful")

    let chartData = CombinedChartData(dataSets: [chartDataSetTotal, chartDataSetGood])

    chart.data = chartData
}

我得到的只是这个:

如果我触摸图表,则会出现以下错误:

[未知进程名] CGAffineTransformInvert:奇异矩阵。

可以这样做还是我错过了什么?

【问题讨论】:

    标签: swift charts swift3 ios-charts


    【解决方案1】:

    有可能,我只是错误地将数据添加到组合图表中。 添加更新的代码:

    func createIntegratedChartForStat(stat:String, chart:CombinedChartView){
        chart.noDataText = "You need to provide data for the " + stat + " chart"
    
        var dataEntriesTotal: [BarChartDataEntry] = []
        var dataEntriesGood: [BarChartDataEntry] = []
        for i in 0..<gamesOrder.count {
            let outFromStat = playersFullData["b"]![stat]![i]
            var splittedData = outFromStat.split(separator: "/")
            let dataEntryTotal = BarChartDataEntry(x: Double(i), y: Double(splittedData[0])!)
            let dataEntryGood = BarChartDataEntry(x: Double(i), y: Double(splittedData[1])!)
            dataEntriesTotal.append(dataEntryTotal)
            dataEntriesGood.append(dataEntryGood)
        }
    
        let chartDataSetTotal = BarChartDataSet(values: dataEntriesTotal, label: stat + " Attempts")
        chartDataSetTotal.colors = [NSUIColor .blue]
        let chartDataSetGood = BarChartDataSet(values: dataEntriesGood, label: stat + " Successful")
        chartDataSetGood.colors = [NSUIColor .green]
    
        let chartData = BarChartData(dataSets: [chartDataSetTotal, chartDataSetGood])
    
        let data: CombinedChartData = CombinedChartData()
        data.barData = chartData
        chart.data = data
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-18
      相关资源
      最近更新 更多