【问题标题】:CorePlot: XAxis Text Labels with labelingPolicy conflictCorePlot:XAxis 文本标签与 labelingPolicy 冲突
【发布时间】:2012-05-25 11:22:52
【问题描述】:

为什么在字符串标签中找不到与 CPTAxisLabelingPolicyNone 不同的 labelingPolicy???

x.labelingPolicy = CPTAxisLabelingPolicyNone;

我想要这个 GRIDLineStyle,但带有我的文本标签:

x.labelingPolicy = CPTAxisLabelingPolicyFixedInterval

我使用以下代码完成 xAxisLabels:

NSMutableArray *labels = [[NSMutableArray alloc] initWithCapacity:[labelsAxisX count]];
    int idx = 0;
    for (NSString *product in labelsAxisX)
    {
        CPTAxisLabel *label = [[CPTAxisLabel alloc] initWithText:product textStyle:x.labelTextStyle];
        label.tickLocation = CPTDecimalFromInt(idx);
        label.offset = 5.0f;
        [labels addObject:label];
        [label release];
        idx++;
    }

    x.axisLabels = [NSSet setWithArray:labels];
    [labels release];

【问题讨论】:

    标签: ios5 text core-plot policy labeling


    【解决方案1】:

    使用CPTAxisLabelingPolicyNone 标签政策,除了制作标签外,您还需要提供刻度位置(主要和/或次要)。如果您更愿意使用固定间隔标签策略,您可以为返回文本标签而不是数字的轴制作自定义数字格式化程序。

    这是一个改编自 Plot Gallery 示例应用中的标签政策演示的示例:

    NSMutableSet *tickLocations = [NSMutableSet set];
    for ( NSUInteger loc = 0; loc < labelsAxisX.count; loc++ ) {
        [tickLocations addObject:[NSDecimalNumber numberWithUnsignedInteger:loc]];
    }
    axis.majorTickLocations = tickLocations;
    

    次要刻度位置的工作方式相同。

    【讨论】:

    • 怎么样??我已经用我用来完成一系列标签的代码修改了我的帖子......但我不知道如何解决我的问题......
    • 我希望做类似的事情:使用反映具有自定义标签的可变数据的固定宽度策略。在我的情况下,几个月。每个月可能有变量#数据;但我希望固定月份间隔(不像手动策略那样可变)。如何用 NSStrings(每个月)替换固定间隔的数字?
      参考:[链接]stackoverflow.com/posts/12631504/edit-submit/…
    • 你可以实现-axis:shouldUpdateAxisLabelsAtLocations:委托方法。使用提供的一组位置来制作您的自定义标签。
    猜你喜欢
    • 2014-11-13
    • 1970-01-01
    • 2020-04-02
    • 1970-01-01
    • 2012-01-08
    • 1970-01-01
    相关资源
    最近更新 更多