使用ios图表的线图swift 3

问题描述:

我正在使用ios chart在Swift 3中实现线图。就像在Swift的早期版本中一样,我们有构造函数将x值绑定到折线图,但在Swift 3中似乎没有这样的情况?使用ios图表的线图swift 3

如果有人有一些输入,请帮助。

请关心在Release Notes

  • 所有数据集的构造已改为迁移说明 - 他们不走X-索引数组了。
  • 所有入门构造发生了变化 - 他们需要在X和Y的一个

基本上,X值现在从条目拍摄。

如果要更改在x轴上显示的值,可以更改xAxis.axisMinimumxAxis.axisMaximum并使用xAxis.valueFormatter对其进行格式化。

请尝试此操作以获取您的XAxis值。

import UIKit 
import Charts 

class LineChartViewController : UIViewController { 
    @IBOutlet weak var lineChartView: LineChartView! 
    override func viewDidLoad() { 
     super.viewDidLoad() 

     let populationData :[Int : Double] = [ 
      1990 : 123456.0, 
      2000 : 233456.0, 
      2010 : 343456.0 
     ] 

     let ySeries = populationData.map { x, y in 
      return ChartDataEntry(x: Double(x), y: y) 
     } 

     let data = LineChartData() 
     let dataset = LineChartDataSet(values: ySeries, label: "Hello") 
     dataset.colors = [NSUIColor.red] 
     data.addDataSet(dataset) 

     self.lineChartView.data = data 

     self.lineChartView.gridBackgroundColor = NSUIColor.white 
     self.lineChartView.xAxis.drawGridLinesEnabled = false; 
     self.lineChartView.xAxis.labelPosition = XAxis.LabelPosition.bottom 
     self.lineChartView.chartDescription?.text = "LineChartView Example" 
    } 

    override open func viewWillAppear(_ animated: Bool) { 
     self.lineChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.0) 
    } 
} 

由于 斯利拉姆

+0

http://stackoverflow.com/questions/41979926/how-to-achieve -track-on-swift-3x请帮助我吗? –

+0

@ShriRam,如何设置数据集颜色?因为line =“dataset.colors = [NSUIColor.red]”不受影响 –

夫特3:

实施例与条形图:

import UIKit 
import Charts 

class StatistiqueSafetyCheckViewController: UIViewController { 

    @IBOutlet weak var lineChartView: LineChartView! 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     let ys1 = Array(1..<10).map { x in return sin(Double(x)/2.0/3.141 * 1.5) } 
     let ys2 = Array(1..<10).map { x in return cos(Double(x)/2.0/3.141) } 

     let yse1 = ys1.enumerated().map { x, y in return LineChartDataEntry(x: Double(x), y: y) } 
     let yse2 = ys2.enumerated().map { x, y in return LineChartDataEntry(x: Double(x), y: y) } 

     let data = LineChartData() 
     let ds1 = LineChartDataSet(values: yse1, label: "Hello") 
     ds1.colors = [NSUIColor.red] 
     data.addDataSet(ds1) 

     let ds2 = LineChartDataSet(values: yse2, label: "World") 
     ds2.colors = [NSUIColor.blue] 
     data.addDataSet(ds2) 

     self.lineChartView.data = data 
     self.lineChartView.gridBackgroundColor = NSUIColor.white 
     self.lineChartView.chartDescription?.text = "Linechart Demo" 
    } 

    override open func viewWillAppear(_ animated: Bool) { 
     self.lineChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.0) 
    } 
}