2016-08-19 4 views
0

- LabelingPolicyDemo.m、それはなしのラベルのポリシーを使用し、軸のタイトルと同じスタイルを使用して、各ラベルを設定します:カスタムラベルの設定 - フォント、色、サイズが使用されていませんか?プロットギャラリーサンプルから

CPTMutableLineStyle *majorTickLineStyle = [axisLineStyle mutableCopy]; 
majorTickLineStyle.lineWidth = 3.0; 
majorTickLineStyle.lineCap = kCGLineCapRound; 

CPTMutableLineStyle *minorTickLineStyle = [axisLineStyle mutableCopy]; 
minorTickLineStyle.lineWidth = 2.0; 
minorTickLineStyle.lineCap = kCGLineCapRound; 

// Text styles 
CPTMutableTextStyle *axisTitleTextStyle = [CPTMutableTextStyle textStyle]; 
axisTitleTextStyle.fontName = @"Helvetica-Bold"; 
axisTitleTextStyle.color = [CPTColor redColor]; // differs from sample 

// Tick locations 
CPTNumberSet *majorTickLocations = [NSSet setWithObjects:@0, @30, @50, @85, @100, nil]; 

CPTMutableNumberSet *minorTickLocations = [NSMutableSet set]; 
for (NSUInteger loc = 0; loc <= 100; loc += 10) { 
    [minorTickLocations addObject:@(loc)]; 
} 

// Axes 
// CPTAxisLabelingPolicyNone 
CPTXYAxis *axisNone = [[CPTXYAxis alloc] init]; 
axisNone.plotSpace   = graph.defaultPlotSpace; 
axisNone.labelingPolicy  = CPTAxisLabelingPolicyNone; 
axisNone.orthogonalPosition = @1.0; 
axisNone.tickDirection  = CPTSignNone; 
axisNone.axisLineStyle  = axisLineStyle; 
axisNone.majorTickLength = majorTickLength; 
axisNone.majorTickLineStyle = majorTickLineStyle; 
axisNone.minorTickLength = minorTickLength; 
axisNone.minorTickLineStyle = minorTickLineStyle; 
axisNone.title    = @"CPTAxisLabelingPolicyNone"; 
axisNone.titleTextStyle  = axisTitleTextStyle; 
axisNone.titleOffset  = titleOffset; 
axisNone.majorTickLocations = majorTickLocations; 
axisNone.minorTickLocations = minorTickLocations; 

CPTMutableAxisLabelSet *newAxisLabels = [NSMutableSet set]; 
for (NSUInteger i = 0; i <= 5; i++) { 
    CPTAxisLabel *newLabel = [[CPTAxisLabel alloc] initWithText:[NSString stringWithFormat:@"Label %lu", (unsigned long)i] 
                 textStyle:axisNone.labelTextStyle]; 
    newLabel.tickLocation = @(i * 20); 
    newLabel.offset  = axisNone.labelOffset + axisNone.majorTickLength/CPTFloat(2.0); 

    [newAxisLabels addObject:newLabel]; 
} 
axisNone.axisLabels = newAxisLabels; 

が、結果として軸ラベルとタイトルが一致している必要があります彼らはサイズ、色、フォントのどちらでもないのですか?ラベルのテキストスタイルは一定に見えます。

Axis Labeling Policiesサンプルを参照してください。

答えて

0

質問のコードは、赤いテキストスタイルをtitleTextStyleに設定し、軸ラベルを作成するときにlabelTextStyleを使用します。これらのテキストスタイルは独立していますが、必要に応じて両方に同じスタイルを使用できます。

+0

ああ、各軸にはタイトル*と*ラベルのテキストスタイルがあります。ありがとう! – slashlos

関連する問題