2013-06-18 2 views
0

안녕하세요, 코어 플롯을 사용하여 그래프를 작성 중입니다. 주요 및 부 라인의 라인 스타일을 변경하고 싶습니다. 라인 스타일이 변경되었지만 핵심 플롯에 두 개의 주요 라인 상단 및 하단 라인이 있습니다. 맨 위 주요 라인을 제거하는 방법코어 플롯에 하나의 주요 선만 설정하는 방법은 무엇입니까?

- (void) setupGraphAxis: (CPTXYGraph *) graph { 
CPTColor *axisColor = [CPTColor colorWithComponentRed:255.0/255.0 green:255.0/255.0 blue:255.0/255.0 alpha:0.75]; 
CPTMutableLineStyle *axisLineStyle = [CPTMutableLineStyle lineStyle]; 
axisLineStyle.lineWidth = 1.5f; 
axisLineStyle.lineColor = axisColor; 


CPTMutableLineStyle *dashLineStyle = [CPTMutableLineStyle lineStyle]; 
dashLineStyle.lineColor = axisColor; 
dashLineStyle.lineWidth = 1.5f; 
dashLineStyle.dashPattern = [NSArray arrayWithObjects:[NSDecimalNumber numberWithInt:1],[NSDecimalNumber numberWithInt:2],nil]; 
dashLineStyle.patternPhase = 0.0f; 

CPTMutableLineStyle *fullLineStyle = [CPTMutableLineStyle lineStyle]; 
fullLineStyle.lineColor = axisColor; 
fullLineStyle.lineWidth = 1.5f; 
//fullLineStyle.dashPattern = [NSArray arrayWithObjects:[NSDecimalNumber numberWithInt:1],nil]; 
fullLineStyle.lineCap = 0; 
fullLineStyle.patternPhase = 0.0f; 

//Configure x-axis 
CPTXYAxisSet *axisSet = (CPTXYAxisSet *) graph.axisSet; 

CPTXYAxis *x = axisSet.xAxis; 
x.axisLineStyle = nil; 
x.orthogonalCoordinateDecimal = CPTDecimalFromString(@"0"); 
x.minorTickLineStyle = nil; 
x.majorTickLineStyle = nil; 
CPTAxisLabelingPolicy policy = CPTAxisLabelingPolicyAutomatic; 
x.labelingPolicy = policy; 
x.labelTextStyle = nil; 
x.preferredNumberOfMajorTicks = 1; 


CPTXYAxis *y = axisSet.yAxis; 
y.axisLineStyle = nil; 
y.orthogonalCoordinateDecimal = CPTDecimalFromString(@"0"); 
y.minorTickLineStyle = nil; 
y.majorTickLineStyle = nil; 
y.majorGridLineStyle = fullLineStyle; 
y.minorGridLineStyle = dashLineStyle; 
y.labelingPolicy = policy; 
y.preferredNumberOfMajorTicks = 1; 
} 

답변

0

축의 labelExclusionRanges 속성을 사용하여 틱, 눈금 선 및 레이블을 만들 때 특정 값을 건너 뛰도록 지시 할 수 있습니다. 그 시점에서 틱 및/또는 레이블을 계속 사용하려는 경우 그리드 선만 그리는 원래 보이지 않는 y 축을 추가해야 할 수도 있습니다.

관련 문제