显示没有缩放线图的所有轴线

时间:2019-03-20 08:33:02

标签: ios swift xcode linechart ios-charts

您好,我想以折线图查看所有记录,但没有缩放,这时如果我不缩放,则不会显示您可以在屏幕快照中看到的行,请引导我This image is Without Zoom,例如,如果有有100条记录,我想绘制所有线条,但没有缩放,我需要查看它们

After zoom i can see lines

这就是我设置数据的方式

func setDataCount() {
  //  lineChartView.clear()
    var systolicArray :[ChartDataEntry] = []
    var diastolicArray:[ChartDataEntry] = []
    var pulseArray:[ChartDataEntry] = []
    systolicArray.removeAll()
    diastolicArray.removeAll()
    pulseArray.removeAll()

    let systolicSortingByDate = systolic.sorted(by: { $0.date > $1.date})
  //  print("---Dumb:\(dump(systolicSortingByDate))")
    for data in systolic {
        let timeIntervalForDate: TimeInterval = AppData.stringToDate(date: data.date).timeIntervalSince1970
        let systolicChart = ChartDataEntry(x: Double(timeIntervalForDate), y: Double(data.systolicReading), icon: #imageLiteral(resourceName: "editprofile"))
        systolicArray.append(systolicChart)
    }

    for data in diastolic {
        let timeIntervalForDate: TimeInterval = AppData.stringToDate(date: data.date).timeIntervalSince1970
        let diastolicChart = ChartDataEntry(x: Double(timeIntervalForDate), y: Double(data.diastolicReading), icon:  #imageLiteral(resourceName: "editprofile"))
        diastolicArray.append(diastolicChart)
    }

    for data in pulse {
        let timeIntervalForDate: TimeInterval = AppData.stringToDate(date: data.date).timeIntervalSince1970
        let diastolicChart = ChartDataEntry(x: Double(timeIntervalForDate), y: Double(data.pulseReading), icon:  #imageLiteral(resourceName: "editprofile"))
        pulseArray.append(diastolicChart)
    }

    print("SystolicCount:\(systolic.count)")
    let set1 = LineChartDataSet(values: systolicArray, label: "Systolic")
    set1.drawIconsEnabled = false
    set1.highlightLineDashLengths = [5, 2.5]
    set1.setColor(UIColor().HexToColor(hexString: "ff8a00"))
    set1.setCircleColor((UIColor().HexToColor(hexString: "ff8a00")))
    set1.lineWidth = 4
    set1.circleRadius = 3

    set1.drawCircleHoleEnabled = true
    set1.valueFont = .systemFont(ofSize: 9)
    set1.formLineDashLengths = [5, 2.5]
    set1.formLineWidth = 2
    set1.formSize = 15

    let set2 = LineChartDataSet(values: diastolicArray, label: "Diastolic")
    set2.drawIconsEnabled = false
    set2.setColor(.black)
    set2.setCircleColor(.black)
    set2.lineWidth = 4
    set2.circleRadius = 3
    set2.drawCircleHoleEnabled = true
    set2.valueFont = .systemFont(ofSize: 9)
    set2.formLineDashLengths = [5, 2.5]
    set2.formLineWidth = 2
    set2.formSize = 15

    let set3 = LineChartDataSet(values: pulseArray, label: "Pulse")
    set3.drawIconsEnabled = false
    set3.setColor(UIColor().HexToColor(hexString: "e83636"))
    set3.setCircleColor(UIColor().HexToColor(hexString: "e83636"))
    set3.lineWidth = 4
    set3.circleRadius = 3
    set3.drawCircleHoleEnabled = true
    set3.valueFont = .systemFont(ofSize: 9)
    set3.formLineDashLengths = [5, 2.5]
    set3.formLineWidth = 2
    set3.formSize = 15

    lineChartView.rightAxis.enabled = true
    lineChartView.xAxis.setLabelCount(systolicArray.count, force: false)
    let data = LineChartData(dataSets: [set1,set2,set3])
    lineChartView.data = data
    let xAxisValue = lineChartView.xAxis
    xAxisValue.valueFormatter = axisFormatDelegate
    xAxisValue.setLabelCount(4, force: false)
    lineChartView.animate(xAxisDuration: 3, yAxisDuration: 3)
 //   lineChartView.xAxis.granularity = 0.5

}

0 个答案:

没有答案