Swift:图表填充线及更多

rob*_*n.s 4 charts graph line ios swift

我很快就提出了这个库,叫做:Charts https://github.com/danielgindi/ios-charts

我尽力添加了一些功能,但是对于其他功能(在下面列出),我不知道该怎么做。任何帮助,将不胜感激。

我要执行的操作: -填充折线图(完成)-在坐标处删除圆。(完成)-删除所有轴条(Y + X)(待办事项)-删除yAxis图例(待办事项)-在线上,每x次显示值(待办事项)

我做了什么:

图表图

触摸屏上方的yValue 额外显示-基于yValue的渐变填充-动画(完成)

这是我的实际代码:

func setChart(dataPoints: [String], values: [Double]) {

    //print(dataPoints)
    //print(values)
    var dataEntries: [ChartDataEntry] = []

    for i in 0..<dataPoints.count {
        let dataEntry = ChartDataEntry(value: values[i], xIndex: i)
        dataEntries.append(dataEntry)
    }

    //Coloring
    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)


    let lineChartDataSet = LineChartDataSet(yVals: dataEntries, label: "Temperatures")
    let lineChartData = LineChartData(xVals: dataPoints, dataSet: lineChartDataSet)
    //draw as line
    lineChartDataSet.drawCubicEnabled = true
    //fill graph
    lineChartDataSet.drawFilledEnabled = true
    //color graph
    lineChartDataSet.colors = [color]

    lineChartView.data = lineChartData
    lineChartView.xAxis.labelPosition = .Bottom
    lineChartView.animate(xAxisDuration: 2.0, yAxisDuration: 2.0, easingOption: .EaseInCubic)
    //remove coordinate circles
    lineChartDataSet.drawCirclesEnabled = false
    //remove xAxis line
    lineChartView.xAxis.drawGridLinesEnabled = false
    lineChartView.xAxis.drawAxisLineEnabled = false

    //remove description
    lineChartView.descriptionText = ""


}
Run Code Online (Sandbox Code Playgroud)

我希望:删除所有轴条(Y + X)删除行上的yAxis图例,每x次显示一次值,并在触摸图形时显示该值。

谢谢你的时间。

Kar*_*lez 5

要删除所有轴条和图例,您可以这样做:

这是我的代码的一部分:

popularityChartView.descriptionText = ""
    popularityChartView.noDataText = Constants.messages.NO_POPULARITY_CHART_DATA
    popularityChartView.noDataTextDescription = ""
    popularityChartView.backgroundColor = UIColor(red:236/255, green:236/255,blue:236/255,alpha:1)

    popularityChartView.xAxis.drawAxisLineEnabled = false
    popularityChartView.xAxis.drawLimitLinesBehindDataEnabled = false
    popularityChartView.xAxis.gridColor = UIColor(red:220/255, green:220/255,blue:220/255,alpha:1)
    popularityChartView.xAxis.gridLineWidth = 0.5
    popularityChartView.xAxis.drawGridLinesEnabled = true
    popularityChartView.xAxis.drawLabelsEnabled = false

    popularityChartView.leftAxis.removeAllLimitLines()
    popularityChartView.leftAxis.drawZeroLineEnabled = false
    popularityChartView.leftAxis.zeroLineWidth = 0
    popularityChartView.leftAxis.drawTopYLabelEntryEnabled = false
    popularityChartView.leftAxis.drawAxisLineEnabled = false
    popularityChartView.leftAxis.drawGridLinesEnabled = false
    popularityChartView.leftAxis.drawLabelsEnabled = false
    popularityChartView.leftAxis.drawLimitLinesBehindDataEnabled = false

    popularityChartView.rightAxis.removeAllLimitLines()
    popularityChartView.rightAxis.drawZeroLineEnabled = false
    popularityChartView.leftAxis.zeroLineWidth = 0
    popularityChartView.rightAxis.drawTopYLabelEntryEnabled = false
    popularityChartView.rightAxis.drawAxisLineEnabled = false
    popularityChartView.rightAxis.drawGridLinesEnabled = false
    popularityChartView.rightAxis.drawLabelsEnabled = false
    popularityChartView.rightAxis.drawLimitLinesBehindDataEnabled = false
Run Code Online (Sandbox Code Playgroud)

我的图表

希望能帮助到你。