如何格式化xAxis标签iOS图表

如何格式化xAxis标签iOS图表,ios,swift,ios-charts,Ios,Swift,Ios Charts,我正在实现一个条形图,我已经成功地分配了数据和标签。然而,当我加载条形图时,它只显示我的标签的3/7,我不知道为什么 当我与图表交互时,标签会显示出来,但会出现故障 如果我没有很好地解释我自己,我很抱歉,但我已经上传了一个.gif显示我的问题 我真的需要一些关于xAxis上标签格式的帮助。非常感谢 提前谢谢 我想您已经使用了这个库()。。。我使用图表的委托方法设置了x轴 func ChartView() { xAxis.drawGridLinesEnabled = false

我正在实现一个条形图,我已经成功地分配了数据和标签。然而,当我加载条形图时,它只显示我的标签的3/7,我不知道为什么

当我与图表交互时,标签会显示出来,但会出现故障

如果我没有很好地解释我自己,我很抱歉,但我已经上传了一个.gif显示我的问题

我真的需要一些关于xAxis上标签格式的帮助。非常感谢

提前谢谢


我想您已经使用了这个库()。。。我使用图表的委托方法设置了x轴

func ChartView()
{  
    xAxis.drawGridLinesEnabled = false
    xAxis.drawLabelsEnabled = true
    xAxis.labelPosition = .Bottom
    xAxis.axisMinimum = 0.0
    xAxis.labelCount = ITEM_COUNT
    xAxis.granularity = 1.0
    xAxis.valueFormatter = self

    self.updateChartData()
}

func updateChartData()
{
    self.chartView.data = nil
    self.setChartData()
}


func generateLineData() -> LineChartData
{

    let d = LineChartData()
    let entries = NSMutableArray()
    var weightstr = String()
    var datestr = String()
entries.addObject(ChartDataEntry(x: Double(index), y: ( Double(dic[setvalue]as! String)!)))
let set = LineChartDataSet(values: entries  as? [ChartDataEntry]  , label: "X-title")
    set.setColor(colorWithHexString("#FE1643"))
    set.lineWidth = 2.5
    set.setCircleColor( UIColor.whiteColor())
    set.circleHoleColor = NSUIColor.greenColor()
    set.circleRadius = 5.0
    set.circleHoleRadius = 2.5
    set.fillColor = UIColor.redColor()
    set.mode = .HorizontalBezier
    set.valueTextColor = UIColor.lightGrayColor()
    set.drawValuesEnabled = true
    set.valueFont = UIFont(name: "Exo-Regular", size: FOntSIZE(10.0))!
    set.axisDependency = .Left
    d.addDataSet(set)
    return d
}

func setChartData()
    {
        let data = CombinedChartData()
        data.lineData = self.generateLineData()
        self.chartView.xAxis.axisMaximum = Double(months.count)-1
        self.chartView.data = data
    }

func chartValueSelected(chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight)
    {
        print("chartValueSelected")
    }

func chartValueNothingSelected(chartView: ChartViewBase)
{
    print("chartValueNothingSelected")
} 

func stringForValue(value: Double, axis: AxisBase?) -> String
{
    return months[Int(round(value)) % months.count] as! String
}

我尝试使用
stringForValue
方法,但它给出的结果与以前相同,我将调试传递给stringForValue()的值。根据我的经验,图表库将自行“选择”要请求格式化的值。因此,如果您的图表有x个值1,2,3,4,5,您可以在stringForValue()中放入一个简单的打印(值),以验证所有这些值的格式是否都被请求。@Alex我测试了
print(值)
方法,它打印了
0,1.0,2.0 3.0,4.0,5.0,6.0,7.0
我想我弄错了,因为我的标签数组是
让标签:[String]=“m”、“t”、“w”、“thu”、“fri”、“sat”、“sun”