文章目录
- Charts:iOS 平台的图表绘制库
Charts:iOS 平台的图表绘制库
Charts 是一个用于 iOS、tvOS 和 macOS 的开源图表库,支持 8 种图表类型,GitHub 上收获了 28k+ Star。
Charts 的由来比较简单。Android 端有一个很流行的图表库 MPAndroidChart,但 iOS 端一直没有对等的方案。作者用 Swift 重写了整套图表逻辑,尽量保持 API 与 Android 版本一致,这样同时做两端开发的团队只需要学一次。
支持的图表类型:
- LineChart(折线图):支持平滑曲线、渐变填充
- BarChart(柱状图):支持分组数据、水平方向
- PieChart(饼图):支持选中高亮
- ScatterChart(散点图):方形、三角、圆形等多种标记
- CandleStickChart(K 线图):面向金融数据
- BubbleChart(气泡图):气泡面积映射数值
- RadarChart(雷达图)
- CombinedChart(组合图):折线、柱状、散点等叠加显示
核心能力包括:双轴支持、手势缩放与拖拽、构建动画、自定义颜色模板和图例、数值高亮弹窗、导出 PNG/JPEG、限制线标注。数据源方面支持从 Realm.io 数据库直接读取。
平台和工具链要求:
- Xcode 14 / Swift 5.7
- iOS >= 12.0、tvOS >= 12.0、macOS >= 10.13
- Swift 和 ObjC 项目均可集成
安装方式
CocoaPods:
pod'DGCharts'Carthage:
github "ChartsOrg/Charts" ~> 5.1.0Swift Package Manager:
dependencies:[.package(url:"https://github.com/ChartsOrg/Charts.git",.upToNextMajor(from:"5.1.0"))]基本用法
- 将 DGCharts.xcodeproj 拖入你的工程
- 在 Target 设置的 Frameworks 部分添加 DGCharts.framework
- 代码中引入
@import DGCharts
ObjC 项目需要额外在 Build Options 中开启 “Always Embed Swift Standard Libraries”。
版本升级注意
5.0 版本有不兼容改动。库名从 Charts 改为 DGCharts,原因是 Apple 推出了自己的 Swift Charts 框架,名字冲突。升级时需要替换所有引用,并参考官方迁移指南调整 API 调用。
文档方面,由于 API 与 Android 版本 95% 相同,可以直接参考 MPAndroidChart 的 Wiki。项目还附带了 iOS 和 macOS 的 Demo 工程,里面有各种图表类型的示例代码,跑一遍就能上手。
droidChart 的 Wiki。项目还附带了 iOS 和 macOS 的 Demo 工程,里面有各种图表类型的示例代码,跑一遍就能上手。