2010-08-27 2 views
0

У меня есть некоторые данные, скажем, количество продаж месяца. Я хочу создать дискретный график, показывающий количество проданных предметов каждый день.Лучший способ создать график из данных

Единственный способ, которым я могу это сделать, это создать некоторые CGRects, а затем загрузить подпункты с этими прямоугольниками в качестве фрейма и покрасить их фон. Столбцы графа сделаны небольшим цветным представлением.

Считаете ли вы, что это может быть правильный путь? Или вы думаете, что есть лучшие подходы?

ответ

1

Хорошо, я думаю, что лучший способ - использовать CoreGraphics!

Вот код, я написал, может быть, может быть полезным для кого-то ...

- (void)drawRect:(CGRect)rect { 

// Get the graphics context 
CGContextRef ctx = UIGraphicsGetCurrentContext(); 

int max = arc4random()%5+5; 
int unit = floor(155/max); 
int h; 

for (int i=0; i<24; i++) { 

    int numero = arc4random()%max; 
    if (numero != 0) { 
     h = (max-numero)*unit; 

     // Draw the bars 
     CGContextSetRGBFillColor(ctx, 130, 0, 180, 1); 
     CGContextFillRect(ctx, CGRectMake(4+i*25.6, 9+h, 19, 155-h)); 
     CGContextFillEllipseInRect(ctx, CGRectMake(4+i*25.6, 2+h, 19, 14)); 

     // Draw the number 
     NSString *newString = [[NSString alloc]initWithFormat:@"%d",numero]; 
     CGContextSetRGBFillColor(ctx, 255, 255, 255, 0.7); 
     CGPoint newPoint = {8+i*25.6, 2+h}; 
     UIFont *font = [UIFont systemFontOfSize:20]; 
     [newString drawAtPoint:newPoint withFont:font]; 

    } 

} 

}

Смежные вопросы