[英]Apply gradient in pie chart - iOS charts library
我在Swift中使用Charts庫創建了一個餅圖。
當我試圖通過CGColor來制作圖表的顏色時,它不接受它。
以下是我當前代碼的樣子:
let colorLV1 = [color.heatWheelOrange, color.heatWheelOrange, color.heatWheelSkyBlue]
let chartDataSetLV1 = setChartDataset(dataEntries: dataEntriesLV1, colorCode: colorLV1, valueTextColor: UIColor.black, fontFormat: fontMedium)
func setChartDataset(dataEntries : [PieChartDataEntry], colorCode : [UIColor], valueTextColor : UIColor, fontFormat : NSUIFont) -> PieChartDataSet {
let chartDataSet = PieChartDataSet(values: dataEntries, label: "")
chartDataSet.colors = colorCode
chartDataSet.sliceSpace = 1
chartDataSet.selectionShift = 0
chartDataSet.valueTextColor = valueTextColor
chartDataSet.valueFont = fontFormat
return chartDataSet;
}
要顯示漸變,我將colorCode : [UIColor]
更改為CGColor
。 但是它會引發錯誤。
有沒有辦法可以使用圖表庫在Swift中將顏色更改為漸變?
如果您還沒有https://github.com/viccalexander/Chameleon,我建議您查看ChameleonFramework
我已經將它與圖表一起用於條形圖上的漸變,但我認為它可以用餅圖的類似方式工作。 使用ChameleonFramework,我的代碼看起來像這樣;
let color1 = UIColor(hex: 0x79D3DB)
let color2 = UIColor(hex: 0x5773D3)
let gradientColor = UIColor(gradientStyle: UIGradientStyle.topToBottom, withFrame: barChartView.frame, andColors: [color1, color2])
var gradientColors = Array(repeating: gradientColor, count: 7)
chartDataSet.colors = gradientColors as! [NSUIColor]
這應該可以防止你不得不處理UIColor> CGColor轉換問題。 希望有所幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.