在图表的 PieChartView 中格式化自定义图例条目?
Formatting Custom Legend Entries in Chart's PieChartView?
我在为 pieChartView 设置自定义图例条目的格式时遇到困难。我需要图例条目与饼图上的条目不同(为什么我需要自定义)。以下内容有效,但任何大于 6 号文本(太小)的文本都会导致重叠。如何调整图例大小以适应小文本?
(屏幕截图为 10 号文字)
let l = self.pieChartView.legend
let formSize = CGFloat.nan
let legendEntry1 = LegendEntry(label: zonesArrayOfString[0], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone1Color) //set formSize, formLizeWidth, and formLineDashLengths to .nan to use default
let legendEntry2 = LegendEntry(label: zonesArrayOfString[1], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone2Color)
let legendEntry3 = LegendEntry(label: zonesArrayOfString[2], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone3Color)
let legendEntry4 = LegendEntry(label: zonesArrayOfString[3], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone4Color)
let legendEntry5 = LegendEntry(label: zonesArrayOfString[4], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone5Color)
let customLegendEntries = [legendEntry1, legendEntry2, legendEntry3, legendEntry4, legendEntry5]
l.setCustom(entries: customLegendEntries)
l.orientation = .horizontal
l.textColor = UIColor.white
l.font = myFonts.openSansRegular.of(size: 6)
我能够通过使用图例的 xEntrySpace
属性 使它看起来更好,它允许您自定义为图例中的给定条目分配的 space,尽管操作为以及字体大小和表单大小我能够正确格式化所有图例条目。
我在为 pieChartView 设置自定义图例条目的格式时遇到困难。我需要图例条目与饼图上的条目不同(为什么我需要自定义)。以下内容有效,但任何大于 6 号文本(太小)的文本都会导致重叠。如何调整图例大小以适应小文本?
(屏幕截图为 10 号文字)
let l = self.pieChartView.legend
let formSize = CGFloat.nan
let legendEntry1 = LegendEntry(label: zonesArrayOfString[0], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone1Color) //set formSize, formLizeWidth, and formLineDashLengths to .nan to use default
let legendEntry2 = LegendEntry(label: zonesArrayOfString[1], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone2Color)
let legendEntry3 = LegendEntry(label: zonesArrayOfString[2], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone3Color)
let legendEntry4 = LegendEntry(label: zonesArrayOfString[3], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone4Color)
let legendEntry5 = LegendEntry(label: zonesArrayOfString[4], form: .default, formSize: formSize, formLineWidth: .nan, formLineDashPhase: .nan, formLineDashLengths: .none, formColor: zone5Color)
let customLegendEntries = [legendEntry1, legendEntry2, legendEntry3, legendEntry4, legendEntry5]
l.setCustom(entries: customLegendEntries)
l.orientation = .horizontal
l.textColor = UIColor.white
l.font = myFonts.openSansRegular.of(size: 6)
我能够通过使用图例的 xEntrySpace
属性 使它看起来更好,它允许您自定义为图例中的给定条目分配的 space,尽管操作为以及字体大小和表单大小我能够正确格式化所有图例条目。