★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10211300.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

目录:[Swift]通天遁地Swift

本文将演示如何制作散点图表。

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

点击【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 values1: [Double] = [8, 61, 81, 93, 52, 44 ]
13         let values2: [Double] = [76, 25, 20, 13, 52, 57]
14         let values3: [Double] = [55, 75, 28, 23, 45, 91]
15
16         //依次创建三个图表数据记录
17         var entries1: [ChartDataEntry] = Array()
18         var entries2: [ChartDataEntry] = Array()
19         var entries3: [ChartDataEntry] = Array()
20
21         //通过一个循环
22         for (i, value) in values1.enumerated()
23         {
24             //将第一个数组中的数字,添加到图表数据记录中。
25             //并依次设置两轴的数据
26             entries1.append(ChartDataEntry(x: Double(i), y: value))
27         }
28
29         //通过一个循环
30         for (i, value) in values2.enumerated()
31         {
32             //将第一个数组中的数字,添加到图表数据记录中。
33             //并依次设置两轴的数据
34             entries2.append(ChartDataEntry(x: Double(i), y: value))
35         }
36
37         //通过一个循环
38         for (i, value) in values3.enumerated()
39         {
40             //将第一个数组中的数字,添加到图表数据记录中。
41             //并依次设置两轴的数据
42             let de = ChartDataEntry(x: Double(i), y: value)
43             entries3.append(de)
44         }
45
46         //创建第一个数据集,并设置数据集的值域和标签文字
47         let dataSet = ScatterChartDataSet(values: entries1, label: "Company A")
48         //设置第一组的散点图的图标为三角形
49         dataSet.setScatterShape(.triangle)
50         //设置散点图表的尺寸为20
51         dataSet.scatterShapeSize = 20
52         //设置散点图表的填充颜色
53         dataSet.setColor(NSUIColor(red: 229/255, green: 140/255, blue: 154/255, alpha: 1))
54
55         //创建第二个数据集,并设置数据集的值域和标签文字
56         let dataSet2 = ScatterChartDataSet(values: entries2, label: "Company B")
57         //设置第二组的散点图的图标为方形
58         dataSet2.setScatterShape(.square)
59         //设置散点图表的填充颜色
60         dataSet2.setColor(NSUIColor(red: 243/255, green: 209/255, blue: 142/255, alpha: 1))
61
62         //创建第三个数据集,并设置数据集的值域和标签文字
63         let dataSet3 = ScatterChartDataSet(values: entries3, label: "Company C")
64         //设置第二组的散点图的图标为圆形
65         dataSet3.setScatterShape(.circle)
66         //设置散点图表的填充颜色
67         dataSet3.setColor(NSUIColor(red: 172/255, green: 234/255, blue: 254/255, alpha: 1))
68
69         //创建一个指定显示区域的散点图表视图
70         let chart = ScatterChartView(frame: CGRect(x: 0, y: 10, width: 560, height: 280))
71         //设置图表视图的背景颜色为无色
72         chart.backgroundColor = NSUIColor.clear
73         //设置散点图表所显示的数据内容
74         chart.data = ScatterChartData(dataSets: [dataSet,dataSet2,dataSet3])
75         //设置图表中的数值的最大可视数量为200
76         chart.maxVisibleCount = 200
77         //设置水平坐标轴的标签位置
78         //共有:顶部、底部、双侧、顶部内侧、底部内侧五种。
79         chart.xAxis.labelPosition = .bottom
80         //设置图表的描述信息
81         chart.chartDescription?.text = "strengthen"
82
83         //将配置好的图表添加到根视图中
84         self.view.addSubview(chart)
85     }
86
87     override func didReceiveMemoryWarning() {
88         super.didReceiveMemoryWarning()
89         // Dispose of any resources that can be recreated.
90     }
91 }

转载于:https://www.cnblogs.com/strengthen/p/10211300.html

[Swift通天遁地]三、手势与图表-(10)创建包含圆点、方形、三角形图标的散点图表...相关推荐

  1. [Swift通天遁地]九、拔剑吧-(9)创建支持缩放、移动、裁切的相机视图控制器

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  2. [Swift通天遁地]七、数据与安全-(1)XML文档的创建和解析

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  3. [Swift通天遁地]一、超级工具-(2)制作美观大方的环形进度条

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  4. [Swift通天遁地]五、高级扩展-(4)快速生成Invert、Mix、Tint、Shade颜色及调整饱和度阶...

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  5. [Swift通天遁地]八、媒体与动画-(13)CoreText框架实现图文混排

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  6. [Swift通天遁地]七、数据与安全-(19)使用Swift实现原生的SHA1加密

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  7. [Swift通天遁地]七、数据与安全-(12)使用Instruments Leaks工具检测内存泄露

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  8. [Swift通天遁地]五、高级扩展-(11)图像加载Loading动画效果的自定义和缓存

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

  9. [Swift通天遁地]一、超级工具-(13)使用PKHUD制作各种动态提示窗口

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...

最新文章

  1. mvn如何执行java代码
  2. Atitit.去除水印的方案
  3. Learning Deep Structured Semantic Models for Web Search using Clickthrough Data (DSSM)
  4. 前端学习 -- Css -- 属性选择器
  5. linux守护进程的编写
  6. MATLAB程序详细解析,遗传算法——matlab代码解析
  7. 游戏代理ip怎么设置_游戏代理怎么做
  8. 写给初学者:电气制图规范和图纸识读方法——第三期
  9. 花书《深度学习》代码实现:01 线性代数:基本概念+代码实现基本运算
  10. 浪潮服务器pxe安装操作系统,规划 PXE 启动的操作系统部署
  11. 主成分分析(PCA)与线性判别分析(LDA)的区别与联系
  12. 最近爆火的DDD到底是什么?一文带你落地DDD
  13. 如何做个人微信号营销,一个人人都能月入3000微信营销方法你真的知道吗?
  14. linux学习-执行cp命令时略过目录
  15. Dockerfile Registry WebUI 之 docker-registry-frontend 高级应用
  16. SAP-PP 主生产计划MPS
  17. ds18b20温度转换指令_DS18B20传感器温度转换指令( )。
  18. 2022普通人做抖音的红利在哪里
  19. Layer 图层圆角、边框 、底纹其他常用操作
  20. 快速搭建Android应用后台服务器

热门文章

  1. [SDN] mininet walkthrough
  2. jquery框架分析-构造jquery对象初步
  3. iOS中加载Flutter中的图片
  4. Javascript实现KMP算法
  5. 各种浏览器css不兼容的写法
  6. 【算法】—— 相邻两数的最大差值
  7. 第七天Python学习记录
  8. centos7 下 的lamp 的安装原创详细教程
  9. Android之AsyncTask学习笔记
  10. MVC中Controller弹出提示框