我想實現從IOS-圖表餅圖庫的一切是偉大的工作,但是我缺少從圖中的傳說 -IOS-圖表餅圖的標籤(傳說)丟失
這裏是我的代碼 -
// This is the delegate method for creating data for chart
func offDaysDidLoaded(controller: DataModel,chartArray:[PFObject]) {
let formatter = NSDateFormatter()
formatter.dateFormat = "MMM"
dataDict = [:]
for od in chartArray {
let date = od["Date"] as! NSDate
let month = formatter.stringFromDate(date)
if self.dateDict.indexForKey(month) != nil {
self.dateDict[month]! += 1.0
}else{
self.dateDict.updateValue(1.0, forKey: month)
}
}
let dataPointArray = Array(dateDict.keys)
let valuesArray = Array(dateDict.values)
pieChartView.data = nil
pieChartView.backgroundColor = UIColor.grayColor()
setChart(dataPointArray, values: valuesArray)
}
func setChart(dataPoints: [String], values: [Double]) {
var dataEntries: [ChartDataEntry] = []
for i in 0..<dataPoints.count {
let dataEntry = ChartDataEntry(value: values[i], xIndex: i)
dataEntries.append(dataEntry)
}
let pieChartDataSet = PieChartDataSet(yVals: dataEntries, label: "Months")
let pieChartData = PieChartData(xVals: dataPoints, dataSet: pieChartDataSet)
pieChartData.setDrawValues(false)
pieChartView.data = pieChartData
pieChartView.animate(xAxisDuration: NSTimeInterval(5))
var colors: [UIColor] = []
for _ in 0..<dataPoints.count {
let red = Double(arc4random_uniform(256))
let green = Double(arc4random_uniform(256))
let blue = Double(arc4random_uniform(256))
let color = UIColor(red: CGFloat(red/255), green: CGFloat(green/255), blue: CGFloat(blue/255), alpha: 1)
colors.append(color)
}
pieChartDataSet.colors = colors
}
我在here見過類似的問題,並建立和運行,在問題中使用也沒有顯示在圖表下方的任何圖例餅圖。任何幫助或指針將非常感激。
感謝
你有什麼改變嗎?似乎傳說正在顯現,但被某種東西掩蓋了。您可以先調試圖例。順便說一句,嘗試用ChartsDemo和你的數據重現這一點。如果ChartsDemo正常工作,那麼你def改變了一些東西 – Wingzero
我沒有改變任何東西,傳說並沒有被某些東西掩蓋,因爲當我打印「pieChartView.legend.labels」時,我得到空數組[],這意味着傳說數據是錯過了我,因爲來自同一個數據源或數據集的其他數據可用,即月份和日期。爲什麼只有傳奇標籤失蹤?我提供了我用於提供實際問題數據的方法。 –
嘗試使用ChartsDemo重現 – Wingzero