AAChartKit-Swift-Pro icon indicating copy to clipboard operation
AAChartKit-Swift-Pro copied to clipboard

xrange类型的图表支持隐藏Y轴段无数据的那行吗?

Open Maxcucurbit opened this issue 1 year ago • 2 comments

红框内的是没数据的,有什么办法隐藏它吗? 1712027011965

Maxcucurbit avatar Apr 02 '24 03:04 Maxcucurbit

   public class var xrangeData: [Any] {
        func getSingleGroupCategoryDataElementArrayWithY(_ y: Int) -> [Any] {
            var dataArr = [Any]()
            
            var x = 0
            var x2 = x + Int(arc4random()) % 10
            for _ in 0 ..< 50 {
                var dataElementDic = [String:Any]()
                dataElementDic["x"] = x
                dataElementDic["x2"] = x2
                dataElementDic["y"] = y
                dataArr.append(dataElementDic)
                x = x2 + Int(arc4random()) % 1000
                x2 = x + Int(arc4random()) % 2000
            }
            return dataArr
        }
        
        var dataArr = [Any]()
        for y in 0 ..< 20 {
            let data = getSingleGroupCategoryDataElementArrayWithY(y)
            for dataElement in data {
                dataArr.append(dataElement)
            }
        }
        return dataArr
    }

参考 demo 中生成 xrange 图表测试数据的示例代码, 应该是需要你自己过滤数据数据源:

  • data 数组中 xx2 的值相等的元素 dataElementDic过滤掉

AAChartModel avatar Apr 02 '24 03:04 AAChartModel

   public class var xrangeData: [Any] {
        func getSingleGroupCategoryDataElementArrayWithY(_ y: Int) -> [Any] {
            var dataArr = [Any]()
            
            var x = 0
            var x2 = x + Int(arc4random()) % 10
            for _ in 0 ..< 50 {
                var dataElementDic = [String:Any]()
                dataElementDic["x"] = x
                dataElementDic["x2"] = x2
                dataElementDic["y"] = y
                dataArr.append(dataElementDic)
                x = x2 + Int(arc4random()) % 1000
                x2 = x + Int(arc4random()) % 2000
            }
            return dataArr
        }
        
        var dataArr = [Any]()
        for y in 0 ..< 20 {
            let data = getSingleGroupCategoryDataElementArrayWithY(y)
            for dataElement in data {
                dataArr.append(dataElement)
            }
        }
        return dataArr
    }

参考 demo 中生成 xrange 图表测试数据的示例代码, 应该是需要你自己过滤数据数据源:

  • data 数组中 xx2 的值相等的元素 dataElementDic过滤掉

试过了,没有用,出现Y轴空档的情况是这样产生的,假设Y为1和3的时候都是有数据的,Y2没有数据就会一直空在那,并不会被隐藏掉

Maxcucurbit avatar Apr 02 '24 06:04 Maxcucurbit