2013-07-03 4 views
0

iPhone 응용 프로그램에서 코어 플롯이있는 간단한 파이 차트를 시험 중입니다. 나는 사용 된 CPU의 백분율 인 값을 플롯하려고합니다. 방법 'numberForPlot'에서, 여기에 내가이 백분율 값입니다 핵심 플롯을 어떻게 알 수 있습니까코어 플롯 : 원형 차트의 백분율을

-(NSNumber *) numberForPlot:(CPTPlot *)plot 
        field:(NSUInteger)fieldEnum 
      recordIndex:(NSUInteger)index { 

    Health_Cpu *healthData = (Health_Cpu *) [dictHealth objectForKey:[self.arrayHealthKeys objectAtIndex:0]]; 
    if (CPTPieChartFieldSliceWidth == fieldEnum) { 
     return [NSNumber numberWithFloat:healthData.cpuUsage]; // In Percentage 
    } 
} 

을 작성한 것입니다 (값이 25.0 인 경우 즉, 다음은 25 %, 즉로 플롯합니다 파이 차트의 1/4 번째 색)? 자, 절대 숫자로 받아들이고 있습니다. 그래서 제가 한 것은 numberForPlot에서 하나의 값과 다른 값을 반환하는 것입니다 (100 값).

+0

파이의 1/4을 덮는 슬라이스를 만드는 방법이나 슬라이스에 백분율로 레이블을 지정하는 방법을 묻는 중입니까? –

+0

안녕하세요 에릭, 제 질문은 전자입니다 : "파이의 1/4을 덮는 슬라이스 만드는 법"? (number plot()에서 반환되는 숫자 25가 절대 수치가 아닌 백분율 일 뿐이라는 사실을 코어 플롯에게 알려주는 방법은 무엇입니까? – Jean

답변

0

슬라이스 너비를 25.0으로 설정하면 파이의 1/4을 차지하게되며 다른 슬라이스는 총 75.0이어야합니다. 각 슬라이스는 x/sum(x)에 의해 계산 된 전체 원의 일부를 차지합니다. 여기서 x은 슬라이스 폭 값이고 sum(x)은 모든 파이 슬라이스의 너비 합계입니다.

또는 파이 차트의 startAngleendAngle을 설정하십시오. 모든 슬라이스는 값에 비례하여 크기가 조정 된 두 각도 사이에 그려집니다. 이것은 어떤 값이라도 가질 수있는 하나의 슬라이스에서만 작동합니다.

+0

동의합니다, Eric. 그러나 하나의 값만 플롯에 반환하려고합니다. 의미, 말하자면 CPU 사용량을 파이 차트로 플로팅하고 특정 프로세스가 CPU의 25 %를 사용하고 있다고 가정하고 numberForPlot에서 25를 반환하면 파이의 25 %가 필요합니다. 음영 처리가되어 있는지 확인하십시오.이 25는 25 %를 의미하는 코어 플롯에 어떻게 표시합니까? – Jean

+0

startAngle, endAngle이 내 쿼리에 대답하는 것 같습니다. 시도해보고 돌아 오도록하겠습니다. 감사합니다, @Eric! – Jean

관련 문제