2016-10-13 1 views
0

Я использую io-Charts (https://github.com/danielgindi/Charts/). Мне нужно будет отобразить гистограмму и линейную диаграмму в комбинированном графике. xAxis будет отображать значения от значений от -12 до 12 и у диапазонов значений от -3000 до 3000. Если штриховая диаграмма отображается правильно для отрицательных y и x, линейная диаграмма не отображается для значений, меньших 0. Как предложено в по следующей ссылке,Комбинированные диаграммы в iOS-диаграмме - Отрицательные значения для линейной диаграммы не отображаются

Negative values not displayed in line charts using ios-charts using Swift

Я поставил _chartView.xAxis.axisMinimum = -12; // начать с -12, а не 0.

Пожалуйста найдете ниже текущего графика, enter image description here

заходящего для представления диаграммы и набора данных для линейной диаграммы,

- (LineChartData *)generateLineData 

{ LineChartData * d = [[LineChartData alloc] init];

NSMutableArray *entries = [[NSMutableArray alloc] init]; 

[entries addObject:[[ChartDataEntry alloc] initWithX:0 y:-3000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:0.5 y:-999]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:1 y:-1000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:2 y:-1000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:3.5 y:-1300]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:4 y:-900]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:5 y:-1200]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:6 y:-2500]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:8 y:-1300]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:9 y:1400]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:11 y:-900]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:12 y:-3000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-1 y:-1000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-2 y:-1300]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-4 y:-1100]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-5 y:-1500]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-6 y:-1500]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-8 y:-1100]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-9 y:-1000]]; 
[entries addObject:[[ChartDataEntry alloc] initWithX:-11 y:-1500]]; 

LineChartDataSet *set = [[LineChartDataSet alloc] initWithValues:entries label:@"Line DataSet"]; 
[set setColor:[UIColor colorWithRed:240/255.f green:238/255.f blue:70/255.f alpha:1.f]]; 
set.lineWidth = 2.5; 
set.fillColor = [UIColor colorWithRed:240/255.f green:238/255.f blue:70/255.f alpha:1.f]; 
set.mode = LineChartModeHorizontalBezier; 
set.drawValuesEnabled = NO; 
set.drawCirclesEnabled = NO; 
set.axisDependency = AxisDependencyLeft; 

[d addDataSet:set]; 

return d; 

}

Я не уверен, если я пропускаю некоторые настройки для chartview.

ответ

0

Исправлено это путем переупорядочения набора данных линейной диаграммы с значениями x от -12 до 12, в моем исходном вопросе набор данных был смешанным и не был в правильном порядке для линейной диаграммы.