带有固定 X 轴标签的折线图,如 iOS 中的 healthkit 图

Line chart with fix X axis label like healthkit graph in iOS

你好我想创建类似于healthkit的折线图。例如,我在 X 轴(7 月 14 日、15 日、16 日、17 日)、Y 轴(0、50、100)和(x,y)格式的数据集上是((7 月 15 日,30 日),(7 月 17 日, 80)) 我尝试关注库

https://github.com/Boris-Em/BEMSimpleLineGraph/tree/master/Sample%20Project/SimpleLineChart

https://github.com/core-plot/core-plot

但都根据数据集填充 x 轴。即所有库仅根据填充的 x ​​轴和 y 轴标签为数据集获取参数。您能否推荐任何其他库,通过它我可以实现与上面折线图类似的效果。提前致谢。

即便如此,您也可以在现有图表中完成

考虑下面的例子。 - {[0,5],[1,5],[3,5],[4,5]}

看到 2 没有值,所以折线图将绘制 0-5 到 1-5,然后绘制间隙,然后 3-5 到 4-5。

希望现在你能想通了。

如果您愿意,请继续阅读下面的图表库。

https://github.com/danielgindi/Charts

折线图有很多属性,如剪辑、比例、最小值、最大值等。

使用您可以实现的属性。

https://github.com/danielgindi/Charts/issues/533

已编辑答案

经过一些变通,我找到了方法。

Download sample code

let months = ["July 14", "15", "16", "17", "18", "19", "20"]
let unitsSold = [0.0, 0.0, 0.0, 100.0, 25.0, 50.0, 75.0]

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

请参阅随附的屏幕截图

最后我解决了我的问题 https://github.com/Boris-Em/BEMSimpleLineGraph/tree/master/Sample%20Project/SimpleLineChart 当我没有输入值时(7 月 15 日,BEMNullGraphValue)。

在 PNChart 中创建一组您要跳过的索引值。如果数组包含索引值,则将条件绘图函数放在数据数组的 for 循环的开头,然后继续。