iOS-Charts介绍
2016-10-12 本文已影响2456人
花前月下
今天介绍一个绘图框架 Charts的使用。这个框架绘图功能比较强大,用了一年多,现在准备写一系列文章来推荐一下.
- 语言: 它是基于Swift开发的一个绘图框架,支持OC语言混编,其Demo就是用OC来编写的.
-
集成版本:
Xcode 8.0 / Swift 3.0 (For Swift 2.3 support please use Charts 2.3.0)
iOS >= 8.0 (Use as an Embedded Framework)
tvOS >= 9.0
macOS >= 10.11 - **平台: **支持
iOS
、mac OS
、tv OS
、watch OS
,当然我想说它也支持Android
,但是Andriod平台下面的框架名称为 MPAndroidChart ,与 Charts属于同源框架,同步更新,Charts
的作者是 danielgindi,MPAndroidChart
的作者是Philipp Jahoda ,都是老外,也是比较强大,各有1W+的star数. - 支持的绘图类型:
-
折线图
**LineChart1 (带有数据类型的标注)**
**LineChart2**
**LineChart3 (cubic lines)**
**LineChart4 (渐变填充)** -
组合图表(多种类型的图表集合在同一组合图表下)
**Combined-Chart (柱状图和折线图的集合)** -
柱状图
**BarChart (带有数据类型标注)**
**BarChart (分组显示)**
**Horizontal-BarChart (水平状态下的显示)** -
饼状图
**PieChart (支持分区显示)** -
散点图
**ScatterChart** (正方形点、三角形点、圆点以及更多) -
蜡烛图 (K线图)
**CandleStickChart** -
气泡图
**BubbleChart** (被气泡区域覆盖的值) -
雷达图
**RadarChart** (蛛网图)
Charts
目前没有 关于 iOS/tvOS/macOS
版本的使用文档,它的API和 MPAndroidChart有95%同步.你可以在这里查看 MPAndroidChart的文档 wiki ,或者查看 ChartsDemo来学习和了解 Charts是如何使用的.
-
集成使用
-
CocoaPods Install: **
在你的Podfile
里面添加pod 'Charts'
, 'Charts' 是这个框架的名称.同时也支持 Realm, 在你的Podfile
**里面添加pod 'Charts/Realm''
即可. 当前的 Charts版本为 v2.3.0 - ** Carthage Install:**
github "danielgindi/Charts" == 2.2.5
github "danielgindi/Charts" ~> 2.2.5 -
CocoaPods Install: **
carthage build --no-skip-current && carthage archive Charts && carthage archive ChartsRealm
* **直接下载拖拽**
* 1. 将**`Charts.xcodeproj`**拖进项目中
![Snip20161011_2.png](http:https://img.haomeiwen.com/i313597/ce838afae9c1e1c1.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![Snip20161011_3.png](http:https://img.haomeiwen.com/i313597/7d14b545379a5289.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
* 2.将支持系统类型改一下,**Project -> Target -> BuildSetting -> Embedded Binaries"+"**,选择**Charts.framework**导入
![Snip20161011_4.png](http:https://img.haomeiwen.com/i313597/63d9f030a13f883a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![Snip20161011_6.png](http:https://img.haomeiwen.com/i313597/29d1b2e5257df7a0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
* 3.在使用的地方 **import Charts**
![Snip20161012_9.png](http:https://img.haomeiwen.com/i313597/b309c1c4a13c298d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
![Snip20161011_7.png](http:https://img.haomeiwen.com/i313597/3de374d7d50e5571.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
* 4.如果你的项目是 ObjC 项目,你需要在你的桥接头文件中导入, 通常使用 **YourProject-Swift.h**,例如在 **ChartsDemo**中,它是 **ChartsDemo-Swift.h**,不要尝试导入Demo中的**ChartsDemo-Swift.h**,根据你的项目名称来.
* 5.在 **`Build Options`**下,设置 **`Embedded Content Contains Swift Code`**