折线图填充颜色变暗

问题描述:

我想用一种填充颜色设置折线图,但由于某种原因,填充颜色变淡。折线图填充颜色变暗

enter image description here

两个我已经添加到屏幕的中部和折线图的填充颜色随机视图被设置为红色,但由于某些原因的图表的填充颜色是褪色。

可以在这里看到

@IBOutlet var liveChart : LineChartView! 
    override func viewDidLoad() { 
     super.viewDidLoad() 

     self.title = "Chart Tests" 

     configureChart(chart: liveChart) 

     var xAxis = [String]() 
     var yAxis = [Double]() 
     for _ in 0..<10 
     { 
      xAxis.append("") 
      let yVal = Double(randomBetweenNumbers(firstNum: 1.0, secondNum: 100.0)) 
      yAxis.append(yVal) 
     } 
     setData(xAxisArray: xAxis, yAxisArray: yAxis, chart: liveChart) 

     let testView = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100)) 
     testView.center = view.center 
     testView.backgroundColor = UIColor.red 
     view.addSubview(testView) 
    } 

    func randomBetweenNumbers(firstNum: CGFloat, secondNum: CGFloat) -> CGFloat{ 
     return CGFloat(arc4random())/CGFloat(UINT32_MAX) * abs(firstNum - secondNum) + min(firstNum, secondNum) 
    } 

    func configureChart(chart : LineChartView) 
    { 
     chart.chartDescription?.text = "" 
     chart.noDataText = "Loading Data" 
     chart.backgroundColor = UIColor.clear 

     chart.drawGridBackgroundEnabled = false 
     chart.dragEnabled = true 
     chart.rightAxis.enabled = false 
     chart.leftAxis.enabled = true 
     chart.doubleTapToZoomEnabled = false 
     chart.legend.enabled = false 
     chart.pinchZoomEnabled = true 
     chart.highlightPerTapEnabled = false 
     chart.highlightPerDragEnabled = false 

     chart.xAxis.enabled = false 
     chart.leftAxis.drawAxisLineEnabled = false 
     chart.leftAxis.drawGridLinesEnabled = false 
     chart.leftAxis.labelCount = 5 
     chart.leftAxis.forceLabelsEnabled = true 
    } 

    func setData(xAxisArray : [String], yAxisArray : [Double], chart : LineChartView) 
    { 
     var yVals1 : [ChartDataEntry] = [ChartDataEntry]() 
     if(xAxisArray.count > 0) 
     { 
      for i in 0 ..< xAxisArray.count 
      { 
       let chartEntry = ChartDataEntry(x: Double(i), y: yAxisArray[i], data: nil) 
       yVals1.append(chartEntry) 
      } 
     } 
     let set1: LineChartDataSet = LineChartDataSet(values: yVals1, label: "") 
     set1.fillColor = UIColor.red 
     set1.drawFilledEnabled = true 
     set1.drawCirclesEnabled = false 

     let data = LineChartData() 
     data.addDataSet(set1) 

     liveChart.data = data 
    } 

代码是有办法解决这一问题?或者这只是图表的填充颜色的工作方式?

编辑:

我使用

https://github.com/danielgindi/Charts

我假设你使用这个库: https://github.com/kevinbrewster/SwiftCharts

所以对于填充颜色 LineChartView自动设置阿尔法: https://github.com/kevinbrewster/SwiftCharts/blob/master/SwiftCharts/LineChart.swift#L758

尝试设置0数据属性设置

+0

没有我使用https://github.com/danielgindi/Charts – AdamM

+0

https://github.com/danielgindi/Charts/blob/master/Source/Charts/Data/Interfaces/ILineRadarChartDataSet .swift#L31 –

+0

Ahhh dam,没有意识到默认alpha被设置的很低。这样一个简单的修复。干杯 – AdamM