2012-07-17 4 views
0

여러 개의 산점도가있는 그래프를 디자인하고 있습니다. 산점도는 데이터에 대한 각 세트마다 변경됩니다. 색상별로 산점도를 구별하려고하지만 몇 가지 문제가 있습니다.코어 플롯 : 분산 형 플롯의 무작위 색상

현재 배열의 각 객체에 대한 산점도를 만드는 for 루프가 있습니다. for 루프 내에서 임의의 숫자를 기반으로 색상을 설정합니다.

lineStyle.lineColor = [CPTColor colorWithComponentRed : ((arc4random() % 255) /255.0) 녹색 : ((arc4random() % 255) /255.0) 파랑 : ((arc4random() % 255) /255.0) alpha : 1.0];

때때로 작동하지만 색상이 다른 색상과 구별하기가 너무 어려울 수도 있고 완전히 흰색 일 수도 있습니다. 임의의 색상을 생성하는 더 좋은 방법이 있습니까 (파이 차트에서 색상을 생성하는 방식과 비슷할 수 있습니다)?

답변

1

정말이 질문에 코어 플롯이 특정 적이 있다고 생각하지 않습니다. 프로그래밍 방식으로 색 구성표를 생성하는 것만 큼 중요합니다. 수행하는 방법에 대한 아이디어로

보다 더 순수한 임의의 숫자, 내가 그것을 할 것입니다 방법에 대한 heres는 약간의 거의 사이비 코드 : 나를 위해

float red = 0; 
float blue = 0; 
float green = 0; 
while(need more colors){ 
    float colorToInc = (arc4Random()%100)/100; 
    float incValue = (arc4Random()%100)/500;//value between 0 and .2 
    if(colorToInc < .3){ 
     red += incValue; 
     if(red > 1) 
      red -= 1; 
    }else if(colorToInc < .7){ 
     green += incValue; 
     if(green > 1) 
      green -= 1; 
    }else{ 
     blue += incValue; 
     if(blue > 1) 
      blue -= 1; 
    } 
    newcolor = [color with red:red blue:blue green:green]; 
} 
0

다음 작품 :

red = (arc4random()%100)/100.0; 
green = (arc4random()%100)/100.0; 
blue = (arc4random()%100)/100.0; 
[UIColor colorWithRed:red green:green blue:blue alpha:1]; 
관련 문제