多个标签xAxis iOS-Charts
问题描述:
我有麻烦与图书馆,我找不到解决方案,希望你能帮助。多个标签xAxis iOS-Charts
当我把数据放在图表上时,关于绘制坐标轴和形状的一切都很顺利,但是我的xAxis上的标签自我繁殖,我不知道为什么,看我让我看看我的代码和问题的图片,听起来很奇怪但为了显示我用一个数据创建了一个barChart的问题。
func setChart(values: [Double]) {
let formato:BarChartFormatter = BarChartFormatter()
formato.setArray(self.listadoLabels)
let xaxis:XAxis = XAxis()
max = values.maxElement()
barChartView.noDataText = "You need to provide data for the chart."
var dataEntries: [BarChartDataEntry] = []
for i in 0..<values.count {
let dataEntry = BarChartDataEntry(x: Double(i), y:values[i])
dataEntries.append(dataEntry)
formato.stringForValue(Double(i), axis: xaxis)
}
xaxis.valueFormatter = formato
let chartDataSet = BarChartDataSet(values: dataEntries, label: "Units Sold")
chartDataSet.colors = ChartColorTemplates.joyful()
barChartView.fitBars = true //Para que las barras inicial y final se muestren completas
barChartView.xAxis.valueFormatter = xaxis.valueFormatter
barChartView.xAxis.labelPosition = .Bottom
barChartView.leftAxis.axisMinimum = 0
barChartView.leftAxis.axisMaximum = max + 2
barChartView.rightAxis.enabled = false
barChartView.drawValueAboveBarEnabled = false
barChartView.descriptionText = ""
barChartView.xAxis.drawGridLinesEnabled = false
barChartView.animate(xAxisDuration: 1.0, yAxisDuration: 1.0)
let chartData = BarChartData()
chartData.addDataSet(chartDataSet)
barChartView.data = chartData
}
大部分的代码只是造型,我已经为x轴格式一类,因为你需要一个把标签在x轴,这是代码:
public func stringForValue(value: Double, axis: AxisBase?) -> String {
return "Label1"
}
我只是发送5512一个值,并且结果,不注重segmentTab和按钮:
答
我在你同样的情况,我不能”找不到一个确切的解决方案,但对我来说这一个工作:
barChart?.xAxis.wordWrapEnabled = true
barChart?.xAxis.setLabelCount(5, force: true)
我也集中我的酒吧,以匹配标签
let dataEntry = BarChartDataEntry(x: Double(i) + 0.5, y: Double(count))
在我的情况,我的图表不能有超过5条等等我使用了5,但是你可以传递一个带有条数的变量,并将“LabelCount”设置为该数字,当你放大时它仍然会重复标签,但它们不会重叠并且看起来不那么糟糕。
我知道这是不是正是你要找的答案,但希望它有助于
顺便说,读你的代码,我看你用了“fitBars”有拳头和最后一棒的大小相同,没有你做任何其他事情来实现这一目标?因为在我的情况下,钳工不工作 – Ponchotg