在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,就可以了
至此,準(zhǔn)備工作完畢
三、畫圖
畫圖部分,首先得有數(shù)據(jù)集,dataset,那么創(chuàng)建一個空的數(shù)據(jù)集先,這是一個最終會展示在圖中的數(shù)組
var lineChartEntry = [ChartDataEntry]()
然后可以往里邊放數(shù)據(jù),這里也就是坐標(biāo)(x,y)
let value =ChartDataEntry(x, y) ? //這個新建一個坐標(biāo)點
lineChartEntry.append(value) ? //插入到數(shù)據(jù)集中
這樣完事兒后,我有了所有在linechartentry所需要的所有點以后,現(xiàn)在就要創(chuàng)建一個line了。
let line1 = LineChartDataSet(values: lineChartEntry, label: “HAHA”)
還可以設(shè)置顏色
line1.colors= [NSUIColor.blue]
這是最終的展示在圖中的object,可以這么理解,這個object可以包含很多條line
let data =LineChartData()
//+一條line,還可以+很多
data.addDataSet(line1)
//最終它把這個object賦給chartview,這個操作會更新view
lineChartView.data= data
這些操作可以都寫在viewdidload里,就可以看到一個最基礎(chǔ)的直線圖了