Skip to content

Commit

Permalink
Made these bar demos reuse the dataset and keep styling
Browse files Browse the repository at this point in the history
  • Loading branch information
danielgindi committed Apr 10, 2016
1 parent 82945a8 commit 150c03b
Show file tree
Hide file tree
Showing 8 changed files with 190 additions and 106 deletions.
30 changes: 20 additions & 10 deletions ChartsDemo/Classes/Demos/AnotherBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -104,16 +104,26 @@ - (void)setDataCount:(int)count range:(double)range
[xVals addObject:[@((int)((BarChartDataEntry *)yVals[i]).value) stringValue]];
}

BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.colors = ChartColorTemplates.vordiplom;
set1.drawValuesEnabled = NO;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];

_chartView.data = data;
BarChartDataSet *set1 = nil;
if (_chartView.data.dataSetCount > 0)
{
set1 = (BarChartDataSet *)_chartView.data.dataSets[0];
set1.yVals = yVals;
[_chartView notifyDataSetChanged];
}
else
{
set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.colors = ChartColorTemplates.vordiplom;
set1.drawValuesEnabled = NO;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
30 changes: 20 additions & 10 deletions ChartsDemo/Classes/Demos/BarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -127,16 +127,26 @@ - (void)setDataCount:(int)count range:(double)range
[yVals addObject:[[BarChartDataEntry alloc] initWithValue:val xIndex:i]];
}

BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.barSpace = 0.35;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
BarChartDataSet *set1 = nil;
if (_chartView.data.dataSetCount > 0)
{
set1 = (BarChartDataSet *)_chartView.data.dataSets[0];
set1.yVals = yVals;
[_chartView notifyDataSetChanged];
}
else
{
set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.barSpace = 0.35;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
30 changes: 20 additions & 10 deletions ChartsDemo/Classes/Demos/HorizontalBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -124,16 +124,26 @@ - (void)setDataCount:(int)count range:(double)range
[yVals addObject:[[BarChartDataEntry alloc] initWithValue:val xIndex:i]];
}

BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.barSpace = 0.35;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
BarChartDataSet *set1 = nil;
if (_chartView.data.dataSetCount > 0)
{
set1 = (BarChartDataSet *)_chartView.data.dataSets[0];
set1.yVals = yVals;
[_chartView notifyDataSetChanged];
}
else
{
set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"DataSet"];
set1.barSpace = 0.35;

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
52 changes: 33 additions & 19 deletions ChartsDemo/Classes/Demos/MultipleBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -124,25 +124,39 @@ - (void)setDataCount:(int)count range:(double)range
[yVals3 addObject:[[BarChartDataEntry alloc] initWithValue:val xIndex:i]];
}

BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals1 label:@"Company A"];
[set1 setColor:[UIColor colorWithRed:104/255.f green:241/255.f blue:175/255.f alpha:1.f]];

BarChartDataSet *set2 = [[BarChartDataSet alloc] initWithYVals:yVals2 label:@"Company B"];
[set2 setColor:[UIColor colorWithRed:164/255.f green:228/255.f blue:251/255.f alpha:1.f]];

BarChartDataSet *set3 = [[BarChartDataSet alloc] initWithYVals:yVals3 label:@"Company C"];
[set3 setColor:[UIColor colorWithRed:242/255.f green:247/255.f blue:158/255.f alpha:1.f]];

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];
[dataSets addObject:set2];
[dataSets addObject:set3];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
data.groupSpace = 0.8;
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
BarChartDataSet *set1 = nil, *set2 = nil, *set3 = nil;
if (_chartView.data.dataSetCount > 0)
{
set1 = (BarChartDataSet *)_chartView.data.dataSets[0];
set2 = (BarChartDataSet *)_chartView.data.dataSets[1];
set3 = (BarChartDataSet *)_chartView.data.dataSets[2];
set1.yVals = yVals1;
set2.yVals = yVals2;
set3.yVals = yVals3;
[_chartView notifyDataSetChanged];
}
else
{
set1 = [[BarChartDataSet alloc] initWithYVals:yVals1 label:@"Company A"];
[set1 setColor:[UIColor colorWithRed:104/255.f green:241/255.f blue:175/255.f alpha:1.f]];

set2 = [[BarChartDataSet alloc] initWithYVals:yVals2 label:@"Company B"];
[set2 setColor:[UIColor colorWithRed:164/255.f green:228/255.f blue:251/255.f alpha:1.f]];

set3 = [[BarChartDataSet alloc] initWithYVals:yVals3 label:@"Company C"];
[set3 setColor:[UIColor colorWithRed:242/255.f green:247/255.f blue:158/255.f alpha:1.f]];

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];
[dataSets addObject:set2];
[dataSets addObject:set3];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
data.groupSpace = 0.8;
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
46 changes: 28 additions & 18 deletions ChartsDemo/Classes/Demos/NegativeStackedBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -113,24 +113,34 @@ - (void)setChartData
[yValues addObject:[[BarChartDataEntry alloc] initWithValues:@[ @-5, @6 ] xIndex: 9]];
[yValues addObject:[[BarChartDataEntry alloc] initWithValues:@[ @-1, @2 ] xIndex: 10]];

BarChartDataSet *set = [[BarChartDataSet alloc] initWithYVals:yValues label:@"Age Distribution"];
set.valueFormatter = _chartView.rightAxis.valueFormatter;
set.valueFont = [UIFont systemFontOfSize:7.f];
set.axisDependency = AxisDependencyRight;
set.barSpace = 0.4f;
set.colors = @[
[UIColor colorWithRed:67/255.f green:67/255.f blue:72/255.f alpha:1.f],
[UIColor colorWithRed:124/255.f green:181/255.f blue:236/255.f alpha:1.f]
];
set.stackLabels = @[
@"Men", @"Women"
];

NSArray *xVals = @[ @"0-10", @"10-20", @"20-30", @"30-40", @"40-50", @"50-60", @"60-70", @"70-80", @"80-90", @"90-100", @"100+" ];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSet:set];
_chartView.data = data;
[_chartView setNeedsDisplay];
BarChartDataSet *set = nil;
if (_chartView.data.dataSetCount > 0)
{
set = (BarChartDataSet *)_chartView.data.dataSets[0];
set.yVals = yValues;
[_chartView notifyDataSetChanged];
}
else
{
set = [[BarChartDataSet alloc] initWithYVals:yValues label:@"Age Distribution"];
set.valueFormatter = _chartView.rightAxis.valueFormatter;
set.valueFont = [UIFont systemFontOfSize:7.f];
set.axisDependency = AxisDependencyRight;
set.barSpace = 0.4f;
set.colors = @[
[UIColor colorWithRed:67/255.f green:67/255.f blue:72/255.f alpha:1.f],
[UIColor colorWithRed:124/255.f green:181/255.f blue:236/255.f alpha:1.f]
];
set.stackLabels = @[
@"Men", @"Women"
];

NSArray *xVals = @[ @"0-10", @"10-20", @"20-30", @"30-40", @"40-50", @"50-60", @"60-70", @"70-80", @"80-90", @"90-100", @"100+" ];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSet:set];
_chartView.data = data;
[_chartView setNeedsDisplay];
}
}

- (void)didReceiveMemoryWarning
Expand Down
36 changes: 23 additions & 13 deletions ChartsDemo/Classes/Demos/PositiveNegativeBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -149,19 +149,29 @@ - (void)setChartData
}
}

BarChartDataSet *set = [[BarChartDataSet alloc] initWithYVals:values label:@"Values"];
set.barSpace = 0.4f;
set.colors = colors;
set.valueColors = colors;

BarChartData *data = [[BarChartData alloc] initWithXVals:dates dataSet:set];
[data setValueFont:[UIFont systemFontOfSize:13.f]];

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
formatter.maximumFractionDigits = 1;
[data setValueFormatter:formatter];

_chartView.data = data;
BarChartDataSet *set = nil;
if (_chartView.data.dataSetCount > 0)
{
set = (BarChartDataSet *)_chartView.data.dataSets[0];
set.yVals = values;
[_chartView notifyDataSetChanged];
}
else
{
set = [[BarChartDataSet alloc] initWithYVals:values label:@"Values"];
set.barSpace = 0.4f;
set.colors = colors;
set.valueColors = colors;

BarChartData *data = [[BarChartData alloc] initWithXVals:dates dataSet:set];
[data setValueFont:[UIFont systemFontOfSize:13.f]];

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
formatter.maximumFractionDigits = 1;
[data setValueFormatter:formatter];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
28 changes: 19 additions & 9 deletions ChartsDemo/Classes/Demos/SinusBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -117,15 +117,25 @@ - (void)setDataCount:(int)count
[entries addObject:[[BarChartDataEntry alloc] initWithValue:sinf(M_PI * (i % 128) / 64.0) xIndex:i]];
}

BarChartDataSet *set = [[BarChartDataSet alloc] initWithYVals:entries label:@"Sinus Function"];
set.barSpace = 0.4;
[set setColor:[UIColor colorWithRed:240/255.f green:120/255.f blue:124/255.f alpha:1.f]];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSet:set];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];
[data setDrawValues:NO];

_chartView.data = data;
BarChartDataSet *set = nil;
if (_chartView.data.dataSetCount > 0)
{
set = (BarChartDataSet *)_chartView.data.dataSets[0];
set.yVals = entries;
[_chartView notifyDataSetChanged];
}
else
{
set = [[BarChartDataSet alloc] initWithYVals:entries label:@"Sinus Function"];
set.barSpace = 0.4;
[set setColor:[UIColor colorWithRed:240/255.f green:120/255.f blue:124/255.f alpha:1.f]];

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSet:set];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:10.f]];
[data setDrawValues:NO];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down
44 changes: 27 additions & 17 deletions ChartsDemo/Classes/Demos/StackedBarChartViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -119,23 +119,33 @@ - (void)setDataCount:(int)count range:(double)range
[yVals addObject:[[BarChartDataEntry alloc] initWithValues:@[@(val1), @(val2), @(val3)] xIndex:i]];
}

BarChartDataSet *set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"Statistics Vienna 2014"];
set1.colors = @[ChartColorTemplates.vordiplom[0], ChartColorTemplates.vordiplom[1], ChartColorTemplates.vordiplom[2]];
set1.stackLabels = @[@"Births", @"Divorces", @"Marriages"];

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
formatter.maximumFractionDigits = 1;
formatter.negativeSuffix = @" $";
formatter.positiveSuffix = @" $";

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:7.f]];
[data setValueFormatter:formatter];

_chartView.data = data;
BarChartDataSet *set1 = nil;
if (_chartView.data.dataSetCount > 0)
{
set1 = (BarChartDataSet *)_chartView.data.dataSets[0];
set1.yVals = yVals;
[_chartView notifyDataSetChanged];
}
else
{
set1 = [[BarChartDataSet alloc] initWithYVals:yVals label:@"Statistics Vienna 2014"];
set1.colors = @[ChartColorTemplates.vordiplom[0], ChartColorTemplates.vordiplom[1], ChartColorTemplates.vordiplom[2]];
set1.stackLabels = @[@"Births", @"Divorces", @"Marriages"];

NSMutableArray *dataSets = [[NSMutableArray alloc] init];
[dataSets addObject:set1];

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
formatter.maximumFractionDigits = 1;
formatter.negativeSuffix = @" $";
formatter.positiveSuffix = @" $";

BarChartData *data = [[BarChartData alloc] initWithXVals:xVals dataSets:dataSets];
[data setValueFont:[UIFont fontWithName:@"HelveticaNeue-Light" size:7.f]];
[data setValueFormatter:formatter];

_chartView.data = data;
}
}

- (void)optionTapped:(NSString *)key
Expand Down

0 comments on commit 150c03b

Please sign in to comment.