使用 (iOS-charts) 和 LineChartData setValueTextColor 的多色折线图 xAxis 标签

Line Chart xAxis label with multiple colour using (iOS-charts) and LineChartData setValueTextColor

我在这里使用 iOS-charts 来实现折线图。我坚持使用多种颜色作为 xAxis 标签和每个数据点的值。

https://github.com/danielgindi/Charts

对于 xAxis,我需要具有两种不同颜色的 NSAttributedString,这是使用的代码。无法弄清楚如何执行此操作。

    xChart.drawLabelsEnabled = true
    xChart.labelCount = 20
    xChart.labelFont = SomeFont
    xChart.labelTextColor = UIColor.white        
    xChart.labelPosition = .bottom
    xChart.labelHeight = 52.0
    xChart.granularityEnabled = true
    xChart.granularity = 1
    xChart.valueFormatter = IndexAxisValueFormatter(values: self.weeks)

每个数据点的 valueTextColor 同样如此

    let lineChartData = LineChartData(dataSets: dataSets)
    self.lineChart.data = lineChartData

    // Enables Text above Circle - Color and Font
    lineChartData.setDrawValues(true)
    lineChartData.setValueTextColor(.white)        
    lineChartData.setValueFont(some font)

并在 Int

中使用值格式化程序

这就是我想要用两种不同颜色的绿色圆圈实现的

这就是我得到的

谁能解决这个问题?

@CodeChanger 的回答解决了一个问题,期待图片底部的另一个问题19 Jun

根据您的要求,ChartDataSet 中有一个 属性 名为“valueColors”。

请检查下面的代码以根据自定义条件更改您的值颜色您可以更改您的值的颜色。

let chartDataSet = LineChartDataSet(values: dataEntries, label: label)
chartDataSet.valueColors = [UIColor(red: 0.192, green: 0.686, blue: 0.980, alpha: 1.00),
                                    UIColor(red: 0.212, green: 0.863, blue: 0.318, alpha: 1.00),
                                    UIColor(red: 0.996, green: 0.867, blue: 0.275, alpha: 1.00),
                                    UIColor(red: 0.980, green: 0.090, blue: 0.157, alpha: 1.00)]

通过这个你可以改变你的值文本的颜色。