0

我在 Coreplot 中对数据进行排序时遇到问题。我有一个堆积条形图,即 A 和 B。这些值也是我图中的值。但是,coreplot 以某种方式对数据进行排序。

for (int i=0; i<[privDataArray count];i++) {
    NSMutableDictionary *dict = [NSMutableDictionary dictionary];
    NSNumber *a = [NSNumber numberWithFloat:[[[privDataArray objectAtIndex:i] objectForKey:@"rente"] floatValue]];
    NSNumber *b = [NSNumber numberWithFloat:[[[privDataArray objectAtIndex:i] objectForKey:@"aflossing"] floatValue]];
    [dict setObject:a forKey:@"a"];
    [dict setObject:b forKey:@"b"];
    [data setObject:dict forKey:[NSNumber numberWithInt:i]];
}

这是我的数据实例。所以我需要 B 位于堆叠条形图的底部。但是 Coreplot 将它放在堆栈的底部。

现在,我对此的解决方案是简单地更改 A 和 B 的名称,问题就解决了。

然而; 我需要创建一个自定义图例:

-(NSString *)legendTitleForBarPlot:(CPTBarPlot *)barPlot recordIndex:(NSUInteger)index {
    if (index==0) {
        return @"Rente";
    else if (index==1) {
        return @"Aflossing";
    } else {
        return nil;
    }
}

这产生了一个非常奇怪的传说。它显示了两种颜色的样本,旁边有随机字符串。

我的问题是:如何为索引返回 NSStrings,换句话说,如何创建自定义图例?

4

1 回答 1

0

-legendTitleForBarPlot:recordIndex:仅当您希望条形图中的每个条形都有单独的图例条目时,才需要该方法。例如,请参阅Plot Gallery示例应用程序中的“彩色条形图” 。设置绘图title为每个绘图创建一个图例条目。

于 2013-09-13T00:03:54.663 回答