在iOS有一個很好用的第三方lib叫做Charts屉栓,作者是Daniel Cohen Gindi舷蒲,基于安卓版的mpandroidchart。
這個庫包含8種不同類型的圖表友多,可以自由定制牲平。
分為三步走吧。
一域滥、安裝
這里我使用的是cocoapods安裝纵柿,在你工程的文件夾里,pod init
然后在產(chǎn)生的Podfile里增加這么一行:pod 'Charts'
然后pod install启绰,就好啦
二昂儒、引入
安裝完了,會產(chǎn)生一個xcworkspace委可,把這個打開渊跋,不要打開xcodeproj咯
然后,回到你要畫圖的viewcontroller里着倾,import Charts
這里我是出現(xiàn)了無法找到的錯誤拾酝,于是到你target的build setting的Search Path這里:User Header Search Path,+一個值“$(PODS_ROOT)”卡者,并選擇recursive蒿囤,就可以了
至此,準備工作完畢
三虎眨、畫圖
畫圖部分蟋软,首先得有數(shù)據(jù)集,dataset嗽桩,那么創(chuàng)建一個空的數(shù)據(jù)集先岳守,這是一個最終會展示在圖中的數(shù)組
var lineChartEntry = [ChartDataEntry]()
然后可以往里邊放數(shù)據(jù),這里也就是坐標(x碌冶,y)
let value =ChartDataEntry(x, y) ? //這個新建一個坐標點
lineChartEntry.append(value) ? //插入到數(shù)據(jù)集中
這樣完事兒后湿痢,我有了所有在linechartentry所需要的所有點以后,現(xiàn)在就要創(chuàng)建一個line了。
let line1 = LineChartDataSet(values: lineChartEntry, label: “HAHA”)
還可以設置顏色
line1.colors= [NSUIColor.blue]
這是最終的展示在圖中的object譬重,可以這么理解拒逮,這個object可以包含很多條line
let data =LineChartData()
//+一條line,還可以+很多
data.addDataSet(line1)
//最終它把這個object賦給chartview臀规,這個操作會更新view
lineChartView.data= data
這些操作可以都寫在viewdidload里滩援,就可以看到一個最基礎的直線圖了