加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

[Swift通天遁地]三、手势与图表-(8)制作股市中常用的蜡烛图表

发布时间:2020-12-14 05:07:32 所属栏目:百科 来源:网络整理
导读:本文将演示如何制作股市中常用的蜡烛图表。 首先确保在项目中已经安装了所需的第三方库。 点击【Podfile】,查看安装配置文件。 1 platform :ios,‘12.0‘2 use_frameworks!3 4 target ‘DemoApp‘ do5 source ‘https://github.com/CocoaPods/Specs.git‘6 p

本文将演示如何制作股市中常用的蜡烛图表。

首先确保在项目中已经安装了所需的第三方库。

点击【Podfile】,查看安装配置文件。

1 platform :ios,‘12.0‘
2 use_frameworks!
3 
4 target ‘DemoApp‘ do
5     source ‘https://github.com/CocoaPods/Specs.git‘
6     pod ‘Charts‘
7 end

根据配置文件中的相关配置,安装第三方库。

然后点击打开【DemoApp.xcworkspace】项目文件。

为了更好的显示柱形图标需要调整模拟器的朝向。

【DemoApp】->【General】

->【Device Orientation】取消勾选【Portrait】肖像选项,使模拟器保持横向显示。

在项目导航区,打开视图控制器的代码文件【ViewController.swift】

 1 import UIKit
 2 //首先在当前的类文件中,引入已经安装的第三方类库
 3 import Charts
 4 
 5 class ViewController: UIViewController {
 6 
 7     override func viewDidLoad() {
 8         super.viewDidLoad()
 9         // Do any additional setup after loading the view,typically from a nib.
10         
11         //创建一个包含6个数字的数组,作为一天中的股市高位的数据
12         let highs: [Double] = [1801.6,1762.1,1740.9,1726.7,1725.9,1736.2]
13         //创建一个包含6个数字的数组,作为一天中的股市低位的数据
14         let lows: [Double] = [1750.0,1718.8,1715.0,1695.5,1706.7,1722.7]
15         //创建一个包含6个数字的数组,作为一天中的股市开市时的数据
16         let opens: [Double] = [1801.4,1750.8,1725.8,1722.6,1727,4]
17         //创建一个包含6个数字的数组,作为一天中的股市结束时的数据
18         let closes: [Double] = [1752.6,1724.0,1720.6,1704.5,1724.5,1725.4]
19 
20         //在蜡烛图中,将使用这些数据,展示6天的股市数据。
21         
22         //创建一个图表数据记录类型的数组
23         var entries1: [ChartDataEntry] = Array()
24         //通过一个6次的循环
25         for (i,value) in highs.enumerated()
26         {
27             //将四个数组中的数字,添加到图表数据记录中。
28             entries1.append(CandleChartDataEntry(x: Double(i)+1,shadowH: value,shadowL: lows[i],open: opens[i],close: closes[i]))
29         }
30         
31         //创建第一个蜡烛图表数据集,并设置数据集的值域和标签文字
32         let dataSet = CandleChartDataSet(values: entries1,label: "Company A")
33         //设置数据集的填充颜色
34         dataSet.setColor(NSUIColor(red: 229/255,green: 140/255,blue: 154/255,alpha: 1))
35         //设置蜡烛的间距为0.3
36         dataSet.barSpace = 0.3
37         //设置蜡烛的负增长颜色为绿色
38         dataSet.decreasingColor = NSUIColor.green
39         //设置蜡烛的增长颜色为红色
40         dataSet.increasingColor = NSUIColor.red
41         //设置蜡烛的中性颜色为蓝色
42         dataSet.neutralColor = NSUIColor.blue
43         //设置蜡烛的阴影颜色为黑色
44         dataSet.shadowColor = NSUIColor.black
45         //设置阴影宽度为5.0
46         dataSet.shadowWidth = 5.0
47         
48         //创建一个指定显示区域
49         let rect = CGRect(x: 0,y: 10,width: 560,height: 280)
50         //利用该区域,创建一个蜡烛图表视图
51         let chart = CandleStickChartView(frame: rect)
52         //设置图表视图的背景颜色为无色
53         chart.backgroundColor = NSUIColor.clear
54         //设置图表所显示的数据内容
55         chart.data = CandleChartData(dataSets: [dataSet])
56         //设置图表中的数值的最大可视数量为200
57         chart.maxVisibleCount = 200
58         //设置水平坐标轴的标签位置
59         //共有:顶部、底部、双侧、顶部内侧、底部内侧五种。
60         chart.xAxis.labelPosition = .bottom
61         //设置图表的描述信息
62         chart.chartDescription?.text = "https://www.cnblogs.com/strengthen/"
63         
64         //将配置好的图表,添加到根视图中。
65         self.view.addSubview(chart)
66     }
67 
68     override func didReceiveMemoryWarning() {
69         super.didReceiveMemoryWarning()
70         // Dispose of any resources that can be recreated.
71     }
72 }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读