LiteChart輕量級(jí)數(shù)據(jù)可視化圖表框架
LiteChart 是一款使用Swift開(kāi)發(fā),基于UIKit、面向iOS平臺(tái)的輕量級(jí)數(shù)據(jù)可視化圖表框架;只需少量代碼,即可創(chuàng)建顯示精美、動(dòng)畫(huà)流暢、高度自定義且易于移植的圖表。
(展示圖片和動(dòng)畫(huà)效果請(qǐng)見(jiàn)文檔,GitHub中提供了中英文支持)
特性:
1. 覆蓋面廣。目前支持七種類型的圖表,包括常用的雷達(dá)圖、氣泡圖、散點(diǎn)圖、折線圖、柱狀圖、餅圖和漏斗圖;
2. 高性能動(dòng)畫(huà)。使用異步動(dòng)畫(huà)繪制,動(dòng)畫(huà)效果流暢;
3. 支持兩種動(dòng)畫(huà)類型。目前支持基礎(chǔ)動(dòng)畫(huà)和彈簧動(dòng)畫(huà),但漏斗圖、餅狀圖、折線圖、雷達(dá)圖出于動(dòng)畫(huà)效果的考慮,不支持彈簧動(dòng)畫(huà)效果;用戶可控制動(dòng)畫(huà)的暫停、重播、繼續(xù)和結(jié)束控制;
4. 細(xì)致的用戶自定義。除了基本的圖表標(biāo)題、x軸y軸、單位值等,還可以自定義參考線、各組件顏色配置、圖例樣式、圖表顯示方向等等;
5. 廣泛的數(shù)據(jù)支持。折線圖、散點(diǎn)圖、氣泡圖支持負(fù)數(shù)輸入,所有圖表沒(méi)有最大數(shù)據(jù)量限制;
6. 簡(jiǎn)便的使用方法。使用聲明式語(yǔ)法,無(wú)需關(guān)心底層代碼實(shí)現(xiàn),只需賦值相關(guān)屬性,即可完成自定義圖表構(gòu)建;
7. 顏色適配暗黑模式。調(diào)用合適的顏色初始化方法,快捷配置圖表的暗黑顯示。
代碼示例(以餅圖為例):
var pieInterface = LiteChartPieChartInterface(inputDatas: [(90, .init(lightUIColor: UIColor(red: 2/255, green: 211/255, blue: 180/255, alpha: 1))), (60, .init(lightUIColor: UIColor(red: 0, green: 95/255, blue: 151/255, alpha: 1))), (45, .init(lightUIColor: UIColor(red: 255/255, green: 165/255, blue: 180/255, alpha: 1)))]) // 初始化餅圖,傳入數(shù)據(jù)和顏色
pieInterface.inputLegendTitles = ["2019", "2020", "2021"] //設(shè)置圖例內(nèi)容
pieInterface.displayDataMode = .percent //設(shè)置數(shù)據(jù)顯示格式
var interface = LiteChartViewInterface(contentInterface: pieInterface)
interface.isShowLegendTitles = true //是否顯示圖例
interface.isShowChartTitleString = true //是否顯示圖表標(biāo)題
interface.chartTitleString = "年度費(fèi)用" //圖表標(biāo)題內(nèi)容
interface.chartTitleColor = .init(lightUIColor: UIColor(sRGB3PRed: 62, green: 62, blue: 62))
interface.chartTitleDisplayLocation = .top //圖表標(biāo)題顯示位置
let backgroundView = try! LiteChartView(interface: interface)
self.view.addSubview(backgroundView) //添加到視圖中
backgroundView.snp.updateConstraints{ //設(shè)置約束
make in
make.width.equalToSuperview()
make.center.equalToSuperview()
make.height.equalTo(300)
}