swift开发笔记13 - 添加图表(饼状图)

前端之家收集整理的这篇文章主要介绍了swift开发笔记13 - 添加图表(饼状图)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

使用图表类库:http://www.appcoda.com/ios-charts-api-tutorial/

下载其类库,解压缩有找到charts目录,拷贝到项目文件夹根目录下,如下图:


在charts目录中把Charts.xcodeproj 文件拖到Xcode项目中如下图:


点击 上图link binary with libraries 中的加号,添加 charts.framework到项目中,至此完成类库添加

在viewcontroller中引入类库:

import Charts

添加饼状图示例:

  1. import UIKit
  2. import Charts
  3. class ProjectOutlineViewController: UIViewController {
  4. // var cubChartView: BarChartView!
  5. var pieChartView: PieChartView!
  6. override func viewDidLoad() {
  7. super.viewDidLoad()
  8. pieChartView = PieChartView(frame: CGRect(x: 0,y: 0,width: 300,height: 500))
  9. view.addSubview(pieChartView)
  10. // Do any additional setup after loading the view.
  11. let months = ["Jan","Feb","Mar","Apr","May","Jun"]
  12. let unitsSold = [20.0,4.0,6.0,3.0,12.0,16.0]
  13. setChart(months,values: unitsSold)
  14. }
  15.  
  16. override func didReceiveMemoryWarning() {
  17. super.didReceiveMemoryWarning()
  18. // Dispose of any resources that can be recreated.
  19. }
  20. func setChart(dataPoints: [String],values: [Double]) {
  21. var dataEntries: [ChartDataEntry] = []
  22. for i in 0..<dataPoints.count {
  23. let dataEntry = ChartDataEntry(value: values[i],xIndex: i)
  24. dataEntries.append(dataEntry)
  25. }
  26. let pieChartDataSet = PieChartDataSet(yVals: dataEntries,label: "Units Sold")
  27. let pieChartData = PieChartData(xVals: dataPoints,dataSet: pieChartDataSet)
  28. pieChartView.data = pieChartData
  29. var colors: [UIColor] = []
  30. for i in 0..<dataPoints.count {
  31. let red = Double(arc4random_uniform(256))
  32. let green = Double(arc4random_uniform(256))
  33. let blue = Double(arc4random_uniform(256))
  34. let color = UIColor(red: CGFloat(red/255),green: CGFloat(green/255),blue: CGFloat(blue/255),alpha: 1)
  35. colors.append(color)
  36. }
  37. pieChartDataSet.colors = colors
  38. /*
  39. let lineChartDataSet = LineChartDataSet(yVals: dataEntries,label: "Units Sold")
  40. let lineChartData = LineChartData(xVals: dataPoints,dataSet: lineChartDataSet)
  41. lineChartView.data = lineChartData
  42. */
  43. } }

饼状图效果如下:



添加折线图和柱状图 的方法详见类库说明:

http://www.appcoda.com/ios-charts-api-tutorial/

猜你在找的Swift相关文章