/ / Charts3.0-8を超える値の場合、すべてのxAxisラベルを表示できない-Swift-swift、charts

Charts3.0 - 8以上の値の場合、すべてのxAxisラベルを表示することはできません - スウィフト - スウィフト、チャート

xAxisの9つのカテゴリラベルを持つ棒グラフを作成しました。 [「食品」、「住宅ローン」、「保険」、「ガソリン」、「節約」、「電車」、「その他」、「本と雑誌」、「駐車場」]

ただし、チャートでは次のように表示されます。 食品、保険、貯蓄、その他、駐車場

誰もそれを解決する方法を知っていますか?

ここでxAxisを設定するためのソースコード

func setChart(dataPoints: [String], values: [Double]) {
var dataEntries: [BarChartDataEntry] = []

for i in 0..<dataPoints.count {

let value = values[i] as Double
let dataEntry = BarChartDataEntry(x: Double(i), y:value)
dataEntries.append(dataEntry)
}

let chartDataSet = BarChartDataSet(values: dataEntries, label: "Total Amount")

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)
}

chartDataSet.colors = colors
chartDataSet.colors = ChartColorTemplates.joyful()
barChartView.chartDescription?.text = ""

barChartView.xAxis.labelPosition = .bottom
barChartView.xAxis.drawGridLinesEnabled = false
barChartView.xAxis.granularityEnabled = true
barChartView.xAxis.granularity = 1.0
barChartView.xAxis.decimals = 0

let chartData = BarChartData()
chartData.addDataSet(chartDataSet)
barChartView.data = chartData
barChartView.xAxis.valueFormatter = self

let format = NumberFormatter()
format.numberStyle = .decimal
let formatter = DefaultValueFormatter(formatter: format)
chartData.setValueFormatter(formatter)
barChartView.animate(xAxisDuration: TimeInterval(1))
}

ここに画像の説明を入力

回答:

回答№1は1

ラベルカウントを設定するだけです。 barChartView.xAxis.labelCount = dataPoints.count