使用danielgindi / Charts

时间:2017-08-09 22:25:57

标签: charts mpandroidchart

我尝试使用danielgindi/Charts创建条形图(基于MPAndroidChart)。我想使用多个数据集,但是当我尝试向BarChartView提供多个集合时,不会呈现任何条形图。

let barView = BarChartView()

let set1 = BarChartDataSet()
set1.addEntry(BarChartDataEntry(x: 1, y: 1))
let set2 = BarChartDataSet()
set2.addEntry(BarChartDataEntry(x: 2, y: 2))

barView.data = BarChartData(dataSets: [set1, set2])

contentView = barView

在上面的例子中,我希望显示两个条形图。但是,根本不会出现任何条形图。

如果我只提供一个数据集,那么图表将按预期呈现。

barView.data = BarChartData(dataSets: [set1])

1 个答案:

答案 0 :(得分:0)

问题是,对于多个组,x轴上条形的位置会发生变化。但是,轴最小值和最大值不会自动调整大小以适应新数据。必须手动调整它们的大小。例如:

let groupSpace = 0.3
let barSpace = 0.0
let groupWidth = barData.groupWidth(groupSpace: groupSpace, barSpace: barSpace)
columnView.xAxis.axisMinimum = 0
columnView.xAxis.axisMaximum = groupWidth * numOfEntriesPerSet
columnView.groupBars(fromX: 0, groupSpace: groupSpace, barSpace: barSpace)