Почему только первый график не помечен формой, в отличие от остальных графиков? - PullRequest
0 голосов
/ 17 апреля 2019

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

enter image description here

Я настраиваю LineChartView экземпляр и назвал его lineChart:

var lineChart: LineChartView = {
   var l = LineChartView()
    l.translatesAutoresizingMaskIntoConstraints = false
    l.backgroundColor = .white
    return l
}()

lineChartDataPoints содержит ChartDataEntry классов, которые содержат значения x и y:

var lineChartDataPoints: [ChartDataEntry] = []

Я перебираю xData и добавляю ChartDataEntry класс к lineChartDataPoints. xData и yData переменная содержит значения x и y: (которая генерируется в другой функции и не является предметом этого вопроса)

 for i in 0..<xData.count {

        let data = ChartDataEntry(x: Double(i + 1), y: Double(yData[i])!)
        lineChartDataPoints.append(data)
    }

Затем я добавляю lineChartDataPoints к LineChartDataSet:

let lineDataSet = LineChartDataSet(values: lineChartDataPoints, label: "Values")

Затем lineDataSet добавляется к lineData после установки параметров.

 lineDataSet.colors = [UIColor.red]
 lineDataSet.lineWidth = 5
 lineDataSet.circleColors = [UIColor.blue]
 lineDataSet.circleRadius = 5

 lineData.addDataSet(lineDataSet)

И это, очевидно, не потому, что есть только одна точка. Потому что я попробовал это:

print("data \(lineChartDataPoints)")

// data [ChartDataEntry, x: 1.0, y 1.0, ChartDataEntry, x: 6.0, y 1.0]

Определенно есть две точки для отображения графика, но я довольно озадачен тем, почему первая точка не будет помечена синей точкой, как вторая точка.

1 Ответ

0 голосов
/ 17 апреля 2019

До установки новой платформы Charts (версия 3.2) для Swift 5 у меня не было этой проблемы.В рамках диаграмм были сделаны некоторые изменения.Установка новейшего патча (3.3) решила эту проблему.Поэтому обновите эту версию до последней версии, чтобы избежать этой проблемы.

...