• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

iOS Charts(Daniel Gindi) - 如何在 Swift 中设置双 y 轴双图形线

[复制链接]
菜鸟教程小白 发表于 2022-12-11 17:11:19 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在使用 Charts (Git Repo of Daniel Gindi's) .这是我的单 y 轴单折线图代码:当我尝试在 y 轴上添加第二条线时,它会抛出错误“无法将 'LineChartDataSet' 类型的值转换为预期的参数类型 'String'”

import UIKit
import Charts

class PulseController: UIViewController, ChartViewDelegate {

    @IBOutlet var lineChartView: LineChartView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
        let unitsSold = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0]

        setChart(months, values: unitsSold)
    }

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

        var dataEntries: [ChartDataEntry] = []

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

        let lineChartDataSet = LineChartDataSet(yVals: dataEntries, label: "ulse")
        let lineChartData = LineChartData(xVals: dataPoints, dataSet: lineChartDataSet)
        lineChartView.data = lineChartData

        lineChartView.animate(xAxisDuration: 2.0)
        lineChartView.animate(yAxisDuration: 2.5)

        lineChartDataSet.setCircleColor(UIColor.init(red: 14/255, green: 165/255, blue: 150/255, alpha: 1))

        lineChartDataSet.setColor(UIColor.init(red: 14/255, green: 165/255, blue: 150/255, alpha: 1))
    }
}



Best Answer-推荐答案


    @IBOutlet var lineChartView: LineChartView!


    override func viewDidLoad() {
        super.viewDidLoad()

        let months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun"]
        let unitsSold1 = [20.0, 4.0, 6.0, 3.0, 12.0, 16.0]
        let unitsSold2 = [200.0, 400.0, 600.0, 300.0, 120.0, 160.0]

        setChart(months, values1: unitsSold1,values2:unitsSold2)

    }

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

        var dataEntries1: [ChartDataEntry] = []
        var dataEntries2: [ChartDataEntry] = []

        for i in 0..<dataPoints.count 
        {
            let dataEntry1 = ChartDataEntry(value: values1[i], xIndex: i)
            dataEntries1.append(dataEntry1)
            let dataEntry2 = ChartDataEntry(value: values2[i], xIndex: i)
            dataEntries2.append(dataEntry2)

        }



        let lineChartDataSet1 = LineChartDataSet(yVals: dataEntries1, label: "ulse1")
        let lineChartDataSet2 = LineChartDataSet(yVals: dataEntries2, label: "ulse2")

        var lineChartDataSets :[String]
        lineChartDataSets.append(lineChartDataSet1)
        lineChartDataSets.append(lineChartDataSet2)

        let lineChartData = LineChartData(xVals: dataPoints, dataSet: lineChartDataSets)
        lineChartView.data = lineChartData


        lineChartView.animate(xAxisDuration: 2.0)
        lineChartView.animate(yAxisDuration: 2.5)

        lineChartDataSets.setCircleColor(UIColor.init(red: 14/255, green: 165/255, blue: 150/255, alpha: 1))

        lineChartDataSets.setColor(UIColor.init(red: 14/255, green: 165/255, blue: 150/255, alpha: 1))


    }

关于iOS Charts(Daniel Gindi) - 如何在 Swift 中设置双 y 轴双图形线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38786518/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap