如何在 ios-charts 中更改 PieChart 中的 CenterText 字体?

How to change CenterText Font in PieChart in ios-charts?

我想更改饼图的中心文本字体和字体大小。我想让它在中心圆内尽可能大。是否有任何板载功能可以帮助我更改字体和字体大小,或者我是否必须覆盖某些框架 类?

在文档中没有找到任何有用的信息:(

这是我的基本图表格式化方法:

    func setAttributes(view: PieChartView){
    view.legend.enabled = true
    view.descriptionText = ""
    view.userInteractionEnabled = false
    view.drawSliceTextEnabled = false
    view.animate(xAxisDuration: 2.0, yAxisDuration: 2.0, easingOption: ChartEasingOption.EaseInOutBack)
}

此致!

饼图中居中的文本在 PieChartView 中称为 centerAttributedText。它是NSAttributedText,因此您可以定义许多自定义属性。

您可以简单地更改其字体和大小,如下所示:

centerText = @"Whatever you like";

[centerText setAttributes:@{
                            NSFontAttributeName: [UIFont fontWithName:@"HelveticaNeue-Light" size:12.f],
                            NSParagraphStyleAttributeName: paragraphStyle
                            } range:NSMakeRange(0, centerText.length)];

pieChartView.centerAttributedText = centerText;

它在Objective-C,但你应该很容易翻译成swift,因为你只需要关心属性

Swift 3 您可以使用此代码更改 swift 中的字体 3.

    let myAttribute = [ NSFontAttributeName: UIFont(name: "IranSansMobile", size: 15.0)! ]
    let myAttrString = NSAttributedString(string: "My String", attributes: myAttribute)

    chart.centerAttributedText = myAttrString

swift 5

  var pieChartView = PieChartView()
    ...

     let myAttrString = NSAttributedString(string: "My String", attributes: nil)
     pieChartView.centerAttributedText = myAttrString