Ios 在Swift 4中集成LineChartView

Ios 在Swift 4中集成LineChartView,ios,swift,charts,linechart,ios-charts,Ios,Swift,Charts,Linechart,Ios Charts,我正在使用iOS图表库进行集成,我必须创建以下图表: 到目前为止,我已经做到了这一点: 我在这里面临三个问题: xAxis中缺少二月和六月文本 必须在图表中添加左右空格 删除图表中可见的“说明标签”文本 是否可以在月份上方添加小标记,如图所示,用于在xAxis中指示月份? 实施代码: months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"] let unitsSold = [50.0, 25.0, 50.0, 75.0, 100.0, 75.

我正在使用iOS图表库进行集成,我必须创建以下图表:

到目前为止,我已经做到了这一点:

我在这里面临三个问题:

  • xAxis
    中缺少二月和六月文本
  • 必须在图表中添加左右空格
  • 删除图表中可见的“说明标签”文本
是否可以在月份上方添加小标记,如图所示,用于在
xAxis
中指示月份?

实施代码:

months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
let unitsSold = [50.0, 25.0, 50.0, 75.0, 100.0, 75.0]

setChart(dataPoints: months, values: unitsSold)
以及
setChart
方法:

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

    for i in 0..<dataPoints.count {
        let dataEntry = ChartDataEntry(x: Double(i), y: values[i], data: dataPoints[i] as AnyObject)
        dataEntries.append(dataEntry)
    }

    let chartDataSet = LineChartDataSet(values: dataEntries, label: nil)
    chartDataSet.circleRadius = 5
    chartDataSet.circleHoleRadius = 2
    chartDataSet.drawValuesEnabled = false

    let chartData = LineChartData(dataSets: [chartDataSet])


    lineChartView.data = chartData

    lineChartView.xAxis.valueFormatter = IndexAxisValueFormatter(values: months)
    lineChartView.xAxis.labelPosition = .bottom
    lineChartView.xAxis.drawGridLinesEnabled = false
    lineChartView.xAxis.avoidFirstLastClippingEnabled = true

    lineChartView.rightAxis.drawAxisLineEnabled = false
    lineChartView.rightAxis.drawLabelsEnabled = false

    lineChartView.leftAxis.drawAxisLineEnabled = false
    lineChartView.pinchZoomEnabled = false
    lineChartView.doubleTapToZoomEnabled = false
    lineChartView.legend.enabled = false
}
func设置图(数据点:[字符串],值:[双精度]){
变量数据项:[ChartDataEntry]=[]
对于0中的i.1)为了避免拥挤
图表
通过缩放在图形轴上显示有限的数据,用户可以看到整个数据

2)左右间距:从界面生成器中给出左右约束

3)要隐藏描述,可以使用以下代码

lineChartView.chartDescription?.text = " "

希望这对您有所帮助

我也遇到了同样的问题。我这样做是为了解决这个问题:

ineChartView.xAxis.valueFormatter = IndexAxisValueFormatter(values: months)
ineChartView.xAxis.setLabelCount(months.count, force: true)

希望有帮助。

你的第三个答案成功了。谢谢你。我没有得到你的第一个答案-你的意思是二月和六月的文本更大,这就是它不可见的原因。对于左和右空格,我所说的是从图表的开头开始。在上图中,你可以看到
Jan
之前和之后的一些空格ode>Jun