Набор данных круговой диаграммы объединяет или не собирает присвоенные данные - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь создать круговую диаграмму в iOS, и, кажется, существует некоторая проблема, связанная с наборами данных и визуальными элементами, которую я не могу выяснить.Вот мой код ниже:

let months = ["Jan" , "Feb", "Mar" , "April"]
let unitsSold = [1000.0 , 200.0, 200.0 , 200.0]

func setChart(dataPoints: [String], values: [Double]) {

    var dataEntries: [ChartDataEntry] = []

    for i in 0..<dataPoints.count {
        let dataEntry = ChartDataEntry(x: values[i], y: Double(i))
        dataEntries.append(dataEntry)
    }
    print(dataEntries)
    let pieChartDataSet = PieChartDataSet(values: dataEntries, label: "Loans")
    let pieChartData = PieChartData(dataSet: pieChartDataSet)
    pieChart.data = pieChartData
    pieChart.holeRadiusPercent = 0.0
    pieChart.transparentCircleRadiusPercent = 0.0
    pieChart.holeColor = UIColor.clear
    var colors: [UIColor] = []

    for j in 0..<dataPoints.count {
        let red = Double(arc4random_uniform(256))
        let green = Double(arc4random_uniform(256))
        let blue = Double(arc4random_uniform(256))

        let color = UIColor(red: CGFloat(red/255), green: CGFloat(green/255), blue: CGFloat(blue/255), alpha: 1)
        colors.append(color)
    }
    pieChartDataSet.selectionShift = 0.0
    pieChartDataSet.drawValuesEnabled = false
    pieChartDataSet.sliceSpace = 8.0
    pieChartDataSet.colors = colors
    pieChart.legend.enabled = false
}

Это вывод кода, я не понимаю, что происходит.Это либо слияние наборов данных, либо пропуск чего-либо.

[

1 Ответ

0 голосов
/ 16 октября 2018

В вашем коде есть небольшая ошибка.Чтобы исправить это, вам нужно изменить строку

let dataEntry = ChartDataEntry(x: values[i], y: Double(i))

на

let dataEntry = ChartDataEntry(x: Double(i), y: values[i])

В параметре y вы установите фактическое значение записи (в вашем случае проданные единицы).

...